diff --git a/.gitignore b/.gitignore index 5513f5ca37e7..0f52bc60f7fb 100644 --- a/.gitignore +++ b/.gitignore @@ -26,14 +26,19 @@ _testmain.go *.test *.prof -/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/auto-pause +/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/usr/bin/auto-pause +/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/usr/bin/auto-pause +/deploy/iso/minikube-iso/Config.in /deploy/kicbase/auto-pause /deploy/addons/auto-pause/auto-pause-hook /out /_gopath #iso version file -deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/VERSION +deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/VERSION +deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/VERSION +deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/CHANGELOG +deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/CHANGELOG /minikube diff --git a/Makefile b/Makefile index 098a916bc0a9..ba42bd158dbe 100644 --- a/Makefile +++ b/Makefile @@ -23,7 +23,7 @@ KUBERNETES_VERSION ?= $(shell egrep "DefaultKubernetesVersion =" pkg/minikube/co KIC_VERSION ?= $(shell egrep "Version =" pkg/drivers/kic/types.go | cut -d \" -f2) # Default to .0 for higher cache hit rates, as build increments typically don't require new ISO versions -ISO_VERSION ?= v1.25.2-1650391217-13814 +ISO_VERSION ?= v1.25.2-1651892774-13762 # Dashes are valid in semver, but not Linux packaging. Use ~ to delimit alpha/beta DEB_VERSION ?= $(subst -,~,$(RAW_VERSION)) DEB_REVISION ?= 0 @@ -93,7 +93,7 @@ GOOS ?= $(shell go env GOOS) GOARCH ?= $(shell go env GOARCH) GOARM ?= 7 # the default is 5 GOPATH ?= $(shell go env GOPATH) -BUILD_DIR ?= ./out +BUILD_DIR ?= $(PWD)/out $(shell mkdir -p $(BUILD_DIR)) CURRENT_GIT_BRANCH ?= $(shell git branch | grep \* | cut -d ' ' -f2) @@ -282,17 +282,27 @@ out/e2e-%: out/minikube-% out/e2e-windows-amd64.exe: out/e2e-windows-amd64 cp $< $@ -minikube_iso: deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/auto-pause # build minikube iso - echo $(ISO_VERSION) > deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/VERSION +minikube-iso-amd64: minikube-iso-x86_64 +minikube-iso-arm64: minikube-iso-aarch64 + +minikube-iso-%: deploy/iso/minikube-iso/board/minikube/%/rootfs-overlay/usr/bin/auto-pause # build minikube iso + echo $(ISO_VERSION) > deploy/iso/minikube-iso/board/minikube/$*/rootfs-overlay/etc/VERSION + cp deploy/iso/minikube-iso/CHANGELOG deploy/iso/minikube-iso/board/minikube/$*/rootfs-overlay/etc/CHANGELOG + cp deploy/iso/minikube-iso/arch/$*/Config.in.tmpl deploy/iso/minikube-iso/Config.in if [ ! -d $(BUILD_DIR)/buildroot ]; then \ mkdir -p $(BUILD_DIR); \ git clone --depth=1 --branch=$(BUILDROOT_BRANCH) https://github.com/buildroot/buildroot $(BUILD_DIR)/buildroot; \ cp deploy/iso/minikube-iso/go.hash $(BUILD_DIR)/buildroot/package/go/go.hash; \ fi; - $(MAKE) BR2_EXTERNAL=../../deploy/iso/minikube-iso minikube_defconfig -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) - $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) host-python - $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) - mv $(BUILD_DIR)/buildroot/output/images/rootfs.iso9660 $(BUILD_DIR)/minikube.iso + $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* minikube_$*_defconfig + $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* host-python + $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) O=$(BUILD_DIR)/buildroot/output-$* + # x86_64 ISO is still BIOS rather than EFI because of AppArmor issues for KVM, and Gen 2 issues for Hyper-V + if [ "$*" = "aarch64" ]; then \ + mv $(BUILD_DIR)/buildroot/output-aarch64/images/boot.iso $(BUILD_DIR)/minikube-arm64.iso; \ + else \ + mv $(BUILD_DIR)/buildroot/output-x86_64/images/rootfs.iso9660 $(BUILD_DIR)/minikube-amd64.iso; \ + fi; # Change buildroot configuration for the minikube ISO .PHONY: iso-menuconfig @@ -301,15 +311,14 @@ iso-menuconfig: ## Configure buildroot configuration $(MAKE) -C $(BUILD_DIR)/buildroot $(BUILDROOT_OPTIONS) savedefconfig # Change the kernel configuration for the minikube ISO -.PHONY: linux-menuconfig -linux-menuconfig: ## Configure Linux kernel configuration +linux-menuconfig-%: ## Configure Linux kernel configuration $(MAKE) -C $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/ menuconfig $(MAKE) -C $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/ savedefconfig - cp $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/defconfig deploy/iso/minikube-iso/board/coreos/minikube/linux_defconfig + cp $(BUILD_DIR)/buildroot/output/build/linux-$(KERNEL_VERSION)/defconfig deploy/iso/minikube-iso/board/minikube/$*/linux_$*_defconfig -out/minikube.iso: $(shell find "deploy/iso/minikube-iso" -type f) +out/minikube-%.iso: $(shell find "deploy/iso/minikube-iso" -type f) ifeq ($(IN_DOCKER),1) - $(MAKE) minikube_iso + $(MAKE) minikube-iso-$* else docker run --rm --workdir /mnt --volume $(CURDIR):/mnt $(ISO_DOCKER_EXTRA_ARGS) \ --user $(shell id -u):$(shell id -g) --env HOME=/tmp --env IN_DOCKER=1 \ @@ -321,9 +330,6 @@ iso_in_docker: --user $(shell id -u):$(shell id -g) --env HOME=/tmp --env IN_DOCKER=1 \ $(ISO_BUILD_IMAGE) /bin/bash -test-iso: - go test -v $(INTEGRATION_TESTS_TO_RUN) --tags=iso --minikube-start-args="--iso-url=file://$(shell pwd)/out/buildroot/output/images/rootfs.iso9660" - .PHONY: test-pkg test-pkg/%: ## Trigger packaging test go test -v -test.timeout=60m ./$* --tags="$(MINIKUBE_BUILD_TAGS)" @@ -436,7 +442,7 @@ e2e-cross: e2e-linux-amd64 e2e-linux-arm64 e2e-darwin-amd64 e2e-windows-amd64.ex .PHONY: checksum checksum: ## Generate checksums - for f in out/minikube.iso out/minikube-linux-amd64 out/minikube-linux-arm \ + for f in out/minikube-amd64.iso out/minikube-arm64.iso out/minikube-linux-amd64 out/minikube-linux-arm \ out/minikube-linux-arm64 out/minikube-linux-ppc64le out/minikube-linux-s390x \ out/minikube-darwin-amd64 out/minikube-darwin-arm64 out/minikube-windows-amd64.exe \ out/docker-machine-driver-kvm2 out/docker-machine-driver-kvm2-amd64 out/docker-machine-driver-kvm2-arm64 \ @@ -776,9 +782,11 @@ push-gvisor-addon-image: gvisor-addon-image $(MAKE) push-docker IMAGE=$(REGISTRY)/gvisor-addon:$(GVISOR_TAG) .PHONY: release-iso -release-iso: minikube_iso checksum ## Build and release .iso file - gsutil cp out/minikube.iso gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION).iso - gsutil cp out/minikube.iso.sha256 gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION).iso.sha256 +release-iso: minikube-iso-aarch64 minikube-iso-x86_64 checksum ## Build and release .iso files + gsutil cp out/minikube-amd64.iso gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-amd64.iso + gsutil cp out/minikube-amd64.iso.sha256 gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-amd64.iso.sha256 + gsutil cp out/minikube-arm64.iso gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-arm64.iso + gsutil cp out/minikube-arm64.iso.sha256 gs://$(ISO_BUCKET)/minikube-$(ISO_VERSION)-arm64.iso.sha256 .PHONY: release-minikube release-minikube: out/minikube checksum ## Minikube release @@ -918,8 +926,9 @@ out/mkcmp: # auto pause binary to be used for ISO -deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/auto-pause: $(SOURCE_FILES) $(ASSET_FILES) - GOOS=linux GOARCH=$(GOARCH) go build -o $@ cmd/auto-pause/auto-pause.go +deploy/iso/minikube-iso/board/minikube/%/rootfs-overlay/usr/bin/auto-pause: $(SOURCE_FILES) $(ASSET_FILES) + @if [ "$*" != "x86_64" ] && [ "$*" != "aarch64" ]; then echo "Please enter a valid architecture. Choices are x86_64 and aarch64."; exit 1; fi + GOOS=linux GOARCH=$(subst x86_64,amd64,$(subst aarch64,arm64,$*)) go build -o $@ cmd/auto-pause/auto-pause.go .PHONY: deploy/addons/auto-pause/auto-pause-hook diff --git a/deploy/iso/minikube-iso/Config.in b/deploy/iso/minikube-iso/Config.in deleted file mode 100644 index 0f5c2d952e76..000000000000 --- a/deploy/iso/minikube-iso/Config.in +++ /dev/null @@ -1 +0,0 @@ -source "$BR2_EXTERNAL_MINIKUBE_PATH/package/Config.in" diff --git a/deploy/iso/minikube-iso/arch/aarch64/Config.in.tmpl b/deploy/iso/minikube-iso/arch/aarch64/Config.in.tmpl new file mode 100644 index 000000000000..628de1654d2f --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/Config.in.tmpl @@ -0,0 +1,2 @@ +source "$BR2_EXTERNAL_MINIKUBE_PATH/package/Config.in" +source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/Config.in" diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/Config.in new file mode 100644 index 000000000000..784bb1155c20 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/Config.in @@ -0,0 +1,12 @@ +menu "System tools aarch64" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/buildkit-bin-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/runc-master-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/crio-bin-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/crictl-bin-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/docker-bin-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/cri-dockerd-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/cni-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/cni-plugins-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/containerd-bin-aarch64/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/aarch64/package/podman-aarch64/Config.in" +endmenu diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/51-buildkit.preset b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/51-buildkit.preset similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/51-buildkit.preset rename to deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/51-buildkit.preset diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/Config.in new file mode 100644 index 000000000000..eabff319b0bf --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_BUILDKIT_BIN_AARCH64 + bool "buildkit-bin" + default y + depends on BR2_aarch64 diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit-bin.hash b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit-bin.hash new file mode 100644 index 000000000000..8b646aaedb80 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit-bin.hash @@ -0,0 +1 @@ +sha256 0a834a749e86525e0eb16e7e80ce726e7c6a8e8d26fc5cc36c712305024da4e7 buildkit-v0.9.0.linux-arm64.tar.gz diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit-bin.mk b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit-bin.mk new file mode 100644 index 000000000000..ae4efcd038ab --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit-bin.mk @@ -0,0 +1,52 @@ +################################################################################ +# +# buildkit-bin +# +################################################################################ + +BUILDKIT_BIN_AARCH64_VERSION = v0.9.0 +BUILDKIT_BIN_AARCH64_COMMIT = c8bb937807d405d92be91f06ce2629e6202ac7a9 +BUILDKIT_BIN_AARCH64_SITE = https://github.com/moby/buildkit/releases/download/$(BUILDKIT_BIN_AARCH64_VERSION) +BUILDKIT_BIN_AARCH64_SOURCE = buildkit-$(BUILDKIT_BIN_AARCH64_VERSION).linux-arm64.tar.gz + +# https://github.com/opencontainers/runc.git +BUILDKIT_RUNC_VERSION = 12644e614e25b05da6fd08a38ffa0cfe1903fdec + +define BUILDKIT_BIN_AARCH64_USERS + - -1 buildkit -1 - - - - - +endef + +define BUILDKIT_BIN_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 \ + $(@D)/buildctl \ + $(TARGET_DIR)/usr/bin + $(INSTALL) -D -m 0755 \ + $(@D)/buildkit-runc \ + $(TARGET_DIR)/usr/sbin + $(INSTALL) -D -m 0755 \ + $(@D)/buildkit-qemu-* \ + $(TARGET_DIR)/usr/sbin + $(INSTALL) -D -m 0755 \ + $(@D)/buildkitd \ + $(TARGET_DIR)/usr/sbin + $(INSTALL) -D -m 644 \ + $(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkit.conf \ + $(TARGET_DIR)/usr/lib/tmpfiles.d/buildkit.conf + $(INSTALL) -D -m 644 \ + $(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkitd.toml \ + $(TARGET_DIR)/etc/buildkit/buildkitd.toml +endef + +define BUILDKIT_BIN_AARCH64_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 \ + $(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkit.service \ + $(TARGET_DIR)/usr/lib/systemd/system/buildkit.service + $(INSTALL) -D -m 644 \ + $(BUILDKIT_BIN_AARCH64_PKGDIR)/buildkit.socket \ + $(TARGET_DIR)/usr/lib/systemd/system/buildkit.socket + $(INSTALL) -D -m 644 \ + $(BUILDKIT_BIN_AARCH64_PKGDIR)/51-buildkit.preset \ + $(TARGET_DIR)/usr/lib/systemd/system-preset/51-buildkit.preset +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/buildkit.conf b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit.conf similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/buildkit.conf rename to deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit.conf diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/buildkit.service b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit.service similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/buildkit.service rename to deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit.service diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/buildkit.socket b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit.socket similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/buildkit.socket rename to deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkit.socket diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/buildkitd.toml b/deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkitd.toml similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/buildkitd.toml rename to deploy/iso/minikube-iso/arch/aarch64/package/buildkit-bin-aarch64/buildkitd.toml diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/Config.in new file mode 100644 index 000000000000..17fdabc16b21 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_CNI_AARCH64 + bool "cni" + default y + depends on BR2_aarch64 + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS diff --git a/deploy/iso/minikube-iso/package/cni/cni.hash b/deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/cni.hash similarity index 100% rename from deploy/iso/minikube-iso/package/cni/cni.hash rename to deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/cni.hash diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/cni.mk b/deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/cni.mk new file mode 100644 index 000000000000..5842a2f84934 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cni-aarch64/cni.mk @@ -0,0 +1,45 @@ +################################################################################ +# +# cni +# +################################################################################ + +CNI_AARCH64_VERSION = v0.7.1 +CNI_AARCH64_SITE = https://github.com/containernetworking/cni/archive +CNI_AARCH64_SOURCE = $(CNI_AARCH64_VERSION).tar.gz +CNI_AARCH64_LICENSE = Apache-2.0 +CNI_AARCH64_LICENSE_FILES = LICENSE + +CNI_AARCH64_DEPENDENCIES = host-go + +CNI_AARCH64_GOPATH = $(@D)/_output +CNI_AARCH64_MAKE_ENV = \ + $(GO_TARGET_ENV) \ + CGO_ENABLED=0 \ + GO111MODULE=off \ + GOPATH="$(CNI_AARCH64_GOPATH)" \ + PATH=$(CNI_AARCH64_GOPATH)/bin:$(BR_PATH) \ + GOARCH=arm64 + +CNI_AARCH64_BUILDFLAGS = -a --ldflags '-extldflags \"-static\"' + +define CNI_AARCH64_CONFIGURE_CMDS + mkdir -p $(CNI_AARCH64_GOPATH)/src/github.com/containernetworking + ln -sf $(@D) $(CNI_AARCH64_GOPATH)/src/github.com/containernetworking/cni +endef + +define CNI_AARCH64_BUILD_CMDS + (cd $(@D); $(CNI_AARCH64_MAKE_ENV) go build -o bin/cnitool $(CNI_AARCH64_BUILDFLAGS) ./cnitool) +endef + +define CNI_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 \ + $(@D)/bin/cnitool \ + $(TARGET_DIR)/opt/cni/bin/cnitool + + ln -sf \ + ../../opt/cni/bin/cnitool \ + $(TARGET_DIR)/usr/bin/cnitool +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/Config.in new file mode 100644 index 000000000000..ed5eb4ce59c9 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_CNI_PLUGINS_AARCH64 + bool "cni-plugins" + default y + depends on BR2_aarch64 + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/cni-plugins.hash b/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/cni-plugins.hash new file mode 100644 index 000000000000..100f2479bdad --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/cni-plugins.hash @@ -0,0 +1 @@ +sha256 a7881ec37e592c897bdfd2a225b4ed74caa981e3c4cdcf8f45574f8d2f111bce cni-plugins-linux-arm64-v0.8.5.tgz diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/cni-plugins.mk b/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/cni-plugins.mk new file mode 100644 index 000000000000..80cf9f02f037 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cni-plugins-aarch64/cni-plugins.mk @@ -0,0 +1,120 @@ +################################################################################ +# +# cni-plugins +# +################################################################################ + +CNI_PLUGINS_AARCH64_VERSION = v0.8.5 +CNI_PLUGINS_AARCH64_SITE = https://github.com/containernetworking/plugins/releases/download/$(CNI_PLUGINS_AARCH64_VERSION) +CNI_PLUGINS_AARCH64_SOURCE = cni-plugins-linux-arm64-$(CNI_PLUGINS_AARCH64_VERSION).tgz +CNI_PLUGINS_AARCH64_LICENSE = Apache-2.0 +CNI_PLUGINS_AARCH64_LICENSE_FILES = LICENSE + +define CNI_PLUGINS_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 \ + $(@D)/bandwidth \ + $(TARGET_DIR)/opt/cni/bin/bandwidth + + ln -sf \ + ../../opt/cni/bin/bandwidth \ + $(TARGET_DIR)/usr/bin/bandwidth + + $(INSTALL) -D -m 0755 \ + $(@D)/bridge \ + $(TARGET_DIR)/opt/cni/bin/bridge + + ln -sf \ + ../../opt/cni/bin/bridge \ + $(TARGET_DIR)/usr/bin/bridge + + $(INSTALL) -D -m 0755 \ + $(@D)/vlan \ + $(TARGET_DIR)/opt/cni/bin/vlan + + ln -sf \ + ../../opt/cni/bin/vlan \ + $(TARGET_DIR)/usr/bin/vlan + + $(INSTALL) -D -m 0755 \ + $(@D)/tuning \ + $(TARGET_DIR)/opt/cni/bin/tuning + + ln -sf \ + ../../opt/cni/bin/tuning \ + $(TARGET_DIR)/usr/bin/tuning + + $(INSTALL) -D -m 0755 \ + $(@D)/ptp \ + $(TARGET_DIR)/opt/cni/bin/ptp + + ln -sf \ + ../../opt/cni/bin/ptp \ + $(TARGET_DIR)/usr/bin/ptp + + $(INSTALL) -D -m 0755 \ + $(@D)/portmap \ + $(TARGET_DIR)/opt/cni/bin/portmap + + ln -sf \ + ../../opt/cni/bin/portmap \ + $(TARGET_DIR)/usr/bin/portmap + + $(INSTALL) -D -m 0755 \ + $(@D)/macvlan \ + $(TARGET_DIR)/opt/cni/bin/macvlan + + ln -sf \ + ../../opt/cni/bin/macvlan \ + $(TARGET_DIR)/usr/bin/macvlan + + $(INSTALL) -D -m 0755 \ + $(@D)/loopback \ + $(TARGET_DIR)/opt/cni/bin/loopback + + ln -sf \ + ../../opt/cni/bin/loopback \ + $(TARGET_DIR)/usr/bin/loopback + + $(INSTALL) -D -m 0755 \ + $(@D)/ipvlan \ + $(TARGET_DIR)/opt/cni/bin/ipvlan + + ln -sf \ + ../../opt/cni/bin/ipvlan \ + $(TARGET_DIR)/usr/bin/ipvlan + + $(INSTALL) -D -m 0755 \ + $(@D)/host-local \ + $(TARGET_DIR)/opt/cni/bin/host-local + + ln -sf \ + ../../opt/cni/bin/host-local \ + $(TARGET_DIR)/usr/bin/host-local + + $(INSTALL) -D -m 0755 \ + $(@D)/flannel \ + $(TARGET_DIR)/opt/cni/bin/flannel + + ln -sf \ + ../../opt/cni/bin/flannel \ + $(TARGET_DIR)/usr/bin/flannel + + + $(INSTALL) -D -m 0755 \ + $(@D)/dhcp \ + $(TARGET_DIR)/opt/cni/bin/dhcp + + ln -sf \ + ../../opt/cni/bin/dhcp \ + $(TARGET_DIR)/usr/bin/dhcp + + $(INSTALL) -D -m 0755 \ + $(@D)/firewall \ + $(TARGET_DIR)/opt/cni/bin/firewall + + ln -sf \ + ../../opt/cni/bin/firewall \ + $(TARGET_DIR)/usr/bin/firewall +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/containerd-bin/50-minikube.preset b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/50-minikube.preset similarity index 100% rename from deploy/iso/minikube-iso/package/containerd-bin/50-minikube.preset rename to deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/50-minikube.preset diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/Config.in new file mode 100644 index 000000000000..4b6bff5075f0 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_CONTAINERD_BIN_AARCH64 + bool "containerd-bin" + default y + depends on BR2_aarch64 + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # lvm2 + depends on !BR2_STATIC_LIBS # lvm2 + depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2 + select BR2_PACKAGE_RUNC_MASTER + select BR2_PACKAGE_BTRFS_PROGS + select BR2_PACKAGE_LIBSECCOMP + select BR2_PACKAGE_LIBGPGME + select BR2_PACKAGE_LVM2 + select BR2_PACKAGE_LVM2_APP_LIBRARY + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_LIBGLIB2 diff --git a/deploy/iso/minikube-iso/package/containerd-bin/config.toml b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/config.toml similarity index 100% rename from deploy/iso/minikube-iso/package/containerd-bin/config.toml rename to deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/config.toml diff --git a/deploy/iso/minikube-iso/package/containerd-bin/config.toml.default b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/config.toml.default similarity index 100% rename from deploy/iso/minikube-iso/package/containerd-bin/config.toml.default rename to deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/config.toml.default diff --git a/deploy/iso/minikube-iso/package/containerd-bin/containerd-bin.hash b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/containerd-bin.hash similarity index 100% rename from deploy/iso/minikube-iso/package/containerd-bin/containerd-bin.hash rename to deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/containerd-bin.hash diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/containerd-bin.mk b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/containerd-bin.mk new file mode 100644 index 000000000000..d019e82c6670 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/containerd-bin.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# containerd +# +################################################################################ +CONTAINERD_BIN_AARCH64_VERSION = v1.5.11 +CONTAINERD_BIN_AARCH64_COMMIT = 3df54a852345ae127d1fa3092b95168e4a88e2f8 +CONTAINERD_BIN_AARCH64_SITE = https://github.com/containerd/containerd/archive +CONTAINERD_BIN_AARCH64_SOURCE = $(CONTAINERD_BIN_AARCH64_VERSION).tar.gz +CONTAINERD_BIN_AARCH64_DEPENDENCIES = host-go libgpgme +CONTAINERD_BIN_AARCH64_GOPATH = $(@D)/_output +CONTAINERD_BIN_AARCH64_ENV = \ + $(GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + GO111MODULE=off \ + GOPATH="$(CONTAINERD_BIN_AARCH64_GOPATH)" \ + PATH=$(CONTAINERD_BIN_AARCH64_GOPATH)/bin:$(BR_PATH) \ + GOARCH=arm64 + +CONTAINERD_BIN_AARCH64_COMPILE_SRC = $(CONTAINERD_BIN_AARCH64_GOPATH)/src/github.com/containerd/containerd + +define CONTAINERD_BIN_AARCH64_USERS + - -1 containerd-admin -1 - - - - - + - -1 containerd -1 - - - - - +endef + +define CONTAINERD_BIN_AARCH64_CONFIGURE_CMDS + mkdir -p $(CONTAINERD_BIN_AARCH64_GOPATH)/src/github.com/containerd + ln -sf $(@D) $(CONTAINERD_BIN_AARCH64_COMPILE_SRC) +endef + +define CONTAINERD_BIN_AARCH64_BUILD_CMDS + PWD=$(CONTAINERD_BIN_AARCH64_COMPILE_SRC) $(CONTAINERD_BIN_AARCH64_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) VERSION=$(CONTAINERD_BIN_AARCH64_VERSION) REVISION=$(CONTAINERD_BIN_AARCH64_COMMIT) -C $(@D) binaries +endef + +define CONTAINERD_BIN_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -Dm755 \ + $(@D)/bin/containerd \ + $(TARGET_DIR)/usr/bin + $(INSTALL) -Dm755 \ + $(@D)/bin/containerd-shim \ + $(TARGET_DIR)/usr/bin + $(INSTALL) -Dm755 \ + $(@D)/bin/containerd-shim-runc-v1 \ + $(TARGET_DIR)/usr/bin + $(INSTALL) -Dm755 \ + $(@D)/bin/containerd-shim-runc-v2 \ + $(TARGET_DIR)/usr/bin + $(INSTALL) -Dm755 \ + $(@D)/bin/ctr \ + $(TARGET_DIR)/usr/bin + $(INSTALL) -Dm644 \ + $(CONTAINERD_BIN_AARCH64_PKGDIR)/config.toml \ + $(TARGET_DIR)/etc/containerd/config.toml +endef + +define CONTAINERD_BIN_AARCH64_INSTALL_INIT_SYSTEMD + $(INSTALL) -Dm644 \ + $(CONTAINERD_BIN_AARCH64_PKGDIR)/containerd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/containerd.service + $(INSTALL) -Dm644 \ + $(CONTAINERD_BIN_AARCH64_PKGDIR)/50-minikube.preset \ + $(TARGET_DIR)/usr/lib/systemd/system-preset/50-minikube.preset +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/containerd-bin/containerd.service b/deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/containerd.service similarity index 100% rename from deploy/iso/minikube-iso/package/containerd-bin/containerd.service rename to deploy/iso/minikube-iso/arch/aarch64/package/containerd-bin-aarch64/containerd.service diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/Config.in new file mode 100644 index 000000000000..ee257ae4f76a --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_CRI_DOCKERD_AARCH64 + bool "cri-dockerd" + default y + depends on BR2_aarch64 + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_DOCKER_BIN diff --git a/deploy/iso/minikube-iso/package/cri-dockerd/cri-dockerd.hash b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.hash similarity index 100% rename from deploy/iso/minikube-iso/package/cri-dockerd/cri-dockerd.hash rename to deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.hash diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk new file mode 100644 index 000000000000..0ab94ba0e879 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/cri-dockerd-aarch64/cri-dockerd.mk @@ -0,0 +1,49 @@ +################################################################################ +# +# cri-dockerd +# +################################################################################ + +# As of 2022-02-03 +CRI_DOCKERD_AARCH64_VER = 0.2.0 +CRI_DOCKERD_AARCH64_REV = a4d1895 +CRI_DOCKERD_AARCH64_VERSION = a4d1895a2659ea9974bd7528a706592ab8b74181 +CRI_DOCKERD_AARCH64_SITE = https://github.com/Mirantis/cri-dockerd/archive +CRI_DOCKERD_AARCH64_SOURCE = $(CRI_DOCKERD_AARCH64_VERSION).tar.gz + +CRI_DOCKERD_AARCH64_DEPENDENCIES = host-go + +CRI_DOCKERD_AARCH64_GOPATH = $(@D)/_output +CRI_DOCKERD_AARCH64_ENV = \ + $(GO_TARGET_ENV) \ + CGO_ENABLED=0 \ + GO111MODULE=on \ + GOPATH="$(CRI_DOCKERD_AARCH64_GOPATH)" \ + PATH=$(CRI_DOCKERD_AARCH64_GOPATH)/bin:$(BR_PATH) \ + GOARCH=arm64 + +CRI_DOCKERD_AARCH64_COMPILE_SRC = $(CRI_DOCKERD_AARCH64_GOPATH)/src/github.com/Mirantis/cri-dockerd +CRI_DOCKERD_AARCH64_BUILDFLAGS = "-ldflags '-X github.com/Mirantis/cri-dockerd/version.Version=$(CRI_DOCKERD_AARCH64_VER) -X github.com/Mirantis/cri-dockerd/version.GitCommit=$(CRI_DOCKERD_AARCH64_REV)'" + +# If https://github.com/Mirantis/cri-dockerd/blob/master/packaging/Makefile changes, then this will almost certainly need to change +# This uses the static make target at the top level Makefile, since that builds everything, then picks out the arm64 binary +define CRI_DOCKERD_AARCH64_BUILD_CMDS + $(CRI_DOCKERD_AARCH64_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) LDFLAGS=$(CRI_DOCKERD_AARCH64_BUILDFLAGS) GO_VERSION=$(GO_VERSION) -C $(@D) VERSION=$(CRI_DOCKERD_AARCH64_VER) REVISION=$(CRI_DOCKERD_AARCH64_REV) static +endef + +define CRI_DOCKERD_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -Dm755 \ + $(@D)/packaging/static/build/arm/cri-dockerd/cri-dockerd \ + $(TARGET_DIR)/usr/bin/cri-dockerd +endef + +define CRI_DOCKERD_AARCH64_INSTALL_INIT_SYSTEMD + $(INSTALL) -Dm644 \ + $(@D)/packaging/systemd/cri-docker.service \ + $(TARGET_DIR)/usr/lib/systemd/system/cri-docker.service + $(INSTALL) -Dm644 \ + $(@D)/packaging/systemd/cri-docker.socket \ + $(TARGET_DIR)/usr/lib/systemd/system/cri-docker.socket +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/Config.in new file mode 100644 index 000000000000..26baaf3d93a5 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_CRICTL_BIN_AARCH64 + bool "crictl-bin" + default y + depends on BR2_aarch64 diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/crictl-bin.hash b/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/crictl-bin.hash new file mode 100644 index 000000000000..e66af8bf7aa7 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/crictl-bin.hash @@ -0,0 +1 @@ +sha256 454eecd29fe636282339af5b73c60234a7d10e4b11b9e18937e33056763d72cf crictl-v1.21.0-linux-arm64.tar.gz diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/crictl-bin.mk b/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/crictl-bin.mk new file mode 100644 index 000000000000..1f190f6246aa --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/crictl-bin-aarch64/crictl-bin.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# crictl-bin +# +################################################################################ + +CRICTL_BIN_AARCH64_VERSION = v1.21.0 +CRICTL_BIN_AARCH64_SITE = https://github.com/kubernetes-sigs/cri-tools/releases/download/$(CRICTL_BIN_AARCH64_VERSION) +CRICTL_BIN_AARCH64_SOURCE = crictl-$(CRICTL_BIN_AARCH64_VERSION)-linux-arm64.tar.gz +CRICTL_BIN_AARCH64_STRIP_COMPONENTS = 0 + +define CRICTL_BIN_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 \ + $(@D)/crictl \ + $(TARGET_DIR)/usr/bin/crictl +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/crio-bin/02-crio.conf b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/02-crio.conf similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/02-crio.conf rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/02-crio.conf diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/Config.in new file mode 100644 index 000000000000..604df2cb4077 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_CRIO_BIN_AARCH64 + bool "crio-bin" + default y + depends on BR2_aarch64 + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # lvm2 + depends on !BR2_STATIC_LIBS # lvm2 + depends on !BR2_TOOLCHAIN_USES_MUSL # lvm2 + select BR2_PACKAGE_RUNC_MASTER + select BR2_PACKAGE_CRUN + select BR2_PACKAGE_CONMON + select BR2_PACKAGE_BTRFS_PROGS + select BR2_PACKAGE_LIBSECCOMP + select BR2_PACKAGE_LIBGPGME + select BR2_PACKAGE_LVM2 + select BR2_PACKAGE_LVM2_APP_LIBRARY + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + select BR2_PACKAGE_LIBGLIB2 diff --git a/deploy/iso/minikube-iso/package/crio-bin/conmon-config.h b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/conmon-config.h similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/conmon-config.h rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/conmon-config.h diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio-bin.hash b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio-bin.hash similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/crio-bin.hash rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio-bin.hash diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio-bin.mk b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio-bin.mk new file mode 100644 index 000000000000..7348fbab4aa0 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio-bin.mk @@ -0,0 +1,79 @@ +################################################################################ +# +# cri-o +# +################################################################################ + +CRIO_BIN_AARCH64_VERSION = v1.22.3 +CRIO_BIN_AARCH64_COMMIT = d93b2dfb8d0f2ad0f8b9061d941e3b216baa5814 +CRIO_BIN_AARCH64_SITE = https://github.com/cri-o/cri-o/archive +CRIO_BIN_AARCH64_SOURCE = $(CRIO_BIN_AARCH64_VERSION).tar.gz +CRIO_BIN_AARCH64_DEPENDENCIES = host-go libgpgme +CRIO_BIN_AARCH64_GOPATH = $(@D)/_output +CRIO_BIN_AARCH64_ENV = \ + $(GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + GO111MODULE=off \ + GOPATH="$(CRIO_BIN_AARCH64_GOPATH)" \ + PATH=$(CRIO_BIN_AARCH64_GOPATH)/bin:$(BR_PATH) \ + GOARCH=arm64 + + +define CRIO_BIN_AARCH64_USERS + - -1 crio-admin -1 - - - - - + - -1 crio -1 - - - - - +endef + +define CRIO_BIN_AARCH64_CONFIGURE_CMDS + mkdir -p $(CRIO_BIN_AARCH64_GOPATH)/src/github.com/cri-o + ln -sf $(@D) $(CRIO_BIN_AARCH64_GOPATH)/src/github.com/cri-o/cri-o + # disable the "automatic" go module detection + sed -e 's/go help mod/false/' -i $(@D)/Makefile +endef + +define CRIO_BIN_AARCH64_BUILD_CMDS + mkdir -p $(@D)/bin + $(CRIO_BIN_AARCH64_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) COMMIT_NO=$(CRIO_BIN_AARCH64_COMMIT) PREFIX=/usr binaries +endef + +define CRIO_BIN_AARCH64_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/usr/share/containers/oci/hooks.d + mkdir -p $(TARGET_DIR)/etc/containers/oci/hooks.d + mkdir -p $(TARGET_DIR)/etc/crio/crio.conf.d + + $(INSTALL) -Dm755 \ + $(@D)/bin/crio \ + $(TARGET_DIR)/usr/bin/crio + $(INSTALL) -Dm755 \ + $(@D)/bin/pinns \ + $(TARGET_DIR)/usr/bin/pinns + $(INSTALL) -Dm644 \ + $(CRIO_BIN_AARCH64_PKGDIR)/crio.conf \ + $(TARGET_DIR)/etc/crio/crio.conf + $(INSTALL) -Dm644 \ + $(CRIO_BIN_AARCH64_PKGDIR)/policy.json \ + $(TARGET_DIR)/etc/containers/policy.json + $(INSTALL) -Dm644 \ + $(CRIO_BIN_AARCH64_PKGDIR)/registries.conf \ + $(TARGET_DIR)/etc/containers/registries.conf + $(INSTALL) -Dm644 \ + $(CRIO_BIN_AARCH64_PKGDIR)/02-crio.conf \ + $(TARGET_DIR)/etc/crio/crio.conf.d/02-crio.conf + + mkdir -p $(TARGET_DIR)/etc/sysconfig + echo 'CRIO_OPTIONS="--log-level=debug"' > $(TARGET_DIR)/etc/sysconfig/crio +endef + +define CRIO_BIN_AARCH64_INSTALL_INIT_SYSTEMD + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) install.systemd DESTDIR=$(TARGET_DIR) PREFIX=$(TARGET_DIR)/usr + $(INSTALL) -Dm644 \ + $(CRIO_BIN_AARCH64_PKGDIR)/crio.service \ + $(TARGET_DIR)/usr/lib/systemd/system/crio.service + $(INSTALL) -Dm644 \ + $(CRIO_BIN_AARCH64_PKGDIR)/crio-wipe.service \ + $(TARGET_DIR)/usr/lib/systemd/system/crio-wipe.service + $(call link-service,crio.service) + $(call link-service,crio-shutdown.service) +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio-wipe.service b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio-wipe.service similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/crio-wipe.service rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio-wipe.service diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio.conf b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio.conf similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/crio.conf rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio.conf diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio.conf.default b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio.conf.default similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/crio.conf.default rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio.conf.default diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio.service b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio.service similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/crio.service rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/crio.service diff --git a/deploy/iso/minikube-iso/package/crio-bin/policy.json b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/policy.json similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/policy.json rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/policy.json diff --git a/deploy/iso/minikube-iso/package/crio-bin/registries.conf b/deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/registries.conf similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/registries.conf rename to deploy/iso/minikube-iso/arch/aarch64/package/crio-bin-aarch64/registries.conf diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/Config.in new file mode 100644 index 000000000000..312c5f148ae9 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_DOCKER_BIN_AARCH64 + bool "docker-bin" + default y + depends on BR2_aarch64 diff --git a/deploy/iso/minikube-iso/package/docker-bin/daemon.json b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/daemon.json similarity index 100% rename from deploy/iso/minikube-iso/package/docker-bin/daemon.json rename to deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/daemon.json diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker-bin.hash b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker-bin.hash new file mode 100644 index 000000000000..84b606093076 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker-bin.hash @@ -0,0 +1 @@ +sha256 ea971edc1179088bfd25edd04a0c12848143d15cb8202ebb93a6a08973464fd0 docker-20.10.14.tgz diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker-bin.mk b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker-bin.mk new file mode 100644 index 000000000000..ab53ee505522 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker-bin.mk @@ -0,0 +1,55 @@ +################################################################################ +# +# docker-bin +# +################################################################################ + +DOCKER_BIN_AARCH64_VERSION = 20.10.14 +DOCKER_BIN_AARCH64_SITE = https://download.docker.com/linux/static/stable/aarch64 +DOCKER_BIN_AARCH64_SOURCE = docker-$(DOCKER_BIN_AARCH64_VERSION).tgz + +define DOCKER_BIN_AARCH64_USERS + - -1 docker -1 - - - - - +endef + +define DOCKER_BIN_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 \ + $(@D)/docker \ + $(TARGET_DIR)/bin/docker + + # As of 2019-05, we use upstream containerd so that we may update it independently of docker. + + # As of 2019-01, we use upstream runc so that we may update it independently of docker. + + # As of 2019-05, we use upstream ctr so that we may update it independently of docker. + + $(INSTALL) -D -m 0755 \ + $(@D)/dockerd \ + $(TARGET_DIR)/bin/dockerd + + $(INSTALL) -D -m 0755 \ + $(@D)/docker-init \ + $(TARGET_DIR)/bin/docker-init + + $(INSTALL) -D -m 0755 \ + $(@D)/docker-proxy \ + $(TARGET_DIR)/bin/docker-proxy + + # https://kubernetes.io/docs/setup/production-environment/container-runtimes/#docker + + $(INSTALL) -Dm644 \ + $(DOCKER_BIN_AARCH64_PKGDIR)/daemon.json \ + $(TARGET_DIR)/etc/docker/daemon.json +endef + +define DOCKER_BIN_AARCH64_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 \ + $(DOCKER_BIN_AARCH64_PKGDIR)/docker.socket \ + $(TARGET_DIR)/usr/lib/systemd/system/docker.socket + + $(INSTALL) -D -m 644 \ + $(DOCKER_BIN_AARCH64_PKGDIR)/forward.conf \ + $(TARGET_DIR)/etc/sysctl.d/forward.conf +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/docker-bin/docker.socket b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker.socket similarity index 100% rename from deploy/iso/minikube-iso/package/docker-bin/docker.socket rename to deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/docker.socket diff --git a/deploy/iso/minikube-iso/package/docker-bin/forward.conf b/deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/forward.conf similarity index 100% rename from deploy/iso/minikube-iso/package/docker-bin/forward.conf rename to deploy/iso/minikube-iso/arch/aarch64/package/docker-bin-aarch64/forward.conf diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/Config.in new file mode 100644 index 000000000000..83587424712f --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_PODMAN_AARCH64 + bool "podman" + default y + depends on BR2_aarch64 + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_RUNC_MASTER + select BR2_PACKAGE_CRUN + select BR2_PACKAGE_CONMON + select BR2_PACKAGE_LIBSECCOMP + select BR2_PACKAGE_LIBGPGME diff --git a/deploy/iso/minikube-iso/package/podman/override.conf b/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/override.conf similarity index 100% rename from deploy/iso/minikube-iso/package/podman/override.conf rename to deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/override.conf diff --git a/deploy/iso/minikube-iso/package/podman/podman.conf b/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/podman.conf similarity index 100% rename from deploy/iso/minikube-iso/package/podman/podman.conf rename to deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/podman.conf diff --git a/deploy/iso/minikube-iso/package/podman/podman.hash b/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/podman.hash similarity index 100% rename from deploy/iso/minikube-iso/package/podman/podman.hash rename to deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/podman.hash diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/podman.mk b/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/podman.mk new file mode 100644 index 000000000000..e708873daca7 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/podman-aarch64/podman.mk @@ -0,0 +1,71 @@ +PODMAN_AARCH64_VERSION = v3.4.2 +PODMAN_AARCH64_COMMIT = 2ad1fd3555de12de34e20898cc2ef901f08fe5ed +PODMAN_AARCH64_SITE = https://github.com/containers/podman/archive +PODMAN_AARCH64_SOURCE = $(PODMAN_AARCH64_VERSION).tar.gz +PODMAN_AARCH64_LICENSE = Apache-2.0 +PODMAN_AARCH64_LICENSE_FILES = LICENSE + +PODMAN_AARCH64_DEPENDENCIES = host-go +ifeq ($(BR2_INIT_SYSTEMD),y) +# need libsystemd for journal +PODMAN_AARCH64_DEPENDENCIES += systemd +endif + +PODMAN_AARCH64_GOPATH = $(@D)/_output +PODMAN_AARCH64_BIN_ENV = \ + $(GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + GOPATH="$(PODMAN_AARCH64_GOPATH)" \ + PATH=$(PODMAN_AARCH64_GOPATH)/bin:$(BR_PATH) \ + GOARCH=arm64 + + +define PODMAN_AARCH64_USERS + - -1 podman -1 - - - - - +endef + +define PODMAN_AARCH64_MOD_VENDOR_MAKEFILE + # "build flag -mod=vendor only valid when using modules" + sed -e 's|-mod=vendor ||' -i $(@D)/Makefile +endef + +PODMAN_AARCH64_POST_EXTRACT_HOOKS += PODMAN_AARCH64_MOD_VENDOR_MAKEFILE + +define PODMAN_AARCH64_CONFIGURE_CMDS + mkdir -p $(PODMAN_AARCH64_GOPATH) && mv $(@D)/vendor $(PODMAN_AARCH64_GOPATH)/src + + mkdir -p $(PODMAN_AARCH64_GOPATH)/src/github.com/containers + ln -sf $(@D) $(PODMAN_AARCH64_GOPATH)/src/github.com/containers/podman + + ln -sf $(@D) $(PODMAN_AARCH64_GOPATH)/src/github.com/containers/podman/v2 +endef + +define PODMAN_AARCH64_BUILD_CMDS + mkdir -p $(@D)/bin + $(PODMAN_AARCH64_BIN_ENV) CIRRUS_TAG=$(PODMAN_AARCH64_VERSION) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) GIT_COMMIT=$(PODMAN_AARCH64_COMMIT) PREFIX=/usr podman +endef + +define PODMAN_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -Dm755 $(@D)/bin/podman $(TARGET_DIR)/usr/bin/podman + $(INSTALL) -d -m 755 $(TARGET_DIR)/etc/cni/net.d/ + $(INSTALL) -m 644 $(@D)/cni/87-podman-bridge.conflist $(TARGET_DIR)/etc/cni/net.d/87-podman-bridge.conflist +endef + +define PODMAN_AARCH64_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 \ + $(@D)/contrib/systemd/system/podman.service \ + $(TARGET_DIR)/usr/lib/systemd/system/podman.service + $(INSTALL) -D -m 644 \ + $(@D)/contrib/systemd/system/podman.socket \ + $(TARGET_DIR)/usr/lib/systemd/system/podman.socket + + # Allow running podman-remote as a user in the group "podman" + $(INSTALL) -D -m 644 \ + $(PODMAN_AARCH64_PKGDIR)/override.conf \ + $(TARGET_DIR)/usr/lib/systemd/system/podman.socket.d/override.conf + $(INSTALL) -D -m 644 \ + $(PODMAN_AARCH64_PKGDIR)/podman.conf \ + $(TARGET_DIR)/usr/lib/tmpfiles.d/podman.conf +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/runc-master/Config.in b/deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/Config.in similarity index 92% rename from deploy/iso/minikube-iso/package/runc-master/Config.in rename to deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/Config.in index e3e4a5845418..8c1bf95cb015 100644 --- a/deploy/iso/minikube-iso/package/runc-master/Config.in +++ b/deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/Config.in @@ -1,5 +1,6 @@ -config BR2_PACKAGE_RUNC_MASTER +config BR2_PACKAGE_RUNC_MASTER_AARCH64 bool "runc-master" + default y depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS diff --git a/deploy/iso/minikube-iso/package/runc-master/runc-master.hash b/deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/runc-master.hash similarity index 100% rename from deploy/iso/minikube-iso/package/runc-master/runc-master.hash rename to deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/runc-master.hash diff --git a/deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/runc-master.mk b/deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/runc-master.mk new file mode 100644 index 000000000000..3d1f6edc4fd4 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/aarch64/package/runc-master-aarch64/runc-master.mk @@ -0,0 +1,45 @@ +################################################################################ +# +# runc +# +################################################################################ + +# As of 2021-12-03, v1.0.3 +RUNC_MASTER_AARCH64_VERSION = f46b6ba2c9314cfc8caae24a32ec5fe9ef1059fe +RUNC_MASTER_AARCH64_SITE = https://github.com/opencontainers/runc/archive +RUNC_MASTER_AARCH64_SOURCE = $(RUNC_MASTER_AARCH64_VERSION).tar.gz +RUNC_MASTER_AARCH64_LICENSE = Apache-2.0 +RUNC_MASTER_AARCH64_LICENSE_FILES = LICENSE + +RUNC_MASTER_AARCH64_DEPENDENCIES = host-go + +RUNC_MASTER_AARCH64_GOPATH = $(@D)/_output +RUNC_MASTER_AARCH64_MAKE_ENV = \ + $(GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + GO111MODULE=off \ + GOPATH="$(RUNC_MASTER_AARCH64_GOPATH)" \ + PATH=$(RUNC_MASTER_AARCH64_GOPATH)/bin:$(BR_PATH) \ + GOARCH=arm64 + +RUNC_MASTER_AARCH64_COMPILE_SRC = $(RUNC_MASTER_AARCH64_GOPATH)/src/github.com/opencontainers/runc + +ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) +RUNC_MASTER_AARCH64_GOTAGS += seccomp +RUNC_MASTER_AARCH64_DEPENDENCIES += libseccomp host-pkgconf +endif + +define RUNC_MASTER_AARCH64_CONFIGURE_CMDS + mkdir -p $(RUNC_MASTER_AARCH64_GOPATH)/src/github.com/opencontainers + ln -s $(@D) $(RUNC_MASTER_AARCH64_GOPATH)/src/github.com/opencontainers/runc +endef + +define RUNC_MASTER_AARCH64_BUILD_CMDS + PWD=$(RUNC_MASTER_AARCH64_COMPILE_SRC) $(RUNC_MASTER_AARCH64_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) BUILDTAGS="$(RUNC_MASTER_AARCH64_GOTAGS)" COMMIT_NO=$(RUNC_MASTER_AARCH64_VERSION) COMMIT=$(RUNC_MASTER_AARCH64_VERSION) PREFIX=/usr +endef + +define RUNC_MASTER_AARCH64_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/runc $(TARGET_DIR)/usr/bin/runc +endef + +$(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/arch/x86_64/Config.in.tmpl b/deploy/iso/minikube-iso/arch/x86_64/Config.in.tmpl new file mode 100644 index 000000000000..ff29c1b53e26 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/Config.in.tmpl @@ -0,0 +1,2 @@ +source "$BR2_EXTERNAL_MINIKUBE_PATH/package/Config.in" +source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/Config.in" diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/Config.in new file mode 100644 index 000000000000..1766727bf76c --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/Config.in @@ -0,0 +1,15 @@ +menu "System tools x86_64" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/conmon/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/buildkit-bin/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/runc-master/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/crio-bin/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/crictl-bin/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/docker-bin/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/cri-dockerd/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/cni/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/cni-plugins/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/containerd-bin/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/podman/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/vbox-guest/Config.in" + source "$BR2_EXTERNAL_MINIKUBE_PATH/arch/x86_64/package/hyperv-daemons/Config.in" +endmenu diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/51-buildkit.preset b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/51-buildkit.preset new file mode 100644 index 000000000000..37de892c7105 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/51-buildkit.preset @@ -0,0 +1 @@ +disable buildkit.service diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/Config.in diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/buildkit-bin.hash b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit-bin.hash similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/buildkit-bin.hash rename to deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit-bin.hash diff --git a/deploy/iso/minikube-iso/package/buildkit-bin/buildkit-bin.mk b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit-bin.mk similarity index 100% rename from deploy/iso/minikube-iso/package/buildkit-bin/buildkit-bin.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit-bin.mk diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.conf b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.conf new file mode 100644 index 000000000000..006273ce91b5 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.conf @@ -0,0 +1 @@ +d /run/buildkit 0770 root buildkit diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.service b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.service new file mode 100644 index 000000000000..c1dad527ec0c --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.service @@ -0,0 +1,11 @@ +[Unit] +Description=BuildKit +Requires=buildkit.socket +After=buildkit.socket +Documentation=https://github.com/moby/buildkit + +[Service] +ExecStart=/usr/sbin/buildkitd --addr fd:// + +[Install] +WantedBy=multi-user.target diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.socket b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.socket new file mode 100644 index 000000000000..776b23762718 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkit.socket @@ -0,0 +1,12 @@ +[Unit] +Description=BuildKit +Documentation=https://github.com/moby/buildkit + +[Socket] +ListenStream=%t/buildkit/buildkitd.sock +SocketMode=0660 +SocketUser=root +SocketGroup=buildkit + +[Install] +WantedBy=sockets.target diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkitd.toml b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkitd.toml new file mode 100644 index 000000000000..62158d44d72a --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/buildkit-bin/buildkitd.toml @@ -0,0 +1,5 @@ +[worker.oci] + enabled = false +[worker.containerd] + enabled = true + namespace = "k8s.io" diff --git a/deploy/iso/minikube-iso/package/cni-plugins/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/cni-plugins/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/Config.in diff --git a/deploy/iso/minikube-iso/package/cni-plugins/cni-plugins.hash b/deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/cni-plugins.hash similarity index 77% rename from deploy/iso/minikube-iso/package/cni-plugins/cni-plugins.hash rename to deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/cni-plugins.hash index 01819019cb8b..108864f539c6 100644 --- a/deploy/iso/minikube-iso/package/cni-plugins/cni-plugins.hash +++ b/deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/cni-plugins.hash @@ -2,3 +2,4 @@ sha256 f04339a21b8edf76d415e7f17b620e63b8f37a76b2f706671587ab6464411f2d cni-plu sha256 8589670f7f9b211a351dfcd211d4fe0b961d77283a7415443dc188f3dbf05668 v0.6.0.tar.gz sha256 92c7599918be0a720ac020f137cdeac746dfa03da6b26e08a37132c5728c091f v0.7.5.tar.gz sha256 9d1526ed965ac6562fd95a931ab2346b3c5efd58c2f569038ba3c530f7e66472 v0.8.5.tar.gz +sha256 bd682ffcf701e8f83283cdff7281aad0c83b02a56084d6e601216210732833f9 cni-plugins-linux-amd64-v0.8.5.tgz diff --git a/deploy/iso/minikube-iso/package/cni-plugins/cni-plugins.mk b/deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/cni-plugins.mk similarity index 74% rename from deploy/iso/minikube-iso/package/cni-plugins/cni-plugins.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/cni-plugins.mk index 659e186e87ea..f90be859b6e5 100644 --- a/deploy/iso/minikube-iso/package/cni-plugins/cni-plugins.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/cni-plugins/cni-plugins.mk @@ -5,28 +5,14 @@ ################################################################################ CNI_PLUGINS_VERSION = v0.8.5 -CNI_PLUGINS_SITE = https://github.com/containernetworking/plugins/archive -CNI_PLUGINS_SOURCE = $(CNI_PLUGINS_VERSION).tar.gz +CNI_PLUGINS_SITE = https://github.com/containernetworking/plugins/releases/download/$(CNI_PLUGINS_VERSION) +CNI_PLUGINS_SOURCE = cni-plugins-linux-amd64-$(CNI_PLUGINS_VERSION).tgz CNI_PLUGINS_LICENSE = Apache-2.0 CNI_PLUGINS_LICENSE_FILES = LICENSE -CNI_PLUGINS_DEPENDENCIES = host-go - -CNI_PLUGINS_MAKE_ENV = \ - $(GO_TARGET_ENV) \ - CGO_ENABLED=0 \ - GO111MODULE=off - -CNI_PLUGINS_BUILDFLAGS = -a -ldflags '-extldflags -static -X github.com/containernetworking/plugins/pkg/utils/buildversion.BuildVersion=$(CNI_PLUGINS_VERSION)' - - -define CNI_PLUGINS_BUILD_CMDS - (cd $(@D); $(CNI_PLUGINS_MAKE_ENV) ./build_linux.sh $(CNI_PLUGINS_BUILDFLAGS)) -endef - define CNI_PLUGINS_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 \ - $(@D)/bin/bandwidth \ + $(@D)/bandwidth \ $(TARGET_DIR)/opt/cni/bin/bandwidth ln -sf \ @@ -34,7 +20,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/bandwidth $(INSTALL) -D -m 0755 \ - $(@D)/bin/bridge \ + $(@D)/bridge \ $(TARGET_DIR)/opt/cni/bin/bridge ln -sf \ @@ -42,7 +28,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/bridge $(INSTALL) -D -m 0755 \ - $(@D)/bin/vlan \ + $(@D)/vlan \ $(TARGET_DIR)/opt/cni/bin/vlan ln -sf \ @@ -50,7 +36,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/vlan $(INSTALL) -D -m 0755 \ - $(@D)/bin/tuning \ + $(@D)/tuning \ $(TARGET_DIR)/opt/cni/bin/tuning ln -sf \ @@ -58,7 +44,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/tuning $(INSTALL) -D -m 0755 \ - $(@D)/bin/ptp \ + $(@D)/ptp \ $(TARGET_DIR)/opt/cni/bin/ptp ln -sf \ @@ -66,7 +52,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/ptp $(INSTALL) -D -m 0755 \ - $(@D)/bin/portmap \ + $(@D)/portmap \ $(TARGET_DIR)/opt/cni/bin/portmap ln -sf \ @@ -74,7 +60,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/portmap $(INSTALL) -D -m 0755 \ - $(@D)/bin/macvlan \ + $(@D)/macvlan \ $(TARGET_DIR)/opt/cni/bin/macvlan ln -sf \ @@ -82,7 +68,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/macvlan $(INSTALL) -D -m 0755 \ - $(@D)/bin/loopback \ + $(@D)/loopback \ $(TARGET_DIR)/opt/cni/bin/loopback ln -sf \ @@ -90,7 +76,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/loopback $(INSTALL) -D -m 0755 \ - $(@D)/bin/ipvlan \ + $(@D)/ipvlan \ $(TARGET_DIR)/opt/cni/bin/ipvlan ln -sf \ @@ -98,7 +84,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/ipvlan $(INSTALL) -D -m 0755 \ - $(@D)/bin/host-local \ + $(@D)/host-local \ $(TARGET_DIR)/opt/cni/bin/host-local ln -sf \ @@ -106,7 +92,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/host-local $(INSTALL) -D -m 0755 \ - $(@D)/bin/flannel \ + $(@D)/flannel \ $(TARGET_DIR)/opt/cni/bin/flannel ln -sf \ @@ -115,7 +101,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 \ - $(@D)/bin/dhcp \ + $(@D)/dhcp \ $(TARGET_DIR)/opt/cni/bin/dhcp ln -sf \ @@ -123,7 +109,7 @@ define CNI_PLUGINS_INSTALL_TARGET_CMDS $(TARGET_DIR)/usr/bin/dhcp $(INSTALL) -D -m 0755 \ - $(@D)/bin/firewall \ + $(@D)/firewall \ $(TARGET_DIR)/opt/cni/bin/firewall ln -sf \ diff --git a/deploy/iso/minikube-iso/package/cni/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/cni/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/cni/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/cni/Config.in diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/cni/cni.hash b/deploy/iso/minikube-iso/arch/x86_64/package/cni/cni.hash new file mode 100644 index 000000000000..f8b1c8278f54 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/cni/cni.hash @@ -0,0 +1,6 @@ +sha256 b1ae09833a238c51161918a8849031efdb46cf0068ea5b752e362d9836e2af7d cni-v0.3.0.tgz +sha256 84c9a0a41b59211d560bef14bf3f53bb370156f9ac7762270b3848fed96e1be8 cni-v0.4.0.tgz +sha256 a7f84a742c8f3a95843b3cc636444742554a4853835649ec371a07c841daebab cni-amd64-v0.6.0.tgz +sha256 802f4a002b4eb774624a9dc1c859d3c9926eb2d862e66a673fc99cfc8bcd7494 v0.6.0.tar.gz +sha256 78d57477d6b0ab9dc4d75ce9f275302d2f379206b5326503e57d9c08b76484c1 v0.7.0.tar.gz +sha256 4517eabfd65aea2012dc48d057bf889a0a41ed9837387d95cd1e36c0dbddcfd4 v0.7.1.tar.gz diff --git a/deploy/iso/minikube-iso/package/cni/cni.mk b/deploy/iso/minikube-iso/arch/x86_64/package/cni/cni.mk similarity index 95% rename from deploy/iso/minikube-iso/package/cni/cni.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/cni/cni.mk index 396e966ed06b..6e9aacd27515 100644 --- a/deploy/iso/minikube-iso/package/cni/cni.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/cni/cni.mk @@ -19,7 +19,8 @@ CNI_MAKE_ENV = \ GO111MODULE=off \ GOPATH="$(CNI_GOPATH)" \ GOBIN="$(CNI_GOPATH)/bin" \ - PATH=$(CNI_GOPATH)/bin:$(BR_PATH) + PATH=$(CNI_GOPATH)/bin:$(BR_PATH) \ + GOARCH=amd64 CNI_BUILDFLAGS = -a --ldflags '-extldflags \"-static\"' diff --git a/deploy/iso/minikube-iso/package/conmon/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/conmon/Config.in similarity index 91% rename from deploy/iso/minikube-iso/package/conmon/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/conmon/Config.in index 6d4df09cf9ca..0022e249006b 100644 --- a/deploy/iso/minikube-iso/package/conmon/Config.in +++ b/deploy/iso/minikube-iso/arch/x86_64/package/conmon/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_CONMON bool "conmon" + depends on BR2_x86_64 depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS diff --git a/deploy/iso/minikube-iso/package/conmon/conmon.hash b/deploy/iso/minikube-iso/arch/x86_64/package/conmon/conmon.hash similarity index 100% rename from deploy/iso/minikube-iso/package/conmon/conmon.hash rename to deploy/iso/minikube-iso/arch/x86_64/package/conmon/conmon.hash diff --git a/deploy/iso/minikube-iso/package/conmon/conmon.mk b/deploy/iso/minikube-iso/arch/x86_64/package/conmon/conmon.mk similarity index 100% rename from deploy/iso/minikube-iso/package/conmon/conmon.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/conmon/conmon.mk diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/50-minikube.preset b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/50-minikube.preset new file mode 100644 index 000000000000..1f46632a804b --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/50-minikube.preset @@ -0,0 +1 @@ +disable containerd.service diff --git a/deploy/iso/minikube-iso/package/containerd-bin/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/containerd-bin/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/Config.in diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/config.toml b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/config.toml new file mode 100644 index 000000000000..f588941a5efb --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/config.toml @@ -0,0 +1,133 @@ +version = 2 +root = "/var/lib/containerd" +state = "/run/containerd" +plugin_dir = "" +disabled_plugins = [] +required_plugins = [] +oom_score = 0 + +[grpc] + address = "/run/containerd/containerd.sock" + tcp_address = "" + tcp_tls_cert = "" + tcp_tls_key = "" + uid = 0 + gid = 0 + max_recv_message_size = 16777216 + max_send_message_size = 16777216 + +[ttrpc] + address = "" + uid = 0 + gid = 0 + +[debug] + address = "" + uid = 0 + gid = 0 + level = "" + +[metrics] + address = "" + grpc_histogram = false + +[cgroup] + path = "" + +[timeouts] + "io.containerd.timeout.shim.cleanup" = "5s" + "io.containerd.timeout.shim.load" = "5s" + "io.containerd.timeout.shim.shutdown" = "3s" + "io.containerd.timeout.task.state" = "2s" + +[plugins] + [plugins."io.containerd.gc.v1.scheduler"] + pause_threshold = 0.02 + deletion_threshold = 0 + mutation_threshold = 100 + schedule_delay = "0s" + startup_delay = "100ms" + [plugins."io.containerd.grpc.v1.cri"] + disable_tcp_service = true + stream_server_address = "" + stream_server_port = "10010" + stream_idle_timeout = "4h0m0s" + enable_selinux = false + selinux_category_range = 1024 + sandbox_image = "k8s.gcr.io/pause:3.2" + stats_collect_period = 10 + systemd_cgroup = true + enable_tls_streaming = false + max_container_log_line_size = 16384 + disable_cgroup = false + disable_apparmor = false + restrict_oom_score_adj = false + max_concurrent_downloads = 3 + disable_proc_mount = false + unset_seccomp_profile = "" + tolerate_missing_hugetlb_controller = true + disable_hugetlb_controller = true + ignore_image_defined_volumes = false + [plugins."io.containerd.grpc.v1.cri".containerd] + snapshotter = "overlayfs" + default_runtime_name = "runc" + no_pivot = false + disable_snapshot_annotations = true + discard_unpacked_layers = false + [plugins."io.containerd.grpc.v1.cri".containerd.default_runtime] + runtime_type = "" + runtime_engine = "" + runtime_root = "" + privileged_without_host_devices = false + base_runtime_spec = "" + [plugins."io.containerd.grpc.v1.cri".containerd.untrusted_workload_runtime] + runtime_type = "" + runtime_engine = "" + runtime_root = "" + privileged_without_host_devices = false + base_runtime_spec = "" + [plugins."io.containerd.grpc.v1.cri".containerd.runtimes] + [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc] + runtime_type = "io.containerd.runc.v2" + runtime_engine = "" + runtime_root = "" + privileged_without_host_devices = false + base_runtime_spec = "" + [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options] + [plugins."io.containerd.grpc.v1.cri".cni] + bin_dir = "/opt/cni/bin" + conf_dir = "/etc/cni/net.d" + max_conf_num = 1 + conf_template = "" + [plugins."io.containerd.grpc.v1.cri".registry] + [plugins."io.containerd.grpc.v1.cri".registry.mirrors] + [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"] + endpoint = ["https://registry-1.docker.io"] + [plugins."io.containerd.grpc.v1.cri".image_decryption] + key_model = "" + [plugins."io.containerd.grpc.v1.cri".x509_key_pair_streaming] + tls_cert_file = "" + tls_key_file = "" + [plugins."io.containerd.internal.v1.opt"] + path = "/opt/containerd" + [plugins."io.containerd.internal.v1.restart"] + interval = "10s" + [plugins."io.containerd.metadata.v1.bolt"] + content_sharing_policy = "shared" + [plugins."io.containerd.monitor.v1.cgroups"] + no_prometheus = false + [plugins."io.containerd.runtime.v1.linux"] + shim = "containerd-shim" + runtime = "runc" + runtime_root = "" + no_shim = false + shim_debug = false + [plugins."io.containerd.runtime.v2.task"] + platforms = ["linux/amd64"] + [plugins."io.containerd.service.v1.diff-service"] + default = ["walking"] + [plugins."io.containerd.snapshotter.v1.devmapper"] + root_path = "" + pool_name = "" + base_image_size = "" + async_remove = false diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/config.toml.default b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/config.toml.default new file mode 100644 index 000000000000..c54c96c32022 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/config.toml.default @@ -0,0 +1,133 @@ +version = 2 +root = "/var/lib/containerd" +state = "/run/containerd" +plugin_dir = "" +disabled_plugins = [] +required_plugins = [] +oom_score = 0 + +[grpc] + address = "/run/containerd/containerd.sock" + tcp_address = "" + tcp_tls_cert = "" + tcp_tls_key = "" + uid = 0 + gid = 0 + max_recv_message_size = 16777216 + max_send_message_size = 16777216 + +[ttrpc] + address = "" + uid = 0 + gid = 0 + +[debug] + address = "" + uid = 0 + gid = 0 + level = "" + +[metrics] + address = "" + grpc_histogram = false + +[cgroup] + path = "" + +[timeouts] + "io.containerd.timeout.shim.cleanup" = "5s" + "io.containerd.timeout.shim.load" = "5s" + "io.containerd.timeout.shim.shutdown" = "3s" + "io.containerd.timeout.task.state" = "2s" + +[plugins] + [plugins."io.containerd.gc.v1.scheduler"] + pause_threshold = 0.02 + deletion_threshold = 0 + mutation_threshold = 100 + schedule_delay = "0s" + startup_delay = "100ms" + [plugins."io.containerd.grpc.v1.cri"] + disable_tcp_service = true + stream_server_address = "127.0.0.1" + stream_server_port = "0" + stream_idle_timeout = "4h0m0s" + enable_selinux = false + selinux_category_range = 1024 + sandbox_image = "k8s.gcr.io/pause:3.2" + stats_collect_period = 10 + systemd_cgroup = false + enable_tls_streaming = false + max_container_log_line_size = 16384 + disable_cgroup = false + disable_apparmor = false + restrict_oom_score_adj = false + max_concurrent_downloads = 3 + disable_proc_mount = false + unset_seccomp_profile = "" + tolerate_missing_hugetlb_controller = true + disable_hugetlb_controller = true + ignore_image_defined_volumes = false + [plugins."io.containerd.grpc.v1.cri".containerd] + snapshotter = "overlayfs" + default_runtime_name = "runc" + no_pivot = false + disable_snapshot_annotations = true + discard_unpacked_layers = false + [plugins."io.containerd.grpc.v1.cri".containerd.default_runtime] + runtime_type = "" + runtime_engine = "" + runtime_root = "" + privileged_without_host_devices = false + base_runtime_spec = "" + [plugins."io.containerd.grpc.v1.cri".containerd.untrusted_workload_runtime] + runtime_type = "" + runtime_engine = "" + runtime_root = "" + privileged_without_host_devices = false + base_runtime_spec = "" + [plugins."io.containerd.grpc.v1.cri".containerd.runtimes] + [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc] + runtime_type = "io.containerd.runc.v2" + runtime_engine = "" + runtime_root = "" + privileged_without_host_devices = false + base_runtime_spec = "" + [plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options] + [plugins."io.containerd.grpc.v1.cri".cni] + bin_dir = "/opt/cni/bin" + conf_dir = "/etc/cni/net.d" + max_conf_num = 1 + conf_template = "" + [plugins."io.containerd.grpc.v1.cri".registry] + [plugins."io.containerd.grpc.v1.cri".registry.mirrors] + [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"] + endpoint = ["https://registry-1.docker.io"] + [plugins."io.containerd.grpc.v1.cri".image_decryption] + key_model = "" + [plugins."io.containerd.grpc.v1.cri".x509_key_pair_streaming] + tls_cert_file = "" + tls_key_file = "" + [plugins."io.containerd.internal.v1.opt"] + path = "/opt/containerd" + [plugins."io.containerd.internal.v1.restart"] + interval = "10s" + [plugins."io.containerd.metadata.v1.bolt"] + content_sharing_policy = "shared" + [plugins."io.containerd.monitor.v1.cgroups"] + no_prometheus = false + [plugins."io.containerd.runtime.v1.linux"] + shim = "containerd-shim" + runtime = "runc" + runtime_root = "" + no_shim = false + shim_debug = false + [plugins."io.containerd.runtime.v2.task"] + platforms = ["linux/amd64"] + [plugins."io.containerd.service.v1.diff-service"] + default = ["walking"] + [plugins."io.containerd.snapshotter.v1.devmapper"] + root_path = "" + pool_name = "" + base_image_size = "" + async_remove = false diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd-bin.hash b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd-bin.hash new file mode 100644 index 000000000000..50fff143ab50 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd-bin.hash @@ -0,0 +1,16 @@ +sha256 8565a655345f3db2f7b78b77a2cd3103895229aa44cd0e4c710ba3559e344b5a v1.2.0.tar.gz +sha256 b92819bde71de947329814a3c649b8adb106cc03be16aae217b94297f4b843a1 v1.2.5.tar.gz +sha256 f2d578b743fb9faa5b3477b7cf4b33d00501087043a53b27754f14bbe741f891 v1.2.6.tar.gz +sha256 6165ae2ad669d9ec6d317492d30a1511365bd31ad29efae757f19c1828bf75b3 v1.2.8.tar.gz +sha256 a0965e1492fca558629826f1aa89a9675de3d451cec67540400b30c0bf6ac387 v1.2.10.tar.gz +sha256 318886ea1efdec36f088fd6a0a0fe2b2f0ebdfd0066bdb4bd284bad12abc0a41 v1.2.12.tar.gz +sha256 0811057ab67b78ce911416e793edaeb14b3f1e105d67b8e67b6302e0eab572e4 v1.2.13.tar.gz +sha256 d30d59e143697aa4f0960205b3f5ac59c573b332f20507740ef2dc0fb5ae8ded v1.3.7.tar.gz +sha256 9244212589c84b12262769dca6fb985c0c680cb5259c8904b29c511d81fd62d0 v1.3.9.tar.gz +sha256 bc6d9452c700af0ebc09c0da8ddba55be4c03ac8928e72ca92d98905800c8018 v1.4.3.tar.gz +sha256 ac62c64664bf62fd44df0891c896eecdb6d93def3438271d7892dca75bc069d1 v1.4.4.tar.gz +sha256 285a3f4c00a87538bd7d0a82a0a8a758458c02b925349f44f3189f480c326038 v1.4.6.tar.gz +sha256 3bb9f54be022067847f5930d21ebbfe4e7a67f589d78930aa0ac713492c28bcc v1.4.9.tar.gz +sha256 85a531725f15e2d136131119d42af4507a5389e0947015152075c4c93816fb5c v1.4.12.tar.gz +sha256 7507913ba169c103ab67bc51bec31cd977d4348d7bc842da32b7eab5f930a14b v1.5.10.tar.gz +sha256 02b79d5e2b07b5e64cd28f1fe84395ee11eef95fc49fd923a9ab93022b148be6 v1.5.11.tar.gz diff --git a/deploy/iso/minikube-iso/package/containerd-bin/containerd-bin.mk b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd-bin.mk similarity index 97% rename from deploy/iso/minikube-iso/package/containerd-bin/containerd-bin.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd-bin.mk index 54c6a2fd0e17..509a9ad76159 100644 --- a/deploy/iso/minikube-iso/package/containerd-bin/containerd-bin.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd-bin.mk @@ -15,7 +15,8 @@ CONTAINERD_BIN_ENV = \ GO111MODULE=off \ GOPATH="$(CONTAINERD_BIN_GOPATH)" \ GOBIN="$(CONTAINERD_BIN_GOPATH)/bin" \ - PATH=$(CONTAINERD_BIN_GOPATH)/bin:$(BR_PATH) + PATH=$(CONTAINERD_BIN_GOPATH)/bin:$(BR_PATH) \ + GOARCH=amd64 CONTAINERD_BIN_COMPILE_SRC = $(CONTAINERD_BIN_GOPATH)/src/github.com/containerd/containerd diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd.service b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd.service new file mode 100644 index 000000000000..2d3d1e5ec9fb --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/containerd-bin/containerd.service @@ -0,0 +1,29 @@ +[Unit] +Description=containerd container runtime +Documentation=https://containerd.io +After=network-online.target minikube-automount.service +Requires=minikube-automount.service + +[Service] +EnvironmentFile=-/etc/sysconfig/containerd +EnvironmentFile=-/etc/sysconfig/containerd.minikube +EnvironmentFile=/var/run/minikube/env +Environment=GOTRACEBACK=crash +ExecStartPre=/sbin/modprobe overlay +ExecStart=/usr/bin/containerd \ + $CONTAINERD_OPTIONS \ + $CONTAINERD_MINIKUBE_OPTIONS \ + --root ${PERSISTENT_DIR}/var/lib/containerd +TasksMax=8192 +Delegate=yes +KillMode=mixed +LimitNOFILE=1048576 +# Having non-zero Limit*s causes performance problems due to accounting overhead +# in the kernel. We recommend using cgroups to do container-local accounting. +LimitNPROC=infinity +LimitCORE=infinity +TimeoutStartSec=0 +Restart=on-abnormal + +[Install] +WantedBy=multi-user.target diff --git a/deploy/iso/minikube-iso/package/cri-dockerd/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/cri-dockerd/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/Config.in diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.hash b/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.hash new file mode 100644 index 000000000000..1693e1b9d46b --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.hash @@ -0,0 +1,3 @@ +sha256 4acd7605a0cb95a6ad50314d1f2497b92ee0f07382062d0c18a5434c1a3b9513 542e27dee12db61d6e96d2a83a20359474a5efa2.tar.gz +sha256 b2a082a8846ac74b8482ee6353d480cea0dec017bbec2b59b16e3f91efa2f5ca eb0c48ef49856f7d098ec005ddebcae197e08e49.tar.gz +sha256 ceb99430633f75f354c0e9fea1f3cf0e5138ac5ee3c2691a1a70811fd2feeeef a4d1895a2659ea9974bd7528a706592ab8b74181.tar.gz diff --git a/deploy/iso/minikube-iso/package/cri-dockerd/cri-dockerd.mk b/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.mk similarity index 96% rename from deploy/iso/minikube-iso/package/cri-dockerd/cri-dockerd.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.mk index cd961b6e2584..f7a57a24b00b 100644 --- a/deploy/iso/minikube-iso/package/cri-dockerd/cri-dockerd.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/cri-dockerd/cri-dockerd.mk @@ -20,7 +20,8 @@ CRI_DOCKERD_ENV = \ GO111MODULE=on \ GOPATH="$(CRI_DOCKERD_GOPATH)" \ GOBIN="$(CRI_DOCKERD_GOPATH)/bin" \ - PATH=$(CRI_DOCKERD_GOPATH)/bin:$(BR_PATH) + PATH=$(CRI_DOCKERD_GOPATH)/bin:$(BR_PATH) \ + GOARCH=amd64 CRI_DOCKERD_COMPILE_SRC = $(CRI_DOCKERD_GOPATH)/src/github.com/Mirantis/cri-dockerd CRI_DOCKERD_BUILDFLAGS = "-ldflags '-X github.com/Mirantis/cri-dockerd/version.Version=$(CRI_DOCKERD_VER) -X github.com/Mirantis/cri-dockerd/version.GitCommit=$(CRI_DOCKERD_REV)'" diff --git a/deploy/iso/minikube-iso/package/crictl-bin/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/crictl-bin/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/crictl-bin/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/crictl-bin/Config.in diff --git a/deploy/iso/minikube-iso/package/crictl-bin/crictl-bin.hash b/deploy/iso/minikube-iso/arch/x86_64/package/crictl-bin/crictl-bin.hash similarity index 100% rename from deploy/iso/minikube-iso/package/crictl-bin/crictl-bin.hash rename to deploy/iso/minikube-iso/arch/x86_64/package/crictl-bin/crictl-bin.hash diff --git a/deploy/iso/minikube-iso/package/crictl-bin/crictl-bin.mk b/deploy/iso/minikube-iso/arch/x86_64/package/crictl-bin/crictl-bin.mk similarity index 100% rename from deploy/iso/minikube-iso/package/crictl-bin/crictl-bin.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/crictl-bin/crictl-bin.mk diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/02-crio.conf b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/02-crio.conf new file mode 100644 index 000000000000..cfeb6ed70b9b --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/02-crio.conf @@ -0,0 +1,8 @@ +[crio.image] +# pause_image = "" + +[crio.network] +# cni_default_network = "" + +[crio.runtime] +# cgroup_manager = "" diff --git a/deploy/iso/minikube-iso/package/crio-bin/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/Config.in diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/conmon-config.h b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/conmon-config.h new file mode 100755 index 000000000000..1783492d0d8b --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/conmon-config.h @@ -0,0 +1,9 @@ + +#if !defined(CONFIG_H) +#define CONFIG_H + +#define BUF_SIZE 8192 +#define STDIO_BUF_SIZE 8192 +#define DEFAULT_SOCKET_PATH "/var/run/crio" + +#endif // CONFIG_H diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-bin.hash b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-bin.hash new file mode 100644 index 000000000000..82c62806a816 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-bin.hash @@ -0,0 +1,28 @@ +sha256 d310d52706262009af886dbd3e8dcd09a339cdc3b57dc22a9121e6d6a87d2921 v1.8.4.tar.gz +sha256 9f79cee99e272c9cfc561ae31235d84d4da59fd5c8b3d3ab6623bf9a92d90c5a v1.10.0.tar.gz +sha256 09e53fd550f4f10108879131ee6b8ef1c367ce71a73dcf6350c4cc898751d8c1 v1.11.8.tar.gz +sha256 92588998dbb79002c38f65f84602b5659f0d0ef1cd36b1a568a2e40269b66816 v1.13.0.tar.gz +sha256 48e7cf64a757d62a3edf214e1b93b74d99f090ca924f956ede2494a260eab2db v1.13.1.tar.gz +sha256 7435c4745017f06c260973b049440d924efe65b0df008d14175dfb8f5e23b599 v1.14.0.tar.gz +sha256 1f6f72b1f89d4286b2d5b54a48f4d5ed4c0c01065d484635dcb343a706feb743 v1.14.1.tar.gz +sha256 f7041a92e2d3a4c341be8df58f1076ba57ecb5daa02b6c65e652530c5f242739 v1.15.0.tar.gz +sha256 6218a99877da9b9895e0088944731f5384803c15628d4b3c6b40ba1ddd39e052 v1.15.1.tar.gz +sha256 70d4c746fe207422c78420dc4239768f485eea639a38c993c02872ec6305dd1d v1.15.2.tar.gz +sha256 05f9614c4d5970b4662499b84c270b0ab953596ee863dcd09c9dc7a2d2f09789 v1.16.0.tar.gz +sha256 57e1ee990ef2d5af8b32c33a21b4998682608e3556dcf1d3349666f55e7d95b9 v1.16.1.tar.gz +sha256 23a797762e4544ee7c171ef138cfc1141a3f0acc2838d9965c2a58e53b16c3ae v1.17.0.tar.gz +sha256 7967e9218fdfb59d6005a9e19c1668469bc5566c2a35927cffe7de8656bb22c7 v1.17.1.tar.gz +sha256 336f5c275e260eaae8187e7250fb960441e8dc90615729354d3c04e699870982 v1.17.3.tar.gz +sha256 865ded95aceb3a33a391b252522682de6b37b39498704c490b3a321dbefaafcb v1.18.0.tar.gz +sha256 794ddc36c2a20fde91fc6cc2c6f02ebdaea85c69b51b67f3994090dbbdbc2a50 v1.18.1.tar.gz +sha256 25dc558fbabc987bd58c7eab5230121b258a7b0eb34a49dc6595f1c6f3969116 v1.18.2.tar.gz +sha256 d5c6442e3990938badc966cdd1eb9ebe2fc11345452c233aa0d87ca38fbeed81 v1.18.3.tar.gz +sha256 74a4e916acddc6cf47ab5752bdebb6732ce2c028505ef57b7edc21d2da9039b6 v1.18.4.tar.gz +sha256 fc8a8e61375e3ce30563eeb0fd6534c4f48fc20300a72e6ff51cc99cb2703516 v1.19.0.tar.gz +sha256 6165c5b8212ea03be2a465403177318bfe25a54c3e8d66d720344643913a0223 v1.19.1.tar.gz +sha256 76fd7543bc92d4364a11060f43a5131893a76c6e6e9d6de3a6bb6292c110b631 v1.20.0.tar.gz +sha256 36d9f4cf4966342e2d4099e44d8156c55c6a10745c67ce4f856aa9f6dcc2d9ba v1.20.2.tar.gz +sha256 bc53ea8977e252bd9812974c33ff654ee22076598e901464468c5c105a5ef773 v1.22.0.tar.gz +sha256 6e1c0e393cd16af907fabb24e4cc068e27c606c5f1071060d46efdcd29cb5c0d v1.22.1.tar.gz +sha256 34097a0f535aa79cf990aaee5d3ff6226663587b188cbee11089f120e7f869e4 v1.22.2.tar.gz +sha256 52836549cfa27a688659576be9266f4837357a6fa162b1d0a05fa8da62c724b3 v1.22.3.tar.gz diff --git a/deploy/iso/minikube-iso/package/crio-bin/crio-bin.mk b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-bin.mk similarity index 100% rename from deploy/iso/minikube-iso/package/crio-bin/crio-bin.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-bin.mk diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-wipe.service b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-wipe.service new file mode 100644 index 000000000000..1389fa9e2911 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio-wipe.service @@ -0,0 +1,20 @@ +[Unit] +Description=CRI-O Auto Update Script +Before=crio.service +After=minikube-automount.service +Requires=minikube-automount.service +RequiresMountsFor=/var/lib/containers + +[Service] +EnvironmentFile=-/etc/sysconfig/crio +EnvironmentFile=-/etc/sysconfig/crio.minikube +EnvironmentFile=/var/run/minikube/env +ExecStart=/usr/bin/crio \ + $CRIO_OPTIONS \ + $CRIO_MINIKUBE_OPTIONS \ + wipe + +Type=oneshot + +[Install] +WantedBy=multi-user.target diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.conf b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.conf new file mode 100644 index 000000000000..fafaed67bc64 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.conf @@ -0,0 +1,409 @@ +# The CRI-O configuration file specifies all of the available configuration +# options and command-line flags for the crio(8) OCI Kubernetes Container Runtime +# daemon, but in a TOML format that can be more easily modified and versioned. +# +# Please refer to crio.conf(5) for details of all configuration options. + +# CRI-O supports partial configuration reload during runtime, which can be +# done by sending SIGHUP to the running process. Currently supported options +# are explicitly mentioned with: 'This option supports live configuration +# reload'. + +# CRI-O reads its storage defaults from the containers-storage.conf(5) file +# located at /etc/containers/storage.conf. Modify this storage configuration if +# you want to change the system's defaults. If you want to modify storage just +# for CRI-O, you can change the storage configuration options here. +[crio] + +# Path to the "root directory". CRI-O stores all of its data, including +# containers images, in this directory. +root = "/var/lib/containers/storage" + +# Path to the "run directory". CRI-O stores all of its state in this directory. +runroot = "/var/run/containers/storage" + +# Storage driver used to manage the storage of images and containers. Please +# refer to containers-storage.conf(5) to see all available storage drivers. +storage_driver = "overlay" + +# List to pass options to the storage driver. Please refer to +# containers-storage.conf(5) to see all available storage options. +#storage_option = [ +# "overlay.mountopt=nodev,metacopy=on", +#] + +# The default log directory where all logs will go unless directly specified by +# the kubelet. The log directory specified must be an absolute directory. +log_dir = "/var/log/crio/pods" + +# Location for CRI-O to lay down the temporary version file. +# It is used to check if crio wipe should wipe containers, which should +# always happen on a node reboot +version_file = "/var/run/crio/version" + +# Location for CRI-O to lay down the persistent version file. +# It is used to check if crio wipe should wipe images, which should +# only happen when CRI-O has been upgraded +version_file_persist = "/var/lib/crio/version" + +# The crio.api table contains settings for the kubelet/gRPC interface. +[crio.api] + +# Path to AF_LOCAL socket on which CRI-O will listen. +listen = "/var/run/crio/crio.sock" + +# IP address on which the stream server will listen. +stream_address = "127.0.0.1" + +# The port on which the stream server will listen. If the port is set to "0", then +# CRI-O will allocate a random free port number. +stream_port = "0" + +# Enable encrypted TLS transport of the stream server. +stream_enable_tls = false + +# Path to the x509 certificate file used to serve the encrypted stream. This +# file can change, and CRI-O will automatically pick up the changes within 5 +# minutes. +stream_tls_cert = "" + +# Path to the key file used to serve the encrypted stream. This file can +# change and CRI-O will automatically pick up the changes within 5 minutes. +stream_tls_key = "" + +# Path to the x509 CA(s) file used to verify and authenticate client +# communication with the encrypted stream. This file can change and CRI-O will +# automatically pick up the changes within 5 minutes. +stream_tls_ca = "" + +# Maximum grpc send message size in bytes. If not set or <=0, then CRI-O will default to 16 * 1024 * 1024. +grpc_max_send_msg_size = 16777216 + +# Maximum grpc receive message size. If not set or <= 0, then CRI-O will default to 16 * 1024 * 1024. +grpc_max_recv_msg_size = 16777216 + +# The crio.runtime table contains settings pertaining to the OCI runtime used +# and options for how to set up and manage the OCI runtime. +[crio.runtime] + +# A list of ulimits to be set in containers by default, specified as +# "=:", for example: +# "nofile=1024:2048" +# If nothing is set here, settings will be inherited from the CRI-O daemon +#default_ulimits = [ +#] + +# If true, the runtime will not use pivot_root, but instead use MS_MOVE. +no_pivot = false + +# decryption_keys_path is the path where the keys required for +# image decryption are stored. This option supports live configuration reload. +decryption_keys_path = "/etc/crio/keys/" + +# Path to the conmon binary, used for monitoring the OCI runtime. +# Will be searched for using $PATH if empty. +conmon = "/usr/libexec/crio/conmon" + +# Cgroup setting for conmon +conmon_cgroup = "system.slice" + +# Environment variable list for the conmon process, used for passing necessary +# environment variables to conmon or the runtime. +conmon_env = [ + "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", +] + +# Additional environment variables to set for all the +# containers. These are overridden if set in the +# container image spec or in the container runtime configuration. +default_env = [ +] + +# If true, SELinux will be used for pod separation on the host. +selinux = false + +# Path to the seccomp.json profile which is used as the default seccomp profile +# for the runtime. If not specified, then the internal default seccomp profile +# will be used. This option supports live configuration reload. +seccomp_profile = "" + +# Changes the meaning of an empty seccomp profile. By default +# (and according to CRI spec), an empty profile means unconfined. +# This option tells CRI-O to treat an empty profile as the default profile, +# which might increase security. +seccomp_use_default_when_empty = false + +# Used to change the name of the default AppArmor profile of CRI-O. The default +# profile name is "crio-default". This profile only takes effect if the user +# does not specify a profile via the Kubernetes Pod's metadata annotation. If +# the profile is set to "unconfined", then this equals to disabling AppArmor. +# This option supports live configuration reload. +apparmor_profile = "crio-default" + +# Cgroup management implementation used for the runtime. +cgroup_manager = "systemd" + +# Specify whether the image pull must be performed in a separate cgroup. +separate_pull_cgroup = "" + +# List of default capabilities for containers. If it is empty or commented out, +# only the capabilities defined in the containers json file by the user/kube +# will be added. +default_capabilities = [ + "CHOWN", + "DAC_OVERRIDE", + "FSETID", + "FOWNER", + "SETGID", + "SETUID", + "SETPCAP", + "NET_BIND_SERVICE", + "KILL", +] + +# List of default sysctls. If it is empty or commented out, only the sysctls +# defined in the container json file by the user/kube will be added. +default_sysctls = [ +] + +# List of additional devices. specified as +# "::", for example: "--device=/dev/sdc:/dev/xvdc:rwm". +#If it is empty or commented out, only the devices +# defined in the container json file by the user/kube will be added. +additional_devices = [ +] + +# Path to OCI hooks directories for automatically executed hooks. If one of the +# directories does not exist, then CRI-O will automatically skip them. +hooks_dir = [ + "/usr/share/containers/oci/hooks.d", +] + +# Path to the file specifying the defaults mounts for each container. The +# format of the config is /SRC:/DST, one mount per line. Notice that CRI-O reads +# its default mounts from the following two files: +# +# 1) /etc/containers/mounts.conf (i.e., default_mounts_file): This is the +# override file, where users can either add in their own default mounts, or +# override the default mounts shipped with the package. +# +# 2) /usr/share/containers/mounts.conf: This is the default file read for +# mounts. If you want CRI-O to read from a different, specific mounts file, +# you can change the default_mounts_file. Note, if this is done, CRI-O will +# only add mounts it finds in this file. +# +#default_mounts_file = "" + +# Maximum number of processes allowed in a container. +pids_limit = 1024 + +# Maximum sized allowed for the container log file. Negative numbers indicate +# that no size limit is imposed. If it is positive, it must be >= 8192 to +# match/exceed conmon's read buffer. The file is truncated and re-opened so the +# limit is never exceeded. +log_size_max = -1 + +# Whether container output should be logged to journald in addition to the kuberentes log file +log_to_journald = false + +# Path to directory in which container exit files are written to by conmon. +container_exits_dir = "/var/run/crio/exits" + +# Path to directory for container attach sockets. +container_attach_socket_dir = "/var/run/crio" + +# The prefix to use for the source of the bind mounts. +bind_mount_prefix = "" + +# If set to true, all containers will run in read-only mode. +read_only = false + +# Changes the verbosity of the logs based on the level it is set to. Options +# are fatal, panic, error, warn, info, debug and trace. This option supports +# live configuration reload. +log_level = "info" + +# Filter the log messages by the provided regular expression. +# This option supports live configuration reload. +log_filter = "" + +# The UID mappings for the user namespace of each container. A range is +# specified in the form containerUID:HostUID:Size. Multiple ranges must be +# separated by comma. +uid_mappings = "" + +# The GID mappings for the user namespace of each container. A range is +# specified in the form containerGID:HostGID:Size. Multiple ranges must be +# separated by comma. +gid_mappings = "" + +# The minimal amount of time in seconds to wait before issuing a timeout +# regarding the proper termination of the container. The lowest possible +# value is 30s, whereas lower values are not considered by CRI-O. +ctr_stop_timeout = 30 + +# manage_ns_lifecycle determines whether we pin and remove namespaces +# and manage their lifecycle. +# This option is being deprecated, and will be unconditionally true in the future. +manage_ns_lifecycle = true + +# drop_infra_ctr determines whether CRI-O drops the infra container +# when a pod does not have a private PID namespace, and does not use +# a kernel separating runtime (like kata). +# It requires manage_ns_lifecycle to be true. +drop_infra_ctr = false + +# The directory where the state of the managed namespaces gets tracked. +# Only used when manage_ns_lifecycle is true. +namespaces_dir = "/var/run" + +# pinns_path is the path to find the pinns binary, which is needed to manage namespace lifecycle +pinns_path = "/usr/bin/pinns" + +# default_runtime is the _name_ of the OCI runtime to be used as the default. +# The name is matched against the runtimes map below. If this value is changed, +# the corresponding existing entry from the runtimes map below will be ignored. +default_runtime = "runc" + +# The "crio.runtime.runtimes" table defines a list of OCI compatible runtimes. +# The runtime to use is picked based on the runtime_handler provided by the CRI. +# If no runtime_handler is provided, the runtime will be picked based on the level +# of trust of the workload. Each entry in the table should follow the format: +# +#[crio.runtime.runtimes.runtime-handler] +# runtime_path = "/path/to/the/executable" +# runtime_type = "oci" +# runtime_root = "/path/to/the/root" +# privileged_without_host_devices = false +# allowed_annotations = [] +# Where: +# - runtime-handler: name used to identify the runtime +# - runtime_path (optional, string): absolute path to the runtime executable in +# the host filesystem. If omitted, the runtime-handler identifier should match +# the runtime executable name, and the runtime executable should be placed +# in $PATH. +# - runtime_type (optional, string): type of runtime, one of: "oci", "vm". If +# omitted, an "oci" runtime is assumed. +# - runtime_root (optional, string): root directory for storage of containers +# state. +# - privileged_without_host_devices (optional, bool): an option for restricting +# host devices from being passed to privileged containers. +# - allowed_annotations (optional, array of strings): an option for specifying +# a list of experimental annotations that this runtime handler is allowed to process. +# The currently recognized values are: +# "io.kubernetes.cri-o.userns-mode" for configuring a user namespace for the pod. +# "io.kubernetes.cri-o.Devices" for configuring devices for the pod. +# "io.kubernetes.cri-o.ShmSize" for configuring the size of /dev/shm. + + +[crio.runtime.runtimes.runc] +runtime_path = "/usr/bin/runc" +runtime_type = "oci" +runtime_root = "/run/runc" + + + + +# crun is a fast and lightweight fully featured OCI runtime and C library for +# running containers +#[crio.runtime.runtimes.crun] + +# Kata Containers is an OCI runtime, where containers are run inside lightweight +# VMs. Kata provides additional isolation towards the host, minimizing the host attack +# surface and mitigating the consequences of containers breakout. + +# Kata Containers with the default configured VMM +#[crio.runtime.runtimes.kata-runtime] + +# Kata Containers with the QEMU VMM +#[crio.runtime.runtimes.kata-qemu] + +# Kata Containers with the Firecracker VMM +#[crio.runtime.runtimes.kata-fc] + +# The crio.image table contains settings pertaining to the management of OCI images. +# +# CRI-O reads its configured registries defaults from the system wide +# containers-registries.conf(5) located in /etc/containers/registries.conf. If +# you want to modify just CRI-O, you can change the registries configuration in +# this file. Otherwise, leave insecure_registries and registries commented out to +# use the system's defaults from /etc/containers/registries.conf. +[crio.image] + +# Default transport for pulling images from a remote container storage. +default_transport = "docker://" + +# The path to a file containing credentials necessary for pulling images from +# secure registries. The file is similar to that of /var/lib/kubelet/config.json +global_auth_file = "" + +# The image used to instantiate infra containers. +# This option supports live configuration reload. +pause_image = "k8s.gcr.io/pause:3.2" + +# The path to a file containing credentials specific for pulling the pause_image from +# above. The file is similar to that of /var/lib/kubelet/config.json +# This option supports live configuration reload. +pause_image_auth_file = "" + +# The command to run to have a container stay in the paused state. +# When explicitly set to "", it will fallback to the entrypoint and command +# specified in the pause image. When commented out, it will fallback to the +# default: "/pause". This option supports live configuration reload. +pause_command = "/pause" + +# Path to the file which decides what sort of policy we use when deciding +# whether or not to trust an image that we've pulled. It is not recommended that +# this option be used, as the default behavior of using the system-wide default +# policy (i.e., /etc/containers/policy.json) is most often preferred. Please +# refer to containers-policy.json(5) for more details. +signature_policy = "" + +# List of registries to skip TLS verification for pulling images. Please +# consider configuring the registries via /etc/containers/registries.conf before +# changing them here. +#insecure_registries = "[]" + +# Controls how image volumes are handled. The valid values are mkdir, bind and +# ignore; the latter will ignore volumes entirely. +image_volumes = "mkdir" + +# List of registries to be used when pulling an unqualified image (e.g., +# "alpine:latest"). By default, registries is set to "docker.io" for +# compatibility reasons. Depending on your workload and usecase you may add more +# registries (e.g., "quay.io", "registry.fedoraproject.org", +# "registry.opensuse.org", etc.). +registries = [ + "docker.io" +] + +# Temporary directory to use for storing big files +big_files_temporary_dir = "" + +# The crio.network table containers settings pertaining to the management of +# CNI plugins. +[crio.network] + +# The default CNI network name to be selected. If not set or "", then +# CRI-O will pick-up the first one found in network_dir. +# cni_default_network = "" + +# Path to the directory where CNI configuration files are located. +network_dir = "/etc/cni/net.d/" + +# Paths to directories where CNI plugin binaries are located. +plugin_dirs = [ + "/opt/cni/bin/", +] + +# A necessary configuration for Prometheus based metrics retrieval +[crio.metrics] + +# Globally enable or disable metrics support. +enable_metrics = true + +# The port on which the metrics server will listen. +metrics_port = 9090 + +# Local socket path to bind the metrics server to +metrics_socket = "" diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.conf.default b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.conf.default new file mode 100644 index 000000000000..25debfab9f33 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.conf.default @@ -0,0 +1,408 @@ +# The CRI-O configuration file specifies all of the available configuration +# options and command-line flags for the crio(8) OCI Kubernetes Container Runtime +# daemon, but in a TOML format that can be more easily modified and versioned. +# +# Please refer to crio.conf(5) for details of all configuration options. + +# CRI-O supports partial configuration reload during runtime, which can be +# done by sending SIGHUP to the running process. Currently supported options +# are explicitly mentioned with: 'This option supports live configuration +# reload'. + +# CRI-O reads its storage defaults from the containers-storage.conf(5) file +# located at /etc/containers/storage.conf. Modify this storage configuration if +# you want to change the system's defaults. If you want to modify storage just +# for CRI-O, you can change the storage configuration options here. +[crio] + +# Path to the "root directory". CRI-O stores all of its data, including +# containers images, in this directory. +#root = "/var/lib/containers/storage" + +# Path to the "run directory". CRI-O stores all of its state in this directory. +#runroot = "/var/run/containers/storage" + +# Storage driver used to manage the storage of images and containers. Please +# refer to containers-storage.conf(5) to see all available storage drivers. +#storage_driver = "" + +# List to pass options to the storage driver. Please refer to +# containers-storage.conf(5) to see all available storage options. +#storage_option = [ +# "overlay.mountopt=nodev,metacopy=on", +#] + +# The default log directory where all logs will go unless directly specified by +# the kubelet. The log directory specified must be an absolute directory. +log_dir = "/var/log/crio/pods" + +# Location for CRI-O to lay down the temporary version file. +# It is used to check if crio wipe should wipe containers, which should +# always happen on a node reboot +version_file = "/var/run/crio/version" + +# Location for CRI-O to lay down the persistent version file. +# It is used to check if crio wipe should wipe images, which should +# only happen when CRI-O has been upgraded +version_file_persist = "/var/lib/crio/version" + +# The crio.api table contains settings for the kubelet/gRPC interface. +[crio.api] + +# Path to AF_LOCAL socket on which CRI-O will listen. +listen = "/var/run/crio/crio.sock" + +# IP address on which the stream server will listen. +stream_address = "127.0.0.1" + +# The port on which the stream server will listen. If the port is set to "0", then +# CRI-O will allocate a random free port number. +stream_port = "0" + +# Enable encrypted TLS transport of the stream server. +stream_enable_tls = false + +# Path to the x509 certificate file used to serve the encrypted stream. This +# file can change, and CRI-O will automatically pick up the changes within 5 +# minutes. +stream_tls_cert = "" + +# Path to the key file used to serve the encrypted stream. This file can +# change and CRI-O will automatically pick up the changes within 5 minutes. +stream_tls_key = "" + +# Path to the x509 CA(s) file used to verify and authenticate client +# communication with the encrypted stream. This file can change and CRI-O will +# automatically pick up the changes within 5 minutes. +stream_tls_ca = "" + +# Maximum grpc send message size in bytes. If not set or <=0, then CRI-O will default to 16 * 1024 * 1024. +grpc_max_send_msg_size = 16777216 + +# Maximum grpc receive message size. If not set or <= 0, then CRI-O will default to 16 * 1024 * 1024. +grpc_max_recv_msg_size = 16777216 + +# The crio.runtime table contains settings pertaining to the OCI runtime used +# and options for how to set up and manage the OCI runtime. +[crio.runtime] + +# A list of ulimits to be set in containers by default, specified as +# "=:", for example: +# "nofile=1024:2048" +# If nothing is set here, settings will be inherited from the CRI-O daemon +#default_ulimits = [ +#] + +# If true, the runtime will not use pivot_root, but instead use MS_MOVE. +no_pivot = false + +# decryption_keys_path is the path where the keys required for +# image decryption are stored. This option supports live configuration reload. +decryption_keys_path = "/etc/crio/keys/" + +# Path to the conmon binary, used for monitoring the OCI runtime. +# Will be searched for using $PATH if empty. +conmon = "" + +# Cgroup setting for conmon +conmon_cgroup = "system.slice" + +# Environment variable list for the conmon process, used for passing necessary +# environment variables to conmon or the runtime. +conmon_env = [ + "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", +] + +# Additional environment variables to set for all the +# containers. These are overridden if set in the +# container image spec or in the container runtime configuration. +default_env = [ +] + +# If true, SELinux will be used for pod separation on the host. +selinux = false + +# Path to the seccomp.json profile which is used as the default seccomp profile +# for the runtime. If not specified, then the internal default seccomp profile +# will be used. This option supports live configuration reload. +seccomp_profile = "" + +# Changes the meaning of an empty seccomp profile. By default +# (and according to CRI spec), an empty profile means unconfined. +# This option tells CRI-O to treat an empty profile as the default profile, +# which might increase security. +seccomp_use_default_when_empty = false + +# Used to change the name of the default AppArmor profile of CRI-O. The default +# profile name is "crio-default". This profile only takes effect if the user +# does not specify a profile via the Kubernetes Pod's metadata annotation. If +# the profile is set to "unconfined", then this equals to disabling AppArmor. +# This option supports live configuration reload. +apparmor_profile = "crio-default" + +# Cgroup management implementation used for the runtime. +cgroup_manager = "systemd" + +# Specify whether the image pull must be performed in a separate cgroup. +separate_pull_cgroup = "" + +# List of default capabilities for containers. If it is empty or commented out, +# only the capabilities defined in the containers json file by the user/kube +# will be added. +default_capabilities = [ + "CHOWN", + "DAC_OVERRIDE", + "FSETID", + "FOWNER", + "SETGID", + "SETUID", + "SETPCAP", + "NET_BIND_SERVICE", + "KILL", +] + +# List of default sysctls. If it is empty or commented out, only the sysctls +# defined in the container json file by the user/kube will be added. +default_sysctls = [ +] + +# List of additional devices. specified as +# "::", for example: "--device=/dev/sdc:/dev/xvdc:rwm". +#If it is empty or commented out, only the devices +# defined in the container json file by the user/kube will be added. +additional_devices = [ +] + +# Path to OCI hooks directories for automatically executed hooks. If one of the +# directories does not exist, then CRI-O will automatically skip them. +hooks_dir = [ + "/usr/share/containers/oci/hooks.d", +] + +# Path to the file specifying the defaults mounts for each container. The +# format of the config is /SRC:/DST, one mount per line. Notice that CRI-O reads +# its default mounts from the following two files: +# +# 1) /etc/containers/mounts.conf (i.e., default_mounts_file): This is the +# override file, where users can either add in their own default mounts, or +# override the default mounts shipped with the package. +# +# 2) /usr/share/containers/mounts.conf: This is the default file read for +# mounts. If you want CRI-O to read from a different, specific mounts file, +# you can change the default_mounts_file. Note, if this is done, CRI-O will +# only add mounts it finds in this file. +# +#default_mounts_file = "" + +# Maximum number of processes allowed in a container. +pids_limit = 1024 + +# Maximum sized allowed for the container log file. Negative numbers indicate +# that no size limit is imposed. If it is positive, it must be >= 8192 to +# match/exceed conmon's read buffer. The file is truncated and re-opened so the +# limit is never exceeded. +log_size_max = -1 + +# Whether container output should be logged to journald in addition to the kuberentes log file +log_to_journald = false + +# Path to directory in which container exit files are written to by conmon. +container_exits_dir = "/var/run/crio/exits" + +# Path to directory for container attach sockets. +container_attach_socket_dir = "/var/run/crio" + +# The prefix to use for the source of the bind mounts. +bind_mount_prefix = "" + +# If set to true, all containers will run in read-only mode. +read_only = false + +# Changes the verbosity of the logs based on the level it is set to. Options +# are fatal, panic, error, warn, info, debug and trace. This option supports +# live configuration reload. +log_level = "info" + +# Filter the log messages by the provided regular expression. +# This option supports live configuration reload. +log_filter = "" + +# The UID mappings for the user namespace of each container. A range is +# specified in the form containerUID:HostUID:Size. Multiple ranges must be +# separated by comma. +uid_mappings = "" + +# The GID mappings for the user namespace of each container. A range is +# specified in the form containerGID:HostGID:Size. Multiple ranges must be +# separated by comma. +gid_mappings = "" + +# The minimal amount of time in seconds to wait before issuing a timeout +# regarding the proper termination of the container. The lowest possible +# value is 30s, whereas lower values are not considered by CRI-O. +ctr_stop_timeout = 30 + +# manage_ns_lifecycle determines whether we pin and remove namespaces +# and manage their lifecycle. +# This option is being deprecated, and will be unconditionally true in the future. +manage_ns_lifecycle = true + +# drop_infra_ctr determines whether CRI-O drops the infra container +# when a pod does not have a private PID namespace, and does not use +# a kernel separating runtime (like kata). +# It requires manage_ns_lifecycle to be true. +drop_infra_ctr = false + +# The directory where the state of the managed namespaces gets tracked. +# Only used when manage_ns_lifecycle is true. +namespaces_dir = "/var/run" + +# pinns_path is the path to find the pinns binary, which is needed to manage namespace lifecycle +pinns_path = "" + +# default_runtime is the _name_ of the OCI runtime to be used as the default. +# The name is matched against the runtimes map below. If this value is changed, +# the corresponding existing entry from the runtimes map below will be ignored. +default_runtime = "runc" + +# The "crio.runtime.runtimes" table defines a list of OCI compatible runtimes. +# The runtime to use is picked based on the runtime_handler provided by the CRI. +# If no runtime_handler is provided, the runtime will be picked based on the level +# of trust of the workload. Each entry in the table should follow the format: +# +#[crio.runtime.runtimes.runtime-handler] +# runtime_path = "/path/to/the/executable" +# runtime_type = "oci" +# runtime_root = "/path/to/the/root" +# privileged_without_host_devices = false +# allowed_annotations = [] +# Where: +# - runtime-handler: name used to identify the runtime +# - runtime_path (optional, string): absolute path to the runtime executable in +# the host filesystem. If omitted, the runtime-handler identifier should match +# the runtime executable name, and the runtime executable should be placed +# in $PATH. +# - runtime_type (optional, string): type of runtime, one of: "oci", "vm". If +# omitted, an "oci" runtime is assumed. +# - runtime_root (optional, string): root directory for storage of containers +# state. +# - privileged_without_host_devices (optional, bool): an option for restricting +# host devices from being passed to privileged containers. +# - allowed_annotations (optional, array of strings): an option for specifying +# a list of experimental annotations that this runtime handler is allowed to process. +# The currently recognized values are: +# "io.kubernetes.cri-o.userns-mode" for configuring a user namespace for the pod. +# "io.kubernetes.cri-o.Devices" for configuring devices for the pod. +# "io.kubernetes.cri-o.ShmSize" for configuring the size of /dev/shm. + + +[crio.runtime.runtimes.runc] +runtime_path = "" +runtime_type = "oci" +runtime_root = "/run/runc" + + + + +# crun is a fast and lightweight fully featured OCI runtime and C library for +# running containers +#[crio.runtime.runtimes.crun] + +# Kata Containers is an OCI runtime, where containers are run inside lightweight +# VMs. Kata provides additional isolation towards the host, minimizing the host attack +# surface and mitigating the consequences of containers breakout. + +# Kata Containers with the default configured VMM +#[crio.runtime.runtimes.kata-runtime] + +# Kata Containers with the QEMU VMM +#[crio.runtime.runtimes.kata-qemu] + +# Kata Containers with the Firecracker VMM +#[crio.runtime.runtimes.kata-fc] + +# The crio.image table contains settings pertaining to the management of OCI images. +# +# CRI-O reads its configured registries defaults from the system wide +# containers-registries.conf(5) located in /etc/containers/registries.conf. If +# you want to modify just CRI-O, you can change the registries configuration in +# this file. Otherwise, leave insecure_registries and registries commented out to +# use the system's defaults from /etc/containers/registries.conf. +[crio.image] + +# Default transport for pulling images from a remote container storage. +default_transport = "docker://" + +# The path to a file containing credentials necessary for pulling images from +# secure registries. The file is similar to that of /var/lib/kubelet/config.json +global_auth_file = "" + +# The image used to instantiate infra containers. +# This option supports live configuration reload. +pause_image = "k8s.gcr.io/pause:3.2" + +# The path to a file containing credentials specific for pulling the pause_image from +# above. The file is similar to that of /var/lib/kubelet/config.json +# This option supports live configuration reload. +pause_image_auth_file = "" + +# The command to run to have a container stay in the paused state. +# When explicitly set to "", it will fallback to the entrypoint and command +# specified in the pause image. When commented out, it will fallback to the +# default: "/pause". This option supports live configuration reload. +pause_command = "/pause" + +# Path to the file which decides what sort of policy we use when deciding +# whether or not to trust an image that we've pulled. It is not recommended that +# this option be used, as the default behavior of using the system-wide default +# policy (i.e., /etc/containers/policy.json) is most often preferred. Please +# refer to containers-policy.json(5) for more details. +signature_policy = "" + +# List of registries to skip TLS verification for pulling images. Please +# consider configuring the registries via /etc/containers/registries.conf before +# changing them here. +#insecure_registries = "[]" + +# Controls how image volumes are handled. The valid values are mkdir, bind and +# ignore; the latter will ignore volumes entirely. +image_volumes = "mkdir" + +# List of registries to be used when pulling an unqualified image (e.g., +# "alpine:latest"). By default, registries is set to "docker.io" for +# compatibility reasons. Depending on your workload and usecase you may add more +# registries (e.g., "quay.io", "registry.fedoraproject.org", +# "registry.opensuse.org", etc.). +#registries = [ +# ] + +# Temporary directory to use for storing big files +big_files_temporary_dir = "" + +# The crio.network table containers settings pertaining to the management of +# CNI plugins. +[crio.network] + +# The default CNI network name to be selected. If not set or "", then +# CRI-O will pick-up the first one found in network_dir. +# cni_default_network = "" + +# Path to the directory where CNI configuration files are located. +network_dir = "/etc/cni/net.d/" + +# Paths to directories where CNI plugin binaries are located. +plugin_dirs = [ + "/opt/cni/bin/", +] + +# A necessary configuration for Prometheus based metrics retrieval +[crio.metrics] + +# Globally enable or disable metrics support. +enable_metrics = false + +# The port on which the metrics server will listen. +metrics_port = 9090 + +# Local socket path to bind the metrics server to +metrics_socket = "" diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.service b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.service new file mode 100644 index 000000000000..30a794e597a3 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/crio.service @@ -0,0 +1,29 @@ +[Unit] +Description=Container Runtime Interface for OCI (CRI-O) +Documentation=https://github.com/cri-o/cri-o +Wants=network-online.target +After=network-online.target minikube-automount.service +Requires=minikube-automount.service +After=crio-wipe.service +Requires=crio-wipe.service + +[Service] +Type=notify +EnvironmentFile=-/etc/sysconfig/crio +EnvironmentFile=-/etc/sysconfig/crio.minikube +EnvironmentFile=/var/run/minikube/env +Environment=GOTRACEBACK=crash +ExecStart=/usr/bin/crio \ + $CRIO_OPTIONS \ + $CRIO_MINIKUBE_OPTIONS +ExecReload=/bin/kill -s HUP $MAINPID +TasksMax=8192 +LimitNOFILE=1048576 +LimitNPROC=1048576 +LimitCORE=infinity +OOMScoreAdjust=-999 +TimeoutStartSec=0 +Restart=on-abnormal + +[Install] +WantedBy=multi-user.target diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/policy.json b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/policy.json new file mode 100644 index 000000000000..9333053f93bf --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/policy.json @@ -0,0 +1,7 @@ +{ + "default": [ + { + "type": "insecureAcceptAnything" + } + ] +} diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/registries.conf b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/registries.conf new file mode 100644 index 000000000000..409f31d8969f --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/crio-bin/registries.conf @@ -0,0 +1,5 @@ +[registries.search] +registries = ['docker.io'] + +[registries.insecure] +registries = [] diff --git a/deploy/iso/minikube-iso/package/docker-bin/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/docker-bin/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/Config.in diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/daemon.json b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/daemon.json new file mode 100644 index 000000000000..46c2107f11ad --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/daemon.json @@ -0,0 +1,10 @@ +{ + "exec-opts": [ + "native.cgroupdriver=systemd" + ], + "log-driver": "json-file", + "log-opts": { + "max-size": "100m" + }, + "storage-driver": "overlay2" +} diff --git a/deploy/iso/minikube-iso/package/docker-bin/docker-bin.hash b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker-bin.hash similarity index 100% rename from deploy/iso/minikube-iso/package/docker-bin/docker-bin.hash rename to deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker-bin.hash diff --git a/deploy/iso/minikube-iso/package/docker-bin/docker-bin.mk b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker-bin.mk similarity index 96% rename from deploy/iso/minikube-iso/package/docker-bin/docker-bin.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker-bin.mk index ae2cb45a6b7c..f683d631d06c 100644 --- a/deploy/iso/minikube-iso/package/docker-bin/docker-bin.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker-bin.mk @@ -44,7 +44,7 @@ endef define DOCKER_BIN_INSTALL_INIT_SYSTEMD $(INSTALL) -D -m 644 \ - $(BR2_EXTERNAL)/package/docker-bin/docker.socket \ + $(DOCKER_BIN_PKGDIR)/docker.socket \ $(TARGET_DIR)/usr/lib/systemd/system/docker.socket $(INSTALL) -D -m 644 \ diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker.socket b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker.socket new file mode 100644 index 000000000000..7dd95098e4ad --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/docker.socket @@ -0,0 +1,12 @@ +[Unit] +Description=Docker Socket for the API +PartOf=docker.service + +[Socket] +ListenStream=/var/run/docker.sock +SocketMode=0660 +SocketUser=root +SocketGroup=docker + +[Install] +WantedBy=sockets.target diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/forward.conf b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/forward.conf new file mode 100644 index 000000000000..250ee89118fa --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/docker-bin/forward.conf @@ -0,0 +1,2 @@ +net.ipv4.ip_forward=1 + diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/70-hv_fcopy.rules b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/70-hv_fcopy.rules similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/70-hv_fcopy.rules rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/70-hv_fcopy.rules diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/70-hv_kvp.rules b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/70-hv_kvp.rules similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/70-hv_kvp.rules rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/70-hv_kvp.rules diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/70-hv_vss.rules b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/70-hv_vss.rules similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/70-hv_vss.rules rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/70-hv_vss.rules diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/Config.in index 834b31bdcb64..fc31001b0160 100644 --- a/deploy/iso/minikube-iso/package/hyperv-daemons/Config.in +++ b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/Config.in @@ -1,4 +1,4 @@ config BR2_PACKAGE_HYPERV_DAEMONS bool "hyperv-daemons" - default y depends on BR2_x86_64 + default y diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/hv_fcopy_daemon.service b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hv_fcopy_daemon.service similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/hv_fcopy_daemon.service rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hv_fcopy_daemon.service diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/hv_kvp_daemon.service b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hv_kvp_daemon.service similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/hv_kvp_daemon.service rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hv_kvp_daemon.service diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/hv_vss_daemon.service b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hv_vss_daemon.service similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/hv_vss_daemon.service rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hv_vss_daemon.service diff --git a/deploy/iso/minikube-iso/package/hyperv-daemons/hyperv-daemons.mk b/deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hyperv-daemons.mk similarity index 100% rename from deploy/iso/minikube-iso/package/hyperv-daemons/hyperv-daemons.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/hyperv-daemons/hyperv-daemons.mk diff --git a/deploy/iso/minikube-iso/package/podman/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/podman/Config.in similarity index 100% rename from deploy/iso/minikube-iso/package/podman/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/podman/Config.in diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/podman/override.conf b/deploy/iso/minikube-iso/arch/x86_64/package/podman/override.conf new file mode 100644 index 000000000000..b762370a4a61 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/podman/override.conf @@ -0,0 +1,4 @@ +[Socket] +SocketMode=0660 +SocketUser=root +SocketGroup=podman diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.conf b/deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.conf new file mode 100644 index 000000000000..8e31190ab857 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.conf @@ -0,0 +1 @@ +d /run/podman 0770 root podman diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.hash b/deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.hash new file mode 100644 index 000000000000..27cdae3dfce6 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.hash @@ -0,0 +1,6 @@ +sha256 a16846fe076aaf2c9ea2e854c3baba9fb838d916be7fb4b5be332e6c92d907d4 v1.9.3.tar.gz +sha256 5ebaa6e0dbd7fd1863f70d2bc71dc8a94e195c3339c17e3cac4560c9ec5747f8 v2.1.1.tar.gz +sha256 ec5473e51fa28f29af323473fc484f742dc7df23d06d8ba9f217f13382893a71 v2.2.0.tar.gz +sha256 3212bad60d945c1169b27da03959f36d92d1d8964645c701a5a82a89118e96d1 v2.2.1.tar.gz +sha256 5a0d42e03d15e32c5c54a147da5ef1b8928ec00982ac9e3f1edc82c5e614b6d2 v3.1.2.tar.gz +sha256 b0c4f9a11eb500b1d440d5e51a6c0c632aa4ac458e2dc0362f50f999eb7fbf31 v3.4.2.tar.gz diff --git a/deploy/iso/minikube-iso/package/podman/podman.mk b/deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.mk similarity index 100% rename from deploy/iso/minikube-iso/package/podman/podman.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/podman/podman.mk diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/Config.in new file mode 100644 index 000000000000..7f085bc80743 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_RUNC_MASTER + bool "runc-master" + depends on BR2_x86_64 + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS + depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_THREADS + help + runC is a CLI tool for spawning and running containers + according to the OCP specification. + + This is just a newer build of runc than the buildroot version. + + https://github.com/opencontainers/runc + +comment "runc needs a toolchain w/ threads" + depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS && \ + BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/runc-master.hash b/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/runc-master.hash new file mode 100644 index 000000000000..4d904c378250 --- /dev/null +++ b/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/runc-master.hash @@ -0,0 +1,15 @@ +# Locally computed +sha256 fc780966c4d70c275a87930e93cda4210e63a490eabfb0fa5f2fe70be6dcdc58 0fdc908bf1ee7b7da85f9e5adbd1e256060f2486.tar.gz +sha256 9318fa9de6e3b2c89760f08d73bf718c97c93d683611716e024d2f3283c96d90 c1e454b2a1bfb0f0ebd9e621a1433f98f9a8d4b0.tar.gz +sha256 a960decadf6bd5d3cee1ca7b94455d37cc921c964061428bd9f3dd17a13c8bb3 6635b4f0c6af3810594d2770f662f34ddc15b40d.tar.gz +sha256 ad41ae930059fef18de1926cd78e00474c89290248fecdcc0e431c8aefee1deb 0a012df867a2d525f62a146d8ebdf2e6ab8a5ad5.tar.gz +sha256 e52c5d7365b2b9048f977bac8f06bf626dccb4d816d0947ec8523f543272f4ff 2b18fe1d885ee5083ef9f0838fee39b62d653e30.tar.gz +sha256 257ac2c2bbc9770998f31b73f587718848ebb09465ce2cd20fbac198ebd5726e 425e105d5a03fabd737a126ad93d62a9eeede87f.tar.gz +sha256 4ffe8323397d85dda7d5875fa6bdaf3f8c93592c1947dfa24a034719dc6f728e d736ef14f0288d6993a1845745d6756cfc9ddd5a.tar.gz +sha256 defe87a5f15edc54288d3261f5be28219b9b9d904d98c6020eb2e45400a04fb2 dc9208a3303feef5b3839f4323d9beb36df0a9dd.tar.gz +sha256 bfcbbcb12664d5f8c1b794f37a457a8db53291c82be5a3157d8efb91aab193bf ff819c7e9184c13b7c2607fe6c30ae19403a7aff.tar.gz +sha256 144973344b73627b5f69aa88b9e6655d692447ec317a0d5fa9777496a8ac186e 12644e614e25b05da6fd08a38ffa0cfe1903fdec.tar.gz +sha256 821ff8629329b4b7e4ccf24b5bf369c9739887736be30ba06a0d8053eb0e0b23 b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7.tar.gz +sha256 50cc479cabf6e7edb9070a7c28b3460b0acc2a01650fc5934f5037cb96b9e2cf 4144b63817ebcc5b358fc2c8ef95f7cddd709aa7.tar.gz +sha256 1f47e3ff66cdcca1f890b15e74e884c4ff81d16d1044cc9900a1eb10cfb3d8e7 52b36a2dd837e8462de8e01458bf02cf9eea47dd.tar.gz +sha256 91525356b71fbf8e05deddc955d3f40e0d4aedcb15d26bdd2850a9986852ae5b f46b6ba2c9314cfc8caae24a32ec5fe9ef1059fe.tar.gz diff --git a/deploy/iso/minikube-iso/package/runc-master/runc-master.mk b/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/runc-master.mk similarity index 58% rename from deploy/iso/minikube-iso/package/runc-master/runc-master.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/runc-master/runc-master.mk index 9f52e8c8e942..8729a23eaecc 100644 --- a/deploy/iso/minikube-iso/package/runc-master/runc-master.mk +++ b/deploy/iso/minikube-iso/arch/x86_64/package/runc-master/runc-master.mk @@ -15,12 +15,12 @@ RUNC_MASTER_DEPENDENCIES = host-go RUNC_MASTER_GOPATH = $(@D)/_output RUNC_MASTER_MAKE_ENV = \ - $(GO_TARGET_ENV) \ - CGO_ENABLED=1 \ - GO111MODULE=off \ - GOPATH="$(RUNC_MASTER_GOPATH)" \ - GOBIN="$(RUNC_MASTER_GOPATH)/bin" \ - PATH=$(RUNC_MASTER_GOPATH)/bin:$(BR_PATH) + $(GO_TARGET_ENV) \ + CGO_ENABLED=1 \ + GO111MODULE=off \ + GOPATH="$(RUNC_MASTER_GOPATH)" \ + GOBIN="$(RUNC_MASTER_GOPATH)/bin" \ + PATH=$(RUNC_MASTER_GOPATH)/bin:$(BR_PATH) RUNC_MASTER_COMPILE_SRC = $(RUNC_MASTER_GOPATH)/src/github.com/opencontainers/runc @@ -30,16 +30,16 @@ RUNC_MASTER_DEPENDENCIES += libseccomp host-pkgconf endif define RUNC_MASTER_CONFIGURE_CMDS - mkdir -p $(RUNC_MASTER_GOPATH)/src/github.com/opencontainers - ln -s $(@D) $(RUNC_MASTER_GOPATH)/src/github.com/opencontainers/runc + mkdir -p $(RUNC_MASTER_GOPATH)/src/github.com/opencontainers + ln -s $(@D) $(RUNC_MASTER_GOPATH)/src/github.com/opencontainers/runc endef define RUNC_MASTER_BUILD_CMDS - PWD=$(RUNC_MASTER_COMPILE_SRC) $(RUNC_MASTER_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) BUILDTAGS="$(RUNC_MASTER_GOTAGS)" COMMIT_NO=$(RUNC_MASTER_VERSION) COMMIT=$(RUNC_MASTER_VERSION) PREFIX=/usr + PWD=$(RUNC_MASTER_COMPILE_SRC) $(RUNC_MASTER_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) BUILDTAGS="$(RUNC_MASTER_GOTAGS)" COMMIT_NO=$(RUNC_MASTER_VERSION) COMMIT=$(RUNC_MASTER_VERSION) PREFIX=/usr endef define RUNC_MASTER_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 0755 $(@D)/runc $(TARGET_DIR)/usr/bin/runc + $(INSTALL) -D -m 0755 $(@D)/runc $(TARGET_DIR)/usr/bin/runc endef $(eval $(generic-package)) diff --git a/deploy/iso/minikube-iso/package/vbox-guest/Config.in b/deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/Config.in similarity index 77% rename from deploy/iso/minikube-iso/package/vbox-guest/Config.in rename to deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/Config.in index 9b0a6ca2a7d1..2147deb04ac9 100644 --- a/deploy/iso/minikube-iso/package/vbox-guest/Config.in +++ b/deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/Config.in @@ -1,5 +1,5 @@ config BR2_PACKAGE_VBOX_GUEST bool "vbox-guest" - default y + depends on BR2_x86_64 depends on BR2_LINUX_KERNEL diff --git a/deploy/iso/minikube-iso/package/vbox-guest/vbox-guest.hash b/deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/vbox-guest.hash similarity index 100% rename from deploy/iso/minikube-iso/package/vbox-guest/vbox-guest.hash rename to deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/vbox-guest.hash diff --git a/deploy/iso/minikube-iso/package/vbox-guest/vbox-guest.mk b/deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/vbox-guest.mk similarity index 100% rename from deploy/iso/minikube-iso/package/vbox-guest/vbox-guest.mk rename to deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/vbox-guest.mk diff --git a/deploy/iso/minikube-iso/package/vbox-guest/vboxservice.service b/deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/vboxservice.service similarity index 100% rename from deploy/iso/minikube-iso/package/vbox-guest/vboxservice.service rename to deploy/iso/minikube-iso/arch/x86_64/package/vbox-guest/vboxservice.service diff --git a/deploy/iso/minikube-iso/board/iso/x86_64/grub.cfg b/deploy/iso/minikube-iso/board/iso/x86_64/grub.cfg deleted file mode 100644 index ba43e7ca236f..000000000000 --- a/deploy/iso/minikube-iso/board/iso/x86_64/grub.cfg +++ /dev/null @@ -1,7 +0,0 @@ -set default="0" -set timeout="5" - -menuentry "Buildroot" { - linux /boot/vmlinuz console=tty0 rw - initrd /boot/initrd.img -} diff --git a/deploy/iso/minikube-iso/board/iso/x86_64/genimage.cfg b/deploy/iso/minikube-iso/board/minikube/aarch64/genimage.cfg similarity index 100% rename from deploy/iso/minikube-iso/board/iso/x86_64/genimage.cfg rename to deploy/iso/minikube-iso/board/minikube/aarch64/genimage.cfg diff --git a/deploy/iso/minikube-iso/board/iso/x86_64/grub-stub.cfg b/deploy/iso/minikube-iso/board/minikube/aarch64/grub-stub.cfg similarity index 76% rename from deploy/iso/minikube-iso/board/iso/x86_64/grub-stub.cfg rename to deploy/iso/minikube-iso/board/minikube/aarch64/grub-stub.cfg index 92730a9730ed..e0b01cf7f51a 100644 --- a/deploy/iso/minikube-iso/board/iso/x86_64/grub-stub.cfg +++ b/deploy/iso/minikube-iso/board/minikube/aarch64/grub-stub.cfg @@ -2,3 +2,5 @@ insmod iso9660 insmod udf search --no-floppy --label EFIBOOTISO --set root + +# used to find the cd diff --git a/deploy/iso/minikube-iso/board/minikube/aarch64/grub.cfg b/deploy/iso/minikube-iso/board/minikube/aarch64/grub.cfg new file mode 100644 index 000000000000..e06366b9ab2c --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/aarch64/grub.cfg @@ -0,0 +1,7 @@ +set default="0" +set timeout="5" + +menuentry "Buildroot" { + linux /boot/bzimage console=ttyAMA0 # kernel + initrd /boot/initrd # rootfs +} diff --git a/deploy/iso/minikube-iso/board/minikube/aarch64/linux_aarch64_defconfig b/deploy/iso/minikube-iso/board/minikube/aarch64/linux_aarch64_defconfig new file mode 100644 index 000000000000..2d0a35299955 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/aarch64/linux_aarch64_defconfig @@ -0,0 +1,1217 @@ +CONFIG_SYSVIPC=y +CONFIG_POSIX_MQUEUE=y +CONFIG_AUDIT=y +CONFIG_NO_HZ_IDLE=y +CONFIG_HIGH_RES_TIMERS=y +CONFIG_PREEMPT=y +CONFIG_IRQ_TIME_ACCOUNTING=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_IKCONFIG=y +CONFIG_IKCONFIG_PROC=y +CONFIG_NUMA_BALANCING=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +CONFIG_BLK_CGROUP=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CPUSETS=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_CGROUP_PERF=y +CONFIG_USER_NS=y +CONFIG_SCHED_AUTOGROUP=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_KALLSYMS_ALL=y +# CONFIG_COMPAT_BRK is not set +CONFIG_PROFILING=y +CONFIG_ARCH_ACTIONS=y +CONFIG_ARCH_AGILEX=y +CONFIG_ARCH_SUNXI=y +CONFIG_ARCH_ALPINE=y +CONFIG_ARCH_BCM2835=y +CONFIG_ARCH_BCM_IPROC=y +CONFIG_ARCH_BERLIN=y +CONFIG_ARCH_BRCMSTB=y +CONFIG_ARCH_EXYNOS=y +CONFIG_ARCH_K3=y +CONFIG_ARCH_LAYERSCAPE=y +CONFIG_ARCH_LG1K=y +CONFIG_ARCH_HISI=y +CONFIG_ARCH_MEDIATEK=y +CONFIG_ARCH_MESON=y +CONFIG_ARCH_MVEBU=y +CONFIG_ARCH_MXC=y +CONFIG_ARCH_QCOM=y +CONFIG_ARCH_RENESAS=y +CONFIG_ARCH_ROCKCHIP=y +CONFIG_ARCH_S32=y +CONFIG_ARCH_SEATTLE=y +CONFIG_ARCH_STRATIX10=y +CONFIG_ARCH_SYNQUACER=y +CONFIG_ARCH_TEGRA=y +CONFIG_ARCH_SPRD=y +CONFIG_ARCH_THUNDER=y +CONFIG_ARCH_THUNDER2=y +CONFIG_ARCH_UNIPHIER=y +CONFIG_ARCH_VEXPRESS=y +CONFIG_ARCH_VISCONTI=y +CONFIG_ARCH_XGENE=y +CONFIG_ARCH_ZX=y +CONFIG_ARCH_ZYNQMP=y +CONFIG_ARM64_VA_BITS_48=y +CONFIG_SCHED_MC=y +CONFIG_SCHED_SMT=y +CONFIG_NUMA=y +CONFIG_SECCOMP=y +CONFIG_KEXEC=y +CONFIG_KEXEC_FILE=y +CONFIG_CRASH_DUMP=y +CONFIG_XEN=y +CONFIG_COMPAT=y +CONFIG_RANDOMIZE_BASE=y +CONFIG_HIBERNATION=y +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_ENERGY_MODEL=y +CONFIG_ARM_CPUIDLE=y +CONFIG_ARM_PSCI_CPUIDLE=y +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=m +CONFIG_CPU_FREQ_GOV_USERSPACE=y +CONFIG_CPU_FREQ_GOV_ONDEMAND=y +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y +CONFIG_CPUFREQ_DT=y +CONFIG_ACPI_CPPC_CPUFREQ=m +CONFIG_ARM_ALLWINNER_SUN50I_CPUFREQ_NVMEM=m +CONFIG_ARM_ARMADA_37XX_CPUFREQ=y +CONFIG_ARM_SCPI_CPUFREQ=y +CONFIG_ARM_IMX_CPUFREQ_DT=m +CONFIG_ARM_QCOM_CPUFREQ_NVMEM=y +CONFIG_ARM_QCOM_CPUFREQ_HW=y +CONFIG_ARM_RASPBERRYPI_CPUFREQ=m +CONFIG_ARM_TEGRA186_CPUFREQ=y +CONFIG_QORIQ_CPUFREQ=y +CONFIG_ARM_SCPI_PROTOCOL=y +CONFIG_RASPBERRYPI_FIRMWARE=y +CONFIG_INTEL_STRATIX10_SERVICE=y +CONFIG_INTEL_STRATIX10_RSU=m +CONFIG_EFI_CAPSULE_LOADER=y +CONFIG_IMX_SCU=y +CONFIG_IMX_SCU_PD=y +CONFIG_ACPI=y +CONFIG_ACPI_APEI=y +CONFIG_ACPI_APEI_GHES=y +CONFIG_ACPI_APEI_PCIEAER=y +CONFIG_ACPI_APEI_MEMORY_FAILURE=y +CONFIG_ACPI_APEI_EINJ=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=y +CONFIG_ARM64_CRYPTO=y +CONFIG_CRYPTO_SHA1_ARM64_CE=y +CONFIG_CRYPTO_SHA2_ARM64_CE=y +CONFIG_CRYPTO_SHA512_ARM64_CE=m +CONFIG_CRYPTO_SHA3_ARM64=m +CONFIG_CRYPTO_SM3_ARM64_CE=m +CONFIG_CRYPTO_GHASH_ARM64_CE=y +CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m +CONFIG_CRYPTO_AES_ARM64_CE_CCM=y +CONFIG_CRYPTO_AES_ARM64_CE_BLK=y +CONFIG_CRYPTO_CHACHA20_NEON=m +CONFIG_CRYPTO_AES_ARM64_BS=m +CONFIG_JUMP_LABEL=y +CONFIG_MODULES=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODVERSIONS=y +# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set +CONFIG_KSM=y +CONFIG_MEMORY_FAILURE=y +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_NET=y +CONFIG_PACKET=y +CONFIG_UNIX=y +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_PNP=y +CONFIG_IP_PNP_DHCP=y +CONFIG_IP_PNP_BOOTP=y +CONFIG_IPV6=m +CONFIG_IP_SET=y +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_IPMAC=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +CONFIG_IP_VS_IPV6=y +CONFIG_IP_VS_DEBUG=y +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m +CONFIG_IP_VS_NFCT=y +CONFIG_NF_LOG_ARP=m +CONFIG_IP_NF_IPTABLES=y +CONFIG_IP_NF_MATCH_RPFILTER=y +CONFIG_IP_NF_FILTER=y +CONFIG_IP_NF_TARGET_REJECT=y +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=y +CONFIG_IP_NF_RAW=m +CONFIG_IP6_NF_IPTABLES=y +CONFIG_IP6_NF_MATCH_IPV6HEADER=y +CONFIG_IP6_NF_FILTER=y +CONFIG_IP6_NF_TARGET_REJECT=y +CONFIG_IP6_NF_MANGLE=y +CONFIG_NETFILTER=y +CONFIG_NETFILTER_NETLINK_ACCT=y +CONFIG_NETFILTER_NETLINK_QUEUE=y +CONFIG_NF_CONNTRACK=m +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +CONFIG_NETFILTER_XT_SET=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +CONFIG_NETFILTER_XT_TARGET_NOTRACK=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_REDIRECT=y +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_MANGLE=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_NET_DSA=m +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +CONFIG_NET_SCHED=y +CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_ETF=m +CONFIG_NET_SCH_TAPRIO=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_GACT=m +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_GATE=m +CONFIG_QRTR=m +CONFIG_QRTR_SMD=m +CONFIG_QRTR_TUN=m +CONFIG_BPF_JIT=y +CONFIG_CAN=m +CONFIG_CAN_RCAR=m +CONFIG_CAN_RCAR_CANFD=m +CONFIG_CAN_FLEXCAN=m +CONFIG_BT=m +CONFIG_BT_HIDP=m +# CONFIG_BT_HS is not set +# CONFIG_BT_LE is not set +CONFIG_BT_LEDS=y +# CONFIG_BT_DEBUGFS is not set +CONFIG_BT_HCIBTUSB=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_BCM=y +CONFIG_BT_HCIUART_QCA=y +CONFIG_CFG80211=m +CONFIG_MAC80211=m +CONFIG_MAC80211_LEDS=y +CONFIG_RFKILL=m +CONFIG_NET_9P=y +CONFIG_NET_9P_VIRTIO=y +CONFIG_NFC=m +CONFIG_NFC_NCI=m +CONFIG_NFC_S3FWRN5_I2C=m +CONFIG_PCI=y +CONFIG_PCIEPORTBUS=y +CONFIG_PCI_IOV=y +CONFIG_PCI_PASID=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_PCI_AARDVARK=y +CONFIG_PCI_TEGRA=y +CONFIG_PCIE_RCAR_HOST=y +CONFIG_PCIE_RCAR_EP=y +CONFIG_PCI_HOST_GENERIC=y +CONFIG_PCI_XGENE=y +CONFIG_PCIE_ALTERA=y +CONFIG_PCIE_ALTERA_MSI=y +CONFIG_PCI_HOST_THUNDER_PEM=y +CONFIG_PCI_HOST_THUNDER_ECAM=y +CONFIG_PCIE_ROCKCHIP_HOST=m +CONFIG_PCIE_BRCMSTB=m +CONFIG_PCI_LAYERSCAPE=y +CONFIG_PCIE_LAYERSCAPE_GEN4=y +CONFIG_PCI_HISI=y +CONFIG_PCIE_QCOM=y +CONFIG_PCIE_ARMADA_8K=y +CONFIG_PCIE_KIRIN=y +CONFIG_PCIE_HISI_STB=y +CONFIG_PCIE_TEGRA194_HOST=m +CONFIG_PCI_ENDPOINT=y +CONFIG_PCI_ENDPOINT_CONFIGFS=y +CONFIG_PCI_EPF_TEST=m +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y +CONFIG_HISILICON_LPC=y +CONFIG_SIMPLE_PM_BUS=y +CONFIG_FSL_MC_BUS=y +CONFIG_TEGRA_ACONNECT=m +CONFIG_MTD=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CFI=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_INTELEXT=y +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_STAA=y +CONFIG_MTD_PHYSMAP=y +CONFIG_MTD_PHYSMAP_OF=y +CONFIG_MTD_DATAFLASH=y +CONFIG_MTD_SST25L=y +CONFIG_MTD_RAW_NAND=y +CONFIG_MTD_NAND_DENALI_DT=y +CONFIG_MTD_NAND_MARVELL=y +CONFIG_MTD_NAND_FSL_IFC=y +CONFIG_MTD_NAND_QCOM=y +CONFIG_MTD_SPI_NOR=y +CONFIG_SPI_CADENCE_QUADSPI=y +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_NBD=m +CONFIG_VIRTIO_BLK=y +CONFIG_BLK_DEV_NVME=m +CONFIG_SRAM=y +CONFIG_PCI_ENDPOINT_TEST=m +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_AT25=m +CONFIG_UACCE=m +# CONFIG_SCSI_PROC_FS is not set +CONFIG_BLK_DEV_SD=y +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_HISI_SAS=y +CONFIG_SCSI_HISI_SAS_PCI=y +CONFIG_MEGARAID_SAS=y +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_UFSHCD=y +CONFIG_SCSI_UFSHCD_PLATFORM=y +CONFIG_SCSI_UFS_QCOM=m +CONFIG_SCSI_UFS_HISI=y +CONFIG_ATA=y +CONFIG_SATA_AHCI=y +CONFIG_SATA_AHCI_PLATFORM=y +CONFIG_AHCI_CEVA=y +CONFIG_AHCI_MVEBU=y +CONFIG_AHCI_XGENE=y +CONFIG_AHCI_QORIQ=y +CONFIG_SATA_SIL24=y +CONFIG_SATA_RCAR=y +CONFIG_PATA_PLATFORM=y +CONFIG_PATA_OF_PLATFORM=y +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_BLK_DEV_DM=m +CONFIG_DM_MIRROR=m +CONFIG_DM_ZERO=m +CONFIG_NETDEVICES=y +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_TUN=y +CONFIG_VETH=m +CONFIG_VIRTIO_NET=y +CONFIG_NET_DSA_MSCC_FELIX=m +CONFIG_AMD_XGBE=y +CONFIG_NET_XGENE=y +CONFIG_ATL1C=m +CONFIG_BCMGENET=m +CONFIG_BNX2X=m +CONFIG_MACB=y +CONFIG_THUNDER_NIC_PF=y +CONFIG_FEC=y +CONFIG_FSL_FMAN=y +CONFIG_FSL_DPAA_ETH=y +CONFIG_FSL_DPAA2_ETH=y +CONFIG_FSL_ENETC=y +CONFIG_FSL_ENETC_VF=y +CONFIG_FSL_ENETC_QOS=y +CONFIG_HIX5HD2_GMAC=y +CONFIG_HNS_DSAF=y +CONFIG_HNS_ENET=y +CONFIG_HNS3=y +CONFIG_HNS3_HCLGE=y +CONFIG_HNS3_ENET=y +CONFIG_E1000=y +CONFIG_E1000E=y +CONFIG_IGB=y +CONFIG_IGBVF=y +CONFIG_MVNETA=y +CONFIG_MVPP2=y +CONFIG_SKY2=y +CONFIG_MLX4_EN=m +CONFIG_MLX5_CORE=m +CONFIG_MLX5_CORE_EN=y +CONFIG_QCOM_EMAC=m +CONFIG_RMNET=m +CONFIG_SH_ETH=y +CONFIG_RAVB=y +CONFIG_SMC91X=y +CONFIG_SMSC911X=y +CONFIG_SNI_AVE=y +CONFIG_SNI_NETSEC=y +CONFIG_STMMAC_ETH=m +CONFIG_TI_K3_AM65_CPSW_NUSS=y +CONFIG_QCOM_IPA=m +CONFIG_MDIO_BUS_MUX_MMIOREG=y +CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y +CONFIG_AQUANTIA_PHY=y +CONFIG_MARVELL_PHY=m +CONFIG_MARVELL_10G_PHY=m +CONFIG_MESON_GXL_PHY=m +CONFIG_MICREL_PHY=y +CONFIG_MICROSEMI_PHY=y +CONFIG_AT803X_PHY=y +CONFIG_REALTEK_PHY=m +CONFIG_ROCKCHIP_PHY=y +CONFIG_VITESSE_PHY=y +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_LAN78XX=m +CONFIG_USB_USBNET=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9800=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_ATH10K=m +CONFIG_ATH10K_PCI=m +CONFIG_ATH10K_SNOC=m +CONFIG_BRCMFMAC=m +CONFIG_MWIFIEX=m +CONFIG_MWIFIEX_PCIE=m +CONFIG_WL18XX=m +CONFIG_WLCORE_SDIO=m +CONFIG_INPUT_EVDEV=y +CONFIG_KEYBOARD_ADC=m +CONFIG_KEYBOARD_GPIO=y +CONFIG_KEYBOARD_SNVS_PWRKEY=m +CONFIG_KEYBOARD_IMX_SC_KEY=m +CONFIG_KEYBOARD_CROS_EC=y +CONFIG_INPUT_TOUCHSCREEN=y +CONFIG_TOUCHSCREEN_ATMEL_MXT=m +CONFIG_INPUT_MISC=y +CONFIG_INPUT_PM8941_PWRKEY=y +CONFIG_INPUT_PM8XXX_VIBRATOR=m +CONFIG_INPUT_HISI_POWERKEY=y +# CONFIG_SERIO_SERPORT is not set +CONFIG_SERIO_AMBAKMI=y +CONFIG_LEGACY_PTY_COUNT=16 +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_EXTENDED=y +CONFIG_SERIAL_8250_SHARE_IRQ=y +CONFIG_SERIAL_8250_BCM2835AUX=y +CONFIG_SERIAL_8250_DW=y +CONFIG_SERIAL_8250_OMAP=y +CONFIG_SERIAL_8250_MT6577=y +CONFIG_SERIAL_8250_UNIPHIER=y +CONFIG_SERIAL_OF_PLATFORM=y +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +CONFIG_SERIAL_MESON=y +CONFIG_SERIAL_MESON_CONSOLE=y +CONFIG_SERIAL_SAMSUNG=y +CONFIG_SERIAL_SAMSUNG_CONSOLE=y +CONFIG_SERIAL_TEGRA=y +CONFIG_SERIAL_TEGRA_TCU=y +CONFIG_SERIAL_IMX=y +CONFIG_SERIAL_IMX_CONSOLE=y +CONFIG_SERIAL_SH_SCI=y +CONFIG_SERIAL_MSM=y +CONFIG_SERIAL_MSM_CONSOLE=y +CONFIG_SERIAL_QCOM_GENI=y +CONFIG_SERIAL_QCOM_GENI_CONSOLE=y +CONFIG_SERIAL_XILINX_PS_UART=y +CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y +CONFIG_SERIAL_FSL_LPUART=y +CONFIG_SERIAL_FSL_LPUART_CONSOLE=y +CONFIG_SERIAL_FSL_LINFLEXUART=y +CONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=y +CONFIG_SERIAL_MVEBU_UART=y +CONFIG_SERIAL_OWL=y +CONFIG_SERIAL_DEV_BUS=y +CONFIG_VIRTIO_CONSOLE=y +CONFIG_IPMI_HANDLER=m +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_SI=m +CONFIG_TCG_TPM=y +CONFIG_TCG_TIS_I2C_INFINEON=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_MUX=y +CONFIG_I2C_MUX_PCA954x=y +CONFIG_I2C_BCM2835=m +CONFIG_I2C_DESIGNWARE_PLATFORM=y +CONFIG_I2C_GPIO=m +CONFIG_I2C_IMX=y +CONFIG_I2C_IMX_LPI2C=y +CONFIG_I2C_MESON=y +CONFIG_I2C_MV64XXX=y +CONFIG_I2C_OWL=y +CONFIG_I2C_PXA=y +CONFIG_I2C_QCOM_CCI=m +CONFIG_I2C_QCOM_GENI=m +CONFIG_I2C_QUP=y +CONFIG_I2C_RK3X=y +CONFIG_I2C_SH_MOBILE=y +CONFIG_I2C_TEGRA=y +CONFIG_I2C_UNIPHIER_F=y +CONFIG_I2C_RCAR=y +CONFIG_I2C_CROS_EC_TUNNEL=y +CONFIG_SPI=y +CONFIG_SPI_ARMADA_3700=y +CONFIG_SPI_BCM2835=m +CONFIG_SPI_BCM2835AUX=m +CONFIG_SPI_FSL_LPSPI=y +CONFIG_SPI_FSL_QUADSPI=y +CONFIG_SPI_NXP_FLEXSPI=y +CONFIG_SPI_IMX=m +CONFIG_SPI_FSL_DSPI=y +CONFIG_SPI_MESON_SPICC=m +CONFIG_SPI_MESON_SPIFC=m +CONFIG_SPI_ORION=y +CONFIG_SPI_PL022=y +CONFIG_SPI_ROCKCHIP=y +CONFIG_SPI_RPCIF=m +CONFIG_SPI_QCOM_QSPI=m +CONFIG_SPI_QUP=y +CONFIG_SPI_QCOM_GENI=m +CONFIG_SPI_S3C64XX=y +CONFIG_SPI_SH_MSIOF=m +CONFIG_SPI_SUN6I=y +CONFIG_SPI_SPIDEV=m +CONFIG_SPMI=y +CONFIG_PINCTRL_SINGLE=y +CONFIG_PINCTRL_MAX77620=y +CONFIG_PINCTRL_OWL=y +CONFIG_PINCTRL_S700=y +CONFIG_PINCTRL_S900=y +CONFIG_PINCTRL_IMX8MM=y +CONFIG_PINCTRL_IMX8MN=y +CONFIG_PINCTRL_IMX8MP=y +CONFIG_PINCTRL_IMX8MQ=y +CONFIG_PINCTRL_IMX8QXP=y +CONFIG_PINCTRL_IMX8DXL=y +CONFIG_PINCTRL_IPQ8074=y +CONFIG_PINCTRL_IPQ6018=y +CONFIG_PINCTRL_MSM8916=y +CONFIG_PINCTRL_MSM8994=y +CONFIG_PINCTRL_MSM8996=y +CONFIG_PINCTRL_MSM8998=y +CONFIG_PINCTRL_QCS404=y +CONFIG_PINCTRL_QDF2XXX=y +CONFIG_PINCTRL_QCOM_SPMI_PMIC=y +CONFIG_PINCTRL_SC7180=y +CONFIG_PINCTRL_SDM845=y +CONFIG_PINCTRL_SM8150=y +CONFIG_PINCTRL_SM8250=y +CONFIG_GPIO_ALTERA=m +CONFIG_GPIO_DWAPB=y +CONFIG_GPIO_MB86S7X=y +CONFIG_GPIO_MPC8XXX=y +CONFIG_GPIO_MXC=y +CONFIG_GPIO_PL061=y +CONFIG_GPIO_RCAR=y +CONFIG_GPIO_UNIPHIER=y +CONFIG_GPIO_WCD934X=m +CONFIG_GPIO_XGENE=y +CONFIG_GPIO_XGENE_SB=y +CONFIG_GPIO_MAX732X=y +CONFIG_GPIO_PCA953X=y +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_BD9571MWV=m +CONFIG_GPIO_MAX77620=y +CONFIG_GPIO_SL28CPLD=m +CONFIG_POWER_AVS=y +CONFIG_QCOM_CPR=y +CONFIG_ROCKCHIP_IODOMAIN=y +CONFIG_POWER_RESET_MSM=y +CONFIG_POWER_RESET_XGENE=y +CONFIG_POWER_RESET_SYSCON=y +CONFIG_SYSCON_REBOOT_MODE=y +CONFIG_BATTERY_SBS=m +CONFIG_BATTERY_BQ27XXX=y +CONFIG_SENSORS_ARM_SCPI=y +CONFIG_SENSORS_LM90=m +CONFIG_SENSORS_PWM_FAN=m +CONFIG_SENSORS_RASPBERRYPI_HWMON=m +CONFIG_SENSORS_SL28CPLD=m +CONFIG_SENSORS_INA2XX=m +CONFIG_SENSORS_INA3221=m +CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y +CONFIG_CPU_THERMAL=y +CONFIG_THERMAL_EMULATION=y +CONFIG_QORIQ_THERMAL=m +CONFIG_SUN8I_THERMAL=y +CONFIG_IMX_SC_THERMAL=m +CONFIG_IMX8MM_THERMAL=m +CONFIG_ROCKCHIP_THERMAL=m +CONFIG_RCAR_THERMAL=y +CONFIG_RCAR_GEN3_THERMAL=y +CONFIG_ARMADA_THERMAL=y +CONFIG_BCM2711_THERMAL=m +CONFIG_BCM2835_THERMAL=m +CONFIG_BRCMSTB_THERMAL=m +CONFIG_EXYNOS_THERMAL=y +CONFIG_TEGRA_BPMP_THERMAL=m +CONFIG_QCOM_TSENS=y +CONFIG_QCOM_SPMI_TEMP_ALARM=m +CONFIG_UNIPHIER_THERMAL=y +CONFIG_WATCHDOG=y +CONFIG_SL28CPLD_WATCHDOG=m +CONFIG_ARM_SP805_WATCHDOG=y +CONFIG_ARM_SBSA_WATCHDOG=y +CONFIG_ARM_SMC_WATCHDOG=y +CONFIG_S3C2410_WATCHDOG=y +CONFIG_DW_WATCHDOG=y +CONFIG_SUNXI_WATCHDOG=m +CONFIG_IMX2_WDT=y +CONFIG_IMX_SC_WDT=m +CONFIG_QCOM_WDT=m +CONFIG_MESON_GXBB_WATCHDOG=m +CONFIG_MESON_WATCHDOG=m +CONFIG_RENESAS_WDT=y +CONFIG_UNIPHIER_WATCHDOG=y +CONFIG_BCM2835_WDT=y +CONFIG_MFD_ALTERA_SYSMGR=y +CONFIG_MFD_BD9571MWV=y +CONFIG_MFD_AXP20X_I2C=y +CONFIG_MFD_AXP20X_RSB=y +CONFIG_MFD_EXYNOS_LPASS=m +CONFIG_MFD_HI6421_PMIC=y +CONFIG_MFD_HI655X_PMIC=y +CONFIG_MFD_MAX77620=y +CONFIG_MFD_SPMI_PMIC=y +CONFIG_MFD_RK808=y +CONFIG_MFD_SEC_CORE=y +CONFIG_MFD_SL28CPLD=y +CONFIG_MFD_ROHM_BD718XX=y +CONFIG_MFD_WCD934X=m +CONFIG_REGULATOR_FIXED_VOLTAGE=y +CONFIG_REGULATOR_AXP20X=y +CONFIG_REGULATOR_BD718XX=y +CONFIG_REGULATOR_BD9571MWV=y +CONFIG_REGULATOR_FAN53555=y +CONFIG_REGULATOR_GPIO=y +CONFIG_REGULATOR_HI6421V530=y +CONFIG_REGULATOR_HI655X=y +CONFIG_REGULATOR_MAX77620=y +CONFIG_REGULATOR_MAX8973=y +CONFIG_REGULATOR_PCA9450=y +CONFIG_REGULATOR_PFUZE100=y +CONFIG_REGULATOR_PWM=y +CONFIG_REGULATOR_QCOM_RPMH=y +CONFIG_REGULATOR_QCOM_SMD_RPM=y +CONFIG_REGULATOR_QCOM_SPMI=y +CONFIG_REGULATOR_RK808=y +CONFIG_REGULATOR_S2MPS11=y +CONFIG_REGULATOR_VCTRL=m +CONFIG_RC_CORE=m +CONFIG_RC_DECODERS=y +CONFIG_RC_DEVICES=y +CONFIG_IR_MESON=m +CONFIG_IR_SUNXI=m +CONFIG_MEDIA_SUPPORT=m +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_SDR_SUPPORT=y +CONFIG_MEDIA_CONTROLLER=y +CONFIG_VIDEO_V4L2_SUBDEV_API=y +CONFIG_MEDIA_PLATFORM_SUPPORT=y +# CONFIG_DVB_NET is not set +CONFIG_MEDIA_USB_SUPPORT=y +CONFIG_USB_VIDEO_CLASS=m +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_VIDEO_RCAR_CSI2=m +CONFIG_VIDEO_RCAR_VIN=m +CONFIG_VIDEO_SUN6I_CSI=m +CONFIG_V4L_MEM2MEM_DRIVERS=y +CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m +CONFIG_VIDEO_SAMSUNG_S5P_MFC=m +CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m +CONFIG_VIDEO_RENESAS_FDP1=m +CONFIG_VIDEO_RENESAS_FCP=m +CONFIG_VIDEO_RENESAS_VSP1=m +CONFIG_SDR_PLATFORM_DRIVERS=y +CONFIG_VIDEO_RCAR_DRIF=m +CONFIG_VIDEO_IMX219=m +CONFIG_VIDEO_OV5645=m +CONFIG_VIDEO_QCOM_CAMSS=m +CONFIG_DRM=m +CONFIG_DRM_I2C_NXP_TDA998X=m +CONFIG_DRM_MALI_DISPLAY=m +CONFIG_DRM_NOUVEAU=m +CONFIG_DRM_EXYNOS=m +CONFIG_DRM_EXYNOS5433_DECON=y +CONFIG_DRM_EXYNOS7_DECON=y +CONFIG_DRM_EXYNOS_DSI=y +# CONFIG_DRM_EXYNOS_DP is not set +CONFIG_DRM_EXYNOS_HDMI=y +CONFIG_DRM_EXYNOS_MIC=y +CONFIG_DRM_ROCKCHIP=m +CONFIG_ROCKCHIP_ANALOGIX_DP=y +CONFIG_ROCKCHIP_CDN_DP=y +CONFIG_ROCKCHIP_DW_HDMI=y +CONFIG_ROCKCHIP_DW_MIPI_DSI=y +CONFIG_ROCKCHIP_INNO_HDMI=y +CONFIG_DRM_RCAR_DU=m +CONFIG_DRM_RCAR_DW_HDMI=m +CONFIG_DRM_SUN4I=m +CONFIG_DRM_SUN6I_DSI=m +CONFIG_DRM_SUN8I_DW_HDMI=m +CONFIG_DRM_SUN8I_MIXER=m +CONFIG_DRM_MSM=m +CONFIG_DRM_TEGRA=m +CONFIG_DRM_PANEL_LVDS=m +CONFIG_DRM_PANEL_SIMPLE=m +CONFIG_DRM_PANEL_RAYDIUM_RM67191=m +CONFIG_DRM_PANEL_SITRONIX_ST7703=m +CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA=m +CONFIG_DRM_DISPLAY_CONNECTOR=m +CONFIG_DRM_NWL_MIPI_DSI=m +CONFIG_DRM_LONTIUM_LT9611=m +CONFIG_DRM_SII902X=m +CONFIG_DRM_SIMPLE_BRIDGE=m +CONFIG_DRM_THINE_THC63LVD1024=m +CONFIG_DRM_TI_SN65DSI86=m +CONFIG_DRM_I2C_ADV7511=m +CONFIG_DRM_I2C_ADV7511_AUDIO=y +CONFIG_DRM_DW_HDMI_AHB_AUDIO=m +CONFIG_DRM_DW_HDMI_CEC=m +CONFIG_DRM_VC4=m +CONFIG_DRM_ETNAVIV=m +CONFIG_DRM_HISI_HIBMC=m +CONFIG_DRM_HISI_KIRIN=m +CONFIG_DRM_MXSFB=m +CONFIG_DRM_MESON=m +CONFIG_DRM_PL111=m +CONFIG_DRM_LIMA=m +CONFIG_DRM_PANFROST=m +CONFIG_FB=y +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_EFI=y +CONFIG_BACKLIGHT_GENERIC=m +CONFIG_BACKLIGHT_PWM=m +CONFIG_BACKLIGHT_LP855X=m +CONFIG_LOGO=y +# CONFIG_LOGO_LINUX_MONO is not set +# CONFIG_LOGO_LINUX_VGA16 is not set +CONFIG_SOUND=y +CONFIG_SND=y +CONFIG_SND_HDA_TEGRA=m +CONFIG_SND_HDA_CODEC_HDMI=m +CONFIG_SND_SOC=y +CONFIG_SND_BCM2835_SOC_I2S=m +CONFIG_SND_SOC_FSL_SAI=m +CONFIG_SND_MESON_AXG_SOUND_CARD=m +CONFIG_SND_MESON_GX_SOUND_CARD=m +CONFIG_SND_SOC_QCOM=m +CONFIG_SND_SOC_APQ8016_SBC=m +CONFIG_SND_SOC_MSM8996=m +CONFIG_SND_SOC_SDM845=m +CONFIG_SND_SOC_ROCKCHIP=m +CONFIG_SND_SOC_ROCKCHIP_SPDIF=m +CONFIG_SND_SOC_ROCKCHIP_RT5645=m +CONFIG_SND_SOC_RK3399_GRU_SOUND=m +CONFIG_SND_SOC_SAMSUNG=y +CONFIG_SND_SOC_RCAR=m +CONFIG_SND_SUN4I_SPDIF=m +CONFIG_SND_SOC_TEGRA=m +CONFIG_SND_SOC_TEGRA210_AHUB=m +CONFIG_SND_SOC_TEGRA210_DMIC=m +CONFIG_SND_SOC_TEGRA210_I2S=m +CONFIG_SND_SOC_TEGRA186_DSPK=m +CONFIG_SND_SOC_TEGRA210_ADMAIF=m +CONFIG_SND_SOC_AK4613=m +CONFIG_SND_SOC_ES7134=m +CONFIG_SND_SOC_ES7241=m +CONFIG_SND_SOC_PCM3168A_I2C=m +CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m +CONFIG_SND_SOC_TAS571X=m +CONFIG_SND_SOC_WCD934X=m +CONFIG_SND_SOC_WM8904=m +CONFIG_SND_SOC_WSA881X=m +CONFIG_SND_SIMPLE_CARD=m +CONFIG_SND_AUDIO_GRAPH_CARD=m +CONFIG_I2C_HID=m +CONFIG_USB_CONN_GPIO=m +CONFIG_USB=y +CONFIG_USB_OTG=y +CONFIG_USB_XHCI_HCD=y +CONFIG_USB_XHCI_TEGRA=y +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_EHCI_EXYNOS=y +CONFIG_USB_EHCI_HCD_PLATFORM=y +CONFIG_USB_OHCI_HCD=y +CONFIG_USB_OHCI_EXYNOS=y +CONFIG_USB_OHCI_HCD_PLATFORM=y +CONFIG_USB_RENESAS_USBHS_HCD=m +CONFIG_USB_RENESAS_USBHS=m +CONFIG_USB_ACM=m +CONFIG_USB_STORAGE=y +CONFIG_USB_MUSB_HDRC=y +CONFIG_USB_MUSB_SUNXI=y +CONFIG_USB_DWC3=y +CONFIG_USB_DWC2=y +CONFIG_USB_CHIPIDEA=y +CONFIG_USB_CHIPIDEA_UDC=y +CONFIG_USB_CHIPIDEA_HOST=y +CONFIG_USB_ISP1760=y +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_HSIC_USB3503=y +CONFIG_NOP_USB_XCEIV=y +CONFIG_USB_GADGET=y +CONFIG_USB_RENESAS_USBHS_UDC=m +CONFIG_USB_RENESAS_USB3=m +CONFIG_USB_TEGRA_XUDC=m +CONFIG_USB_CONFIGFS=m +CONFIG_USB_CONFIGFS_SERIAL=y +CONFIG_USB_CONFIGFS_ACM=y +CONFIG_USB_CONFIGFS_OBEX=y +CONFIG_USB_CONFIGFS_NCM=y +CONFIG_USB_CONFIGFS_ECM=y +CONFIG_USB_CONFIGFS_ECM_SUBSET=y +CONFIG_USB_CONFIGFS_RNDIS=y +CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +CONFIG_USB_CONFIGFS_F_FS=y +CONFIG_TYPEC=m +CONFIG_TYPEC_TCPM=m +CONFIG_TYPEC_FUSB302=m +CONFIG_TYPEC_HD3SS3220=m +CONFIG_MMC=y +CONFIG_MMC_BLOCK_MINORS=32 +CONFIG_MMC_ARMMMCI=y +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_ACPI=y +CONFIG_MMC_SDHCI_PLTFM=y +CONFIG_MMC_SDHCI_OF_ARASAN=y +CONFIG_MMC_SDHCI_OF_ESDHC=y +CONFIG_MMC_SDHCI_CADENCE=y +CONFIG_MMC_SDHCI_ESDHC_IMX=y +CONFIG_MMC_SDHCI_TEGRA=y +CONFIG_MMC_SDHCI_F_SDH30=y +CONFIG_MMC_MESON_GX=y +CONFIG_MMC_SDHCI_MSM=y +CONFIG_MMC_SPI=y +CONFIG_MMC_SDHI=y +CONFIG_MMC_UNIPHIER=y +CONFIG_MMC_DW=y +CONFIG_MMC_DW_EXYNOS=y +CONFIG_MMC_DW_HI3798CV200=y +CONFIG_MMC_DW_K3=y +CONFIG_MMC_DW_ROCKCHIP=y +CONFIG_MMC_SUNXI=y +CONFIG_MMC_BCM2835=y +CONFIG_MMC_SDHCI_XENON=y +CONFIG_MMC_SDHCI_AM654=y +CONFIG_MMC_OWL=y +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +CONFIG_LEDS_GPIO=y +CONFIG_LEDS_PWM=y +CONFIG_LEDS_SYSCON=y +CONFIG_LEDS_TRIGGER_TIMER=y +CONFIG_LEDS_TRIGGER_DISK=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=y +CONFIG_LEDS_TRIGGER_CPU=y +CONFIG_LEDS_TRIGGER_DEFAULT_ON=y +CONFIG_LEDS_TRIGGER_PANIC=y +CONFIG_EDAC=y +CONFIG_EDAC_GHES=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_DRV_DS1307=m +CONFIG_RTC_DRV_MAX77686=y +CONFIG_RTC_DRV_RK808=m +CONFIG_RTC_DRV_PCF85363=m +CONFIG_RTC_DRV_RX8581=m +CONFIG_RTC_DRV_RV8803=m +CONFIG_RTC_DRV_S5M=y +CONFIG_RTC_DRV_DS3232=y +CONFIG_RTC_DRV_PCF2127=m +CONFIG_RTC_DRV_EFI=y +CONFIG_RTC_DRV_CROS_EC=y +CONFIG_RTC_DRV_S3C=y +CONFIG_RTC_DRV_PL031=y +CONFIG_RTC_DRV_SUN6I=y +CONFIG_RTC_DRV_ARMADA38X=y +CONFIG_RTC_DRV_PM8XXX=m +CONFIG_RTC_DRV_TEGRA=y +CONFIG_RTC_DRV_SNVS=m +CONFIG_RTC_DRV_IMX_SC=m +CONFIG_RTC_DRV_XGENE=y +CONFIG_DMADEVICES=y +CONFIG_DMA_BCM2835=y +CONFIG_DMA_SUN6I=m +CONFIG_FSL_EDMA=y +CONFIG_IMX_SDMA=y +CONFIG_K3_DMA=y +CONFIG_MV_XOR=y +CONFIG_MV_XOR_V2=y +CONFIG_OWL_DMA=y +CONFIG_PL330_DMA=y +CONFIG_TEGRA20_APB_DMA=y +CONFIG_TEGRA210_ADMA=m +CONFIG_QCOM_BAM_DMA=y +CONFIG_QCOM_HIDMA_MGMT=y +CONFIG_QCOM_HIDMA=y +CONFIG_RCAR_DMAC=y +CONFIG_RENESAS_USB_DMAC=m +CONFIG_TI_K3_UDMA=y +CONFIG_TI_K3_UDMA_GLUE_LAYER=y +CONFIG_VFIO=y +CONFIG_VFIO_PCI=y +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_BALLOON=y +CONFIG_VIRTIO_MMIO=y +CONFIG_XEN_GNTDEV=y +CONFIG_XEN_GRANT_DEV_ALLOC=y +CONFIG_MFD_CROS_EC_DEV=y +CONFIG_CHROME_PLATFORMS=y +CONFIG_CROS_EC=y +CONFIG_CROS_EC_I2C=y +CONFIG_CROS_EC_SPI=y +CONFIG_CROS_EC_CHARDEV=m +CONFIG_COMMON_CLK_RK808=y +CONFIG_COMMON_CLK_SCPI=y +CONFIG_COMMON_CLK_CS2000_CP=y +CONFIG_COMMON_CLK_FSL_SAI=y +CONFIG_COMMON_CLK_S2MPS11=y +CONFIG_COMMON_CLK_PWM=y +CONFIG_COMMON_CLK_VC5=y +CONFIG_COMMON_CLK_BD718XX=m +CONFIG_CLK_RASPBERRYPI=m +CONFIG_CLK_IMX8MM=y +CONFIG_CLK_IMX8MN=y +CONFIG_CLK_IMX8MP=y +CONFIG_CLK_IMX8MQ=y +CONFIG_CLK_IMX8QXP=y +CONFIG_TI_SCI_CLK=y +CONFIG_COMMON_CLK_QCOM=y +CONFIG_QCOM_A53PLL=y +CONFIG_QCOM_CLK_APCS_MSM8916=y +CONFIG_QCOM_CLK_SMD_RPM=y +CONFIG_QCOM_CLK_RPMH=y +CONFIG_IPQ_GCC_8074=y +CONFIG_IPQ_GCC_6018=y +CONFIG_MSM_GCC_8916=y +CONFIG_MSM_GCC_8994=y +CONFIG_MSM_MMCC_8996=y +CONFIG_MSM_GCC_8998=y +CONFIG_QCS_GCC_404=y +CONFIG_SC_GCC_7180=y +CONFIG_SDM_CAMCC_845=m +CONFIG_SDM_GCC_845=y +CONFIG_SDM_GPUCC_845=y +CONFIG_SDM_VIDEOCC_845=y +CONFIG_SDM_DISPCC_845=y +CONFIG_SM_GCC_8150=y +CONFIG_SM_GCC_8250=y +CONFIG_SM_GPUCC_8150=y +CONFIG_SM_GPUCC_8250=y +CONFIG_QCOM_HFPLL=y +CONFIG_HWSPINLOCK=y +CONFIG_HWSPINLOCK_QCOM=y +CONFIG_ARM_MHU=y +CONFIG_IMX_MBOX=y +CONFIG_PLATFORM_MHU=y +CONFIG_BCM2835_MBOX=y +CONFIG_QCOM_APCS_IPC=y +CONFIG_QCOM_IPCC=y +CONFIG_ROCKCHIP_IOMMU=y +CONFIG_TEGRA_IOMMU_SMMU=y +CONFIG_ARM_SMMU=y +CONFIG_ARM_SMMU_V3=y +CONFIG_QCOM_IOMMU=y +CONFIG_REMOTEPROC=y +CONFIG_QCOM_Q6V5_MSS=m +CONFIG_QCOM_Q6V5_PAS=m +CONFIG_QCOM_SYSMON=m +CONFIG_RPMSG_QCOM_GLINK_RPM=y +CONFIG_RPMSG_QCOM_GLINK_SMEM=m +CONFIG_RPMSG_QCOM_SMD=y +CONFIG_SOUNDWIRE=m +CONFIG_SOUNDWIRE_QCOM=m +CONFIG_OWL_PM_DOMAINS=y +CONFIG_RASPBERRYPI_POWER=y +CONFIG_FSL_DPAA=y +CONFIG_FSL_MC_DPIO=y +CONFIG_QCOM_AOSS_QMP=y +CONFIG_QCOM_GENI_SE=y +CONFIG_QCOM_RMTFS_MEM=m +CONFIG_QCOM_RPMH=y +CONFIG_QCOM_RPMHPD=y +CONFIG_QCOM_RPMPD=y +CONFIG_QCOM_SMEM=y +CONFIG_QCOM_SMD_RPM=y +CONFIG_QCOM_SMP2P=y +CONFIG_QCOM_SMSM=y +CONFIG_QCOM_SOCINFO=m +CONFIG_QCOM_APR=m +CONFIG_ARCH_R8A774A1=y +CONFIG_ARCH_R8A774B1=y +CONFIG_ARCH_R8A774C0=y +CONFIG_ARCH_R8A774E1=y +CONFIG_ARCH_R8A77950=y +CONFIG_ARCH_R8A77951=y +CONFIG_ARCH_R8A77960=y +CONFIG_ARCH_R8A77961=y +CONFIG_ARCH_R8A77965=y +CONFIG_ARCH_R8A77970=y +CONFIG_ARCH_R8A77980=y +CONFIG_ARCH_R8A77990=y +CONFIG_ARCH_R8A77995=y +CONFIG_ROCKCHIP_PM_DOMAINS=y +CONFIG_ARCH_TEGRA_132_SOC=y +CONFIG_ARCH_TEGRA_210_SOC=y +CONFIG_ARCH_TEGRA_186_SOC=y +CONFIG_ARCH_TEGRA_194_SOC=y +CONFIG_ARCH_K3_AM6_SOC=y +CONFIG_ARCH_K3_J721E_SOC=y +CONFIG_TI_SCI_PM_DOMAINS=y +CONFIG_EXTCON_PTN5150=m +CONFIG_EXTCON_USB_GPIO=y +CONFIG_EXTCON_USBC_CROS_EC=y +CONFIG_RENESAS_RPCIF=m +CONFIG_IIO=y +CONFIG_EXYNOS_ADC=y +CONFIG_MAX9611=m +CONFIG_QCOM_SPMI_ADC5=m +CONFIG_ROCKCHIP_SARADC=m +CONFIG_IIO_CROS_EC_SENSORS_CORE=m +CONFIG_IIO_CROS_EC_SENSORS=m +CONFIG_IIO_CROS_EC_LIGHT_PROX=m +CONFIG_SENSORS_ISL29018=m +CONFIG_IIO_CROS_EC_BARO=m +CONFIG_MPL3115=m +CONFIG_PWM=y +CONFIG_PWM_BCM2835=m +CONFIG_PWM_CROS_EC=m +CONFIG_PWM_MESON=m +CONFIG_PWM_RCAR=m +CONFIG_PWM_ROCKCHIP=y +CONFIG_PWM_SAMSUNG=y +CONFIG_PWM_SL28CPLD=m +CONFIG_PWM_SUN4I=m +CONFIG_PWM_TEGRA=m +CONFIG_SL28CPLD_INTC=y +CONFIG_QCOM_PDC=y +CONFIG_RESET_IMX7=y +CONFIG_RESET_QCOM_AOSS=y +CONFIG_RESET_QCOM_PDC=m +CONFIG_RESET_TI_SCI=y +CONFIG_PHY_XGENE=y +CONFIG_PHY_SUN4I_USB=y +CONFIG_PHY_MIXEL_MIPI_DPHY=m +CONFIG_PHY_HI6220_USB=y +CONFIG_PHY_HISTB_COMBPHY=y +CONFIG_PHY_HISI_INNO_USB2=y +CONFIG_PHY_MVEBU_CP110_COMPHY=y +CONFIG_PHY_QCOM_QMP=m +CONFIG_PHY_QCOM_QUSB2=m +CONFIG_PHY_QCOM_USB_HS=y +CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=y +CONFIG_PHY_RCAR_GEN3_PCIE=y +CONFIG_PHY_RCAR_GEN3_USB2=y +CONFIG_PHY_RCAR_GEN3_USB3=m +CONFIG_PHY_ROCKCHIP_EMMC=y +CONFIG_PHY_ROCKCHIP_INNO_HDMI=m +CONFIG_PHY_ROCKCHIP_INNO_USB2=y +CONFIG_PHY_ROCKCHIP_PCIE=m +CONFIG_PHY_ROCKCHIP_TYPEC=y +CONFIG_PHY_UNIPHIER_USB2=y +CONFIG_PHY_UNIPHIER_USB3=y +CONFIG_PHY_TEGRA_XUSB=y +CONFIG_ARM_SMMU_V3_PMU=m +CONFIG_FSL_IMX8_DDR_PMU=m +CONFIG_HISI_PMU=y +CONFIG_QCOM_L2_PMU=y +CONFIG_QCOM_L3_PMU=y +CONFIG_NVMEM_IMX_OCOTP=y +CONFIG_NVMEM_IMX_OCOTP_SCU=y +CONFIG_QCOM_QFPROM=y +CONFIG_ROCKCHIP_EFUSE=y +CONFIG_NVMEM_SUNXI_SID=y +CONFIG_UNIPHIER_EFUSE=y +CONFIG_MESON_EFUSE=m +CONFIG_FPGA=y +CONFIG_FPGA_MGR_STRATIX10_SOC=m +CONFIG_FPGA_BRIDGE=m +CONFIG_ALTERA_FREEZE_BRIDGE=m +CONFIG_FPGA_REGION=m +CONFIG_OF_FPGA_REGION=m +CONFIG_TEE=y +CONFIG_OPTEE=y +CONFIG_SLIMBUS=m +CONFIG_SLIM_QCOM_CTRL=m +CONFIG_SLIM_QCOM_NGD_CTRL=m +CONFIG_MUX_MMIO=y +CONFIG_INTERCONNECT=y +CONFIG_INTERCONNECT_QCOM=y +CONFIG_INTERCONNECT_QCOM_MSM8916=m +CONFIG_INTERCONNECT_QCOM_SDM845=m +CONFIG_INTERCONNECT_QCOM_SM8150=m +CONFIG_INTERCONNECT_QCOM_SM8250=m +CONFIG_EXT2_FS=y +CONFIG_EXT3_FS=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=m +CONFIG_CUSE=m +CONFIG_OVERLAY_FS=m +CONFIG_VFAT_FS=y +CONFIG_HUGETLBFS=y +CONFIG_CONFIGFS_FS=y +CONFIG_EFIVAR_FS=y +CONFIG_SQUASHFS=y +CONFIG_NFS_FS=y +CONFIG_NFS_V4=y +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_2=y +CONFIG_ROOT_NFS=y +CONFIG_9P_FS=y +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_ISO8859_1=y +CONFIG_SECURITY=y +CONFIG_CRYPTO_ECHAINIV=y +CONFIG_CRYPTO_ANSI_CPRNG=y +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_DEV_SUN8I_CE=m +CONFIG_CRYPTO_DEV_FSL_CAAM=m +CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=m +CONFIG_CRYPTO_DEV_QCOM_RNG=m +CONFIG_CRYPTO_DEV_CCREE=m +CONFIG_CRYPTO_DEV_HISI_SEC2=m +CONFIG_CRYPTO_DEV_HISI_ZIP=m +CONFIG_CRYPTO_DEV_HISI_HPRE=m +CONFIG_CMA_SIZE_MBYTES=32 +CONFIG_PRINTK_TIME=y +CONFIG_DEBUG_INFO=y +CONFIG_MAGIC_SYSRQ=y +CONFIG_DEBUG_FS=y +CONFIG_DEBUG_KERNEL=y +# CONFIG_SCHED_DEBUG is not set +# CONFIG_DEBUG_PREEMPT is not set +# CONFIG_FTRACE is not set +CONFIG_MEMTEST=y diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/patches/go/1.15.15/dist-generate-stub-go.mod-in-workdir.patch b/deploy/iso/minikube-iso/board/minikube/aarch64/patches/go/1.15.15/dist-generate-stub-go.mod-in-workdir.patch similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/patches/go/1.15.15/dist-generate-stub-go.mod-in-workdir.patch rename to deploy/iso/minikube-iso/board/minikube/aarch64/patches/go/1.15.15/dist-generate-stub-go.mod-in-workdir.patch diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/patches/sysdig/0.23.1/driver.patch b/deploy/iso/minikube-iso/board/minikube/aarch64/patches/sysdig/0.23.1/driver.patch similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/patches/sysdig/0.23.1/driver.patch rename to deploy/iso/minikube-iso/board/minikube/aarch64/patches/sysdig/0.23.1/driver.patch diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/patches/sysdig/0.23.1/luajit.patch b/deploy/iso/minikube-iso/board/minikube/aarch64/patches/sysdig/0.23.1/luajit.patch similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/patches/sysdig/0.23.1/luajit.patch rename to deploy/iso/minikube-iso/board/minikube/aarch64/patches/sysdig/0.23.1/luajit.patch diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/patches/systemd/240/dhcp-multiple-addresses-for-router.patch b/deploy/iso/minikube-iso/board/minikube/aarch64/patches/systemd/240/dhcp-multiple-addresses-for-router.patch similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/patches/systemd/240/dhcp-multiple-addresses-for-router.patch rename to deploy/iso/minikube-iso/board/minikube/aarch64/patches/systemd/240/dhcp-multiple-addresses-for-router.patch diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/patches/systemd/240/rdrand-workaround-on-amd.patch b/deploy/iso/minikube-iso/board/minikube/aarch64/patches/systemd/240/rdrand-workaround-on-amd.patch similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/patches/systemd/240/rdrand-workaround-on-amd.patch rename to deploy/iso/minikube-iso/board/minikube/aarch64/patches/systemd/240/rdrand-workaround-on-amd.patch diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/patches/varlink/19/ctags.patch b/deploy/iso/minikube-iso/board/minikube/aarch64/patches/varlink/19/ctags.patch similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/patches/varlink/19/ctags.patch rename to deploy/iso/minikube-iso/board/minikube/aarch64/patches/varlink/19/ctags.patch diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/permissions b/deploy/iso/minikube-iso/board/minikube/aarch64/permissions similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/permissions rename to deploy/iso/minikube-iso/board/minikube/aarch64/permissions diff --git a/deploy/iso/minikube-iso/board/iso/x86_64/post-build.sh b/deploy/iso/minikube-iso/board/minikube/aarch64/post-build.sh similarity index 100% rename from deploy/iso/minikube-iso/board/iso/x86_64/post-build.sh rename to deploy/iso/minikube-iso/board/minikube/aarch64/post-build.sh diff --git a/deploy/iso/minikube-iso/board/iso/x86_64/post-image.sh b/deploy/iso/minikube-iso/board/minikube/aarch64/post-image.sh similarity index 93% rename from deploy/iso/minikube-iso/board/iso/x86_64/post-image.sh rename to deploy/iso/minikube-iso/board/minikube/aarch64/post-image.sh index b3b21c3304d1..ade1610b780b 100755 --- a/deploy/iso/minikube-iso/board/iso/x86_64/post-image.sh +++ b/deploy/iso/minikube-iso/board/minikube/aarch64/post-image.sh @@ -22,8 +22,8 @@ support/scripts/genimage.sh -c "$GENIMAGE_CFG" cd "$BINARIES_DIR" mkdir -p root/boot -cp bzImage root/boot/vmlinuz -cp rootfs.cpio.gz root/boot/initrd.img +cp Image root/boot/bzimage +cp rootfs.cpio.lz4 root/boot/initrd mkdir -p root/EFI/BOOT cp efi-part/EFI/BOOT/* root/EFI/BOOT/ cp efiboot.img root/EFI/BOOT/ diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/cni/net.d/.keep b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/cni/net.d/.keep similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/cni/net.d/.keep rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/cni/net.d/.keep diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/docker/.keep b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/docker/.keep similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/docker/.keep rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/docker/.keep diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/fstab b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/fstab similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/fstab rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/fstab diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/motd b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/motd similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/motd rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/motd diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/ssh/sshd_config b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/ssh/sshd_config similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/ssh/sshd_config rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/ssh/sshd_config diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sudoers b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sudoers similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sudoers rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sudoers diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sysctl.d/11-tcp-mtu-probing.conf b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sysctl.d/11-tcp-mtu-probing.conf similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sysctl.d/11-tcp-mtu-probing.conf rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sysctl.d/11-tcp-mtu-probing.conf diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sysctl.d/90-cilium-rp_filter.conf b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sysctl.d/90-cilium-rp_filter.conf similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sysctl.d/90-cilium-rp_filter.conf rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sysctl.d/90-cilium-rp_filter.conf diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sysctl.d/disable-ipv6.conf b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sysctl.d/disable-ipv6.conf similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/sysctl.d/disable-ipv6.conf rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/sysctl.d/disable-ipv6.conf diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/journald.conf b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/journald.conf similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/journald.conf rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/journald.conf diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/network/10-eth1.network b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/network/10-eth1.network similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/network/10-eth1.network rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/network/10-eth1.network diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/network/20-dhcp.network b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/network/20-dhcp.network similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/network/20-dhcp.network rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/network/20-dhcp.network diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/system/getty.target.wants/getty@tty1.service b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/system/getty.target.wants/getty@tty1.service similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/system/getty.target.wants/getty@tty1.service rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/system/getty.target.wants/getty@tty1.service diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/system/systemd-timesyncd.service.d/disable-virtualbox.conf b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/system/systemd-timesyncd.service.d/disable-virtualbox.conf similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/systemd/system/systemd-timesyncd.service.d/disable-virtualbox.conf rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/systemd/system/systemd-timesyncd.service.d/disable-virtualbox.conf diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/udev/rules.d/80-net-setup-link.rules b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/udev/rules.d/80-net-setup-link.rules similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/etc/udev/rules.d/80-net-setup-link.rules rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/etc/udev/rules.d/80-net-setup-link.rules diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/init b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/init similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/init rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/init diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/toolbox b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/usr/bin/toolbox similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/usr/bin/toolbox rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/usr/bin/toolbox diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/var/lib/boot2docker/.keep b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/var/lib/boot2docker/.keep similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/var/lib/boot2docker/.keep rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/var/lib/boot2docker/.keep diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/var/log/.keep b/deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/var/log/.keep similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/rootfs-overlay/var/log/.keep rename to deploy/iso/minikube-iso/board/minikube/aarch64/rootfs-overlay/var/log/.keep diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/users b/deploy/iso/minikube-iso/board/minikube/aarch64/users similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/users rename to deploy/iso/minikube-iso/board/minikube/aarch64/users diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/genimage.cfg b/deploy/iso/minikube-iso/board/minikube/x86_64/genimage.cfg new file mode 100644 index 000000000000..0411d3cf49ab --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/genimage.cfg @@ -0,0 +1,12 @@ +image efiboot.img { + vfat { + label = "EFIBOOTISO" + file startup.nsh { + image = "efi-part/startup.nsh" + } + file EFI { + image = "efi-part/EFI" + } + } + size = 1474560 +} diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/grub-stub.cfg b/deploy/iso/minikube-iso/board/minikube/x86_64/grub-stub.cfg new file mode 100644 index 000000000000..e0b01cf7f51a --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/grub-stub.cfg @@ -0,0 +1,6 @@ +insmod iso9660 +insmod udf + +search --no-floppy --label EFIBOOTISO --set root + +# used to find the cd diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/grub.cfg b/deploy/iso/minikube-iso/board/minikube/x86_64/grub.cfg new file mode 100644 index 000000000000..009b34553917 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/grub.cfg @@ -0,0 +1,7 @@ +set default="0" +set timeout="5" + +menuentry "Buildroot" { + linux /boot/bzimage console=tty0 rw # kernel + initrd /boot/initrd # rootfs +} diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/isolinux.cfg b/deploy/iso/minikube-iso/board/minikube/x86_64/isolinux.cfg similarity index 100% rename from deploy/iso/minikube-iso/board/coreos/minikube/isolinux.cfg rename to deploy/iso/minikube-iso/board/minikube/x86_64/isolinux.cfg diff --git a/deploy/iso/minikube-iso/board/coreos/minikube/linux_defconfig b/deploy/iso/minikube-iso/board/minikube/x86_64/linux_x86_64_defconfig similarity index 99% rename from deploy/iso/minikube-iso/board/coreos/minikube/linux_defconfig rename to deploy/iso/minikube-iso/board/minikube/x86_64/linux_x86_64_defconfig index 2a91b1fdafc9..2c5364616d26 100644 --- a/deploy/iso/minikube-iso/board/coreos/minikube/linux_defconfig +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/linux_x86_64_defconfig @@ -525,3 +525,4 @@ CONFIG_PROVIDE_OHCI1394_DMA_INIT=y CONFIG_EARLY_PRINTK_DBGP=y CONFIG_DEBUG_BOOT_PARAMS=y CONFIG_OPTIMIZE_INLINING=y +CONFIG_FRAMEBUFFER_CONSOLE=y diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/patches/go/1.15.15/dist-generate-stub-go.mod-in-workdir.patch b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/go/1.15.15/dist-generate-stub-go.mod-in-workdir.patch new file mode 100644 index 000000000000..1cdd0b593658 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/go/1.15.15/dist-generate-stub-go.mod-in-workdir.patch @@ -0,0 +1,78 @@ +From 2b512af2ddaae01926fdcc9056b71017cac2a8d2 Mon Sep 17 00:00:00 2001 +From: Tamir Duberstein +Date: Thu, 25 Feb 2021 16:44:46 -0500 +Subject: [PATCH] dist: generate stub go.mod in workdir + +(cherry picked from commit c6374f516206c02b905d0d76ee1a66dab6fcd212) +--- + src/cmd/dist/build.go | 26 ++++++-------------------- + 1 file changed, 6 insertions(+), 20 deletions(-) + +diff --git a/src/cmd/dist/build.go b/src/cmd/dist/build.go +index 9e2b4f33b8..e5a7f9e9c4 100644 +--- a/src/cmd/dist/build.go ++++ b/src/cmd/dist/build.go +@@ -110,9 +110,6 @@ func xinit() { + fatalf("$GOROOT must be set") + } + goroot = filepath.Clean(b) +- if modRoot := findModuleRoot(goroot); modRoot != "" { +- fatalf("found go.mod file in %s: $GOROOT must not be inside a module", modRoot) +- } + + b = os.Getenv("GOROOT_FINAL") + if b == "" { +@@ -244,6 +241,9 @@ func xinit() { + os.Setenv("LANGUAGE", "en_US.UTF8") + + workdir = xworkdir() ++ if err := ioutil.WriteFile(pathf("%s/go.mod", workdir), []byte("module bootstrap"), 0666); err != nil { ++ fatalf("cannot write stub go.mod: %s", err) ++ } + xatexit(rmworkdir) + + tooldir = pathf("%s/pkg/tool/%s_%s", goroot, gohostos, gohostarch) +@@ -1484,11 +1484,11 @@ func goCmd(goBinary string, cmd string, args ...string) { + goCmd = append(goCmd, "-p=1") + } + +- run(goroot, ShowOutput|CheckExit, append(goCmd, args...)...) ++ run(workdir, ShowOutput|CheckExit, append(goCmd, args...)...) + } + + func checkNotStale(goBinary string, targets ...string) { +- out := run(goroot, CheckExit, ++ out := run(workdir, CheckExit, + append([]string{ + goBinary, + "list", "-gcflags=all=" + gogcflags, "-ldflags=all=" + goldflags, +@@ -1498,7 +1498,7 @@ func checkNotStale(goBinary string, targets ...string) { + os.Setenv("GODEBUG", "gocachehash=1") + for _, target := range []string{"runtime/internal/sys", "cmd/dist", "cmd/link"} { + if strings.Contains(out, "STALE "+target) { +- run(goroot, ShowOutput|CheckExit, goBinary, "list", "-f={{.ImportPath}} {{.Stale}}", target) ++ run(workdir, ShowOutput|CheckExit, goBinary, "list", "-f={{.ImportPath}} {{.Stale}}", target) + break + } + } +@@ -1590,20 +1590,6 @@ func checkCC() { + } + } + +-func findModuleRoot(dir string) (root string) { +- for { +- if fi, err := os.Stat(filepath.Join(dir, "go.mod")); err == nil && !fi.IsDir() { +- return dir +- } +- d := filepath.Dir(dir) +- if d == dir { +- break +- } +- dir = d +- } +- return "" +-} +- + func defaulttarg() string { + // xgetwd might return a path with symlinks fully resolved, and if + // there happens to be symlinks in goroot, then the hasprefix test diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/patches/sysdig/0.23.1/driver.patch b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/sysdig/0.23.1/driver.patch new file mode 100644 index 000000000000..71a73033a3f1 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/sysdig/0.23.1/driver.patch @@ -0,0 +1,1614 @@ +From e272b73e703e5691f79d3a15005ba2c937d203eb Mon Sep 17 00:00:00 2001 +From: Nathan Baker <7409217+nathan-b@users.noreply.github.com> +Date: Thu, 23 May 2019 09:59:06 -0400 +Subject: [PATCH] Changes to build the kmod with 5.1 kernels [SMAGENT-1643] + (#1413) + +[SMAGENT-1643] Changes to build the kmod with 5.1 kernels + +* The syscall_get_arguments function changed its parameters. +* The mmap symbols changed header locations +* Wrapped the kernel version check in a function + +(cherry picked from commit a6ab1e66fc05a02178e051ea2441633996d5871e) +--- + driver/main.c | 21 ++- + driver/ppm.h | 2 + + driver/ppm_events.c | 47 +++--- + driver/ppm_fillers.c | 333 ++++++++++++++++++++------------------ + driver/ppm_flag_helpers.h | 3 +- + 5 files changed, 221 insertions(+), 185 deletions(-) + +diff --git a/driver/main.c b/driver/main.c +index a9febf28..e2bdf992 100644 +--- a/driver/main.c ++++ b/driver/main.c +@@ -225,6 +225,15 @@ do { \ + pr_info(fmt, ##__VA_ARGS__); \ + } while (0) + ++inline void ppm_syscall_get_arguments(struct task_struct *task, struct pt_regs *regs, unsigned long *args) ++{ ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)) ++ syscall_get_arguments(task, regs, 0, 6, args); ++#else ++ syscall_get_arguments(task, regs, args); ++#endif ++} ++ + /* compat tracepoint functions */ + static int compat_register_trace(void *func, const char *probename, struct tracepoint *tp) + { +@@ -1275,11 +1284,10 @@ static const unsigned char compat_nas[21] = { + #ifdef _HAS_SOCKETCALL + static enum ppm_event_type parse_socketcall(struct event_filler_arguments *filler_args, struct pt_regs *regs) + { +- unsigned long __user args[2]; ++ unsigned long __user args[6] = {}; + unsigned long __user *scargs; + int socketcall_id; +- +- syscall_get_arguments(current, regs, 0, 2, args); ++ ppm_syscall_get_arguments(current, regs, args); + socketcall_id = args[0]; + scargs = (unsigned long __user *)args[1]; + +@@ -1394,6 +1402,7 @@ static inline void record_drop_x(struct ppm_consumer_t *consumer, struct timespe + static inline int drop_nostate_event(enum ppm_event_type event_type, + struct pt_regs *regs) + { ++ unsigned long args[6] = {}; + unsigned long arg = 0; + int close_fd = -1; + struct files_struct *files; +@@ -1415,7 +1424,8 @@ static inline int drop_nostate_event(enum ppm_event_type event_type, + * The invalid fd events don't matter to userspace in dropping mode, + * so we do this before the UF_NEVER_DROP check + */ +- syscall_get_arguments(current, regs, 0, 1, &arg); ++ ppm_syscall_get_arguments(current, regs, args); ++ arg = args[0]; + close_fd = (int)arg; + + files = current->files; +@@ -1435,7 +1445,8 @@ static inline int drop_nostate_event(enum ppm_event_type event_type, + case PPME_SYSCALL_FCNTL_E: + case PPME_SYSCALL_FCNTL_X: + // cmd arg +- syscall_get_arguments(current, regs, 1, 1, &arg); ++ ppm_syscall_get_arguments(current, regs, args); ++ arg = args[1]; + if (arg != F_DUPFD && arg != F_DUPFD_CLOEXEC) + drop = true; + break; +diff --git a/driver/ppm.h b/driver/ppm.h +index fa8f3378..dede196f 100644 +--- a/driver/ppm.h ++++ b/driver/ppm.h +@@ -120,4 +120,6 @@ extern const struct syscall_evt_pair g_syscall_ia32_table[]; + extern const enum ppm_syscall_code g_syscall_ia32_code_routing_table[]; + #endif + ++extern void ppm_syscall_get_arguments(struct task_struct *task, struct pt_regs *regs, unsigned long *args); ++ + #endif /* PPM_H_ */ +diff --git a/driver/ppm_events.c b/driver/ppm_events.c +index 7b0a9ba3..7be81657 100644 +--- a/driver/ppm_events.c ++++ b/driver/ppm_events.c +@@ -249,14 +249,16 @@ inline u32 compute_snaplen(struct event_filler_arguments *args, char *buf, u32 l + if (err == 0) { + if(args->event_type == PPME_SOCKET_SENDTO_X) + { ++ unsigned long syscall_args[6] = {}; + unsigned long val; + struct sockaddr __user * usrsockaddr; + /* + * Get the address + */ +- if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 4, 1, &val); +- else ++ if (!args->is_socketcall) { ++ ppm_syscall_get_arguments(current, args->regs, syscall_args); ++ val = syscall_args[4]; ++ } else + val = args->socketcall_args[4]; + + usrsockaddr = (struct sockaddr __user *)val; +@@ -270,9 +272,10 @@ inline u32 compute_snaplen(struct event_filler_arguments *args, char *buf, u32 l + /* + * Get the address len + */ +- if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 5, 1, &val); +- else ++ if (!args->is_socketcall) { ++ ppm_syscall_get_arguments(current, args->regs, syscall_args); ++ val = syscall_args[5]; ++ } else + val = args->socketcall_args[5]; + + if (val != 0) { +@@ -288,6 +291,7 @@ inline u32 compute_snaplen(struct event_filler_arguments *args, char *buf, u32 l + } + } + } else if (args->event_type == PPME_SOCKET_SENDMSG_X) { ++ unsigned long syscall_args[6] = {}; + unsigned long val; + struct sockaddr __user * usrsockaddr; + int addrlen; +@@ -300,9 +304,10 @@ inline u32 compute_snaplen(struct event_filler_arguments *args, char *buf, u32 l + struct msghdr mh; + #endif + +- if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); +- else ++ if (!args->is_socketcall) { ++ ppm_syscall_get_arguments(current, args->regs, syscall_args); ++ val = syscall_args[1]; ++ } else + val = args->socketcall_args[1]; + + #ifdef CONFIG_COMPAT +@@ -1102,6 +1107,7 @@ int32_t parse_readv_writev_bufs(struct event_filler_arguments *args, const struc + unsigned long bufsize; + char *targetbuf = args->str_storage; + u32 targetbuflen = STR_STORAGE_SIZE; ++ unsigned long syscall_args[6] = {}; + unsigned long val; + u32 notcopied_len; + size_t tocopy_len; +@@ -1147,9 +1153,10 @@ int32_t parse_readv_writev_bufs(struct event_filler_arguments *args, const struc + /* + * Retrieve the FD. It will be used for dynamic snaplen calculation. + */ +- if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &val); +- else ++ if (!args->is_socketcall) { ++ ppm_syscall_get_arguments(current, args->regs, syscall_args); ++ val = syscall_args[0]; ++ } else + val = args->socketcall_args[0]; + args->fd = (int)val; + +@@ -1233,6 +1240,7 @@ int32_t compat_parse_readv_writev_bufs(struct event_filler_arguments *args, cons + unsigned long bufsize; + char *targetbuf = args->str_storage; + u32 targetbuflen = STR_STORAGE_SIZE; ++ unsigned long syscall_args[6] = {}; + unsigned long val; + u32 notcopied_len; + compat_size_t tocopy_len; +@@ -1278,9 +1286,10 @@ int32_t compat_parse_readv_writev_bufs(struct event_filler_arguments *args, cons + /* + * Retrieve the FD. It will be used for dynamic snaplen calculation. + */ +- if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &val); +- else ++ if (!args->is_socketcall) { ++ ppm_syscall_get_arguments(current, args->regs, syscall_args); ++ val = syscall_args[0]; ++ } else + val = args->socketcall_args[0]; + args->fd = (int)val; + +@@ -1364,6 +1373,7 @@ int32_t compat_parse_readv_writev_bufs(struct event_filler_arguments *args, cons + int f_sys_autofill(struct event_filler_arguments *args) + { + int res; ++ unsigned long syscall_args[6] = {}; + unsigned long val; + u32 j; + int64_t retval; +@@ -1382,11 +1392,8 @@ int f_sys_autofill(struct event_filler_arguments *args) + /* + * Regular argument + */ +- syscall_get_arguments(current, +- args->regs, +- evinfo->autofill_args[j].id, +- 1, +- &val); ++ ppm_syscall_get_arguments(current, args->regs, syscall_args); ++ val = syscall_args[evinfo->autofill_args[j].id]; + } + + res = val_to_ring(args, val, 0, true, 0); +diff --git a/driver/ppm_fillers.c b/driver/ppm_fillers.c +index e595c0f0..4770fe49 100644 +--- a/driver/ppm_fillers.c ++++ b/driver/ppm_fillers.c +@@ -56,6 +56,23 @@ along with sysdig. If not, see . + + #define merge_64(hi, lo) ((((unsigned long long)(hi)) << 32) + ((lo) & 0xffffffffUL)) + ++/* ++ * Linux 5.1 kernels modify the syscall_get_arguments function to always ++ * return all arguments rather than allowing the caller to select which ++ * arguments are desired. This wrapper replicates the original ++ * functionality. ++ */ ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0)) ++#define syscall_get_arguments_deprecated syscall_get_arguments ++#else ++#define syscall_get_arguments_deprecated(_task, _reg, _start, _len, _args) \ ++ do { \ ++ unsigned long _sga_args[6] = {}; \ ++ syscall_get_arguments(_task, _reg, _sga_args); \ ++ memcpy(_args, &_sga_args[_start], _len); \ ++ } while(0) ++#endif ++ + int f_sys_generic(struct event_filler_arguments *args) + { + int res; +@@ -115,7 +132,7 @@ int f_sys_single(struct event_filler_arguments *args) + int res; + unsigned long val; + +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -155,7 +172,7 @@ int f_sys_open_x(struct event_filler_arguments *args) + /* + * name + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -164,7 +181,7 @@ int f_sys_open_x(struct event_filler_arguments *args) + * Flags + * Note that we convert them into the ppm portable representation before pushing them to the ring + */ +- syscall_get_arguments(current, args->regs, 1, 1, &flags); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &flags); + res = val_to_ring(args, open_flags_to_scap(flags), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -172,7 +189,7 @@ int f_sys_open_x(struct event_filler_arguments *args) + /* + * mode + */ +- syscall_get_arguments(current, args->regs, 2, 1, &modes); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &modes); + res = val_to_ring(args, open_modes_to_scap(flags, modes), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -190,7 +207,7 @@ int f_sys_read_x(struct event_filler_arguments *args) + /* + * Retrieve the FD. It will be used for dynamic snaplen calculation. + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + args->fd = (int)val; + + /* +@@ -211,7 +228,7 @@ int f_sys_read_x(struct event_filler_arguments *args) + val = 0; + bufsize = 0; + } else { +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + + /* + * The return value can be lower than the value provided by the user, +@@ -241,7 +258,7 @@ int f_sys_write_x(struct event_filler_arguments *args) + /* + * Retrieve the FD. It will be used for dynamic snaplen calculation. + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + args->fd = (int)val; + + /* +@@ -256,13 +273,13 @@ int f_sys_write_x(struct event_filler_arguments *args) + /* + * data + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + bufsize = val; + + /* + * Copy the buffer + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + args->enforce_snaplen = true; + res = val_to_ring(args, val, bufsize, true, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -701,7 +718,7 @@ int f_proc_startupdate(struct event_filler_arguments *args) + */ + args->str_storage[0] = 0; + +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + #ifdef CONFIG_COMPAT + if (unlikely(args->compat)) + args_len = compat_accumulate_argv_or_env((compat_uptr_t)val, +@@ -873,9 +890,9 @@ cgroups_error: + */ + if (args->event_type == PPME_SYSCALL_CLONE_20_X) { + #ifdef CONFIG_S390 +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + #else +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + #endif + } else + val = 0; +@@ -948,7 +965,7 @@ cgroups_error: + /* + * The call failed, so get the env from the arguments + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + #ifdef CONFIG_COMPAT + if (unlikely(args->compat)) + env_len = compat_accumulate_argv_or_env((compat_uptr_t)val, +@@ -1003,7 +1020,7 @@ int f_sys_execve_e(struct event_filler_arguments *args) + /* + * filename + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (res == PPM_FAILURE_INVALID_USER_MEMORY) + res = val_to_ring(args, (unsigned long)"", 0, false, 0); +@@ -1035,7 +1052,7 @@ int f_sys_socket_bind_x(struct event_filler_arguments *args) + * addr + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1045,7 +1062,7 @@ int f_sys_socket_bind_x(struct event_filler_arguments *args) + * Get the address len + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + else + val = args->socketcall_args[2]; + +@@ -1103,7 +1120,7 @@ int f_sys_connect_x(struct event_filler_arguments *args) + * in the stack, and therefore we can consume them. + */ + if (!args->is_socketcall) { +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + fd = (int)val; + } else + fd = (int)args->socketcall_args[0]; +@@ -1113,7 +1130,7 @@ int f_sys_connect_x(struct event_filler_arguments *args) + * Get the address + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1123,7 +1140,7 @@ int f_sys_connect_x(struct event_filler_arguments *args) + * Get the address len + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + else + val = args->socketcall_args[2]; + +@@ -1188,7 +1205,7 @@ int f_sys_socketpair_x(struct event_filler_arguments *args) + * fds + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + else + val = args->socketcall_args[3]; + #ifdef CONFIG_COMPAT +@@ -1308,7 +1325,7 @@ int f_sys_accept_x(struct event_filler_arguments *args) + * queuepct + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &srvskfd); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &srvskfd); + else + srvskfd = args->socketcall_args[0]; + +@@ -1350,7 +1367,7 @@ int f_sys_send_e_common(struct event_filler_arguments *args, int *fd) + * fd + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + else + val = args->socketcall_args[0]; + +@@ -1364,7 +1381,7 @@ int f_sys_send_e_common(struct event_filler_arguments *args, int *fd) + * size + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 2, 1, &size); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &size); + else + size = args->socketcall_args[2]; + +@@ -1411,7 +1428,7 @@ int f_sys_sendto_e(struct event_filler_arguments *args) + * Get the address + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 4, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &val); + else + val = args->socketcall_args[4]; + +@@ -1421,7 +1438,7 @@ int f_sys_sendto_e(struct event_filler_arguments *args) + * Get the address len + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 5, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 5, 1, &val); + else + val = args->socketcall_args[5]; + +@@ -1469,7 +1486,7 @@ int f_sys_send_x(struct event_filler_arguments *args) + * Retrieve the FD. It will be used for dynamic snaplen calculation. + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + else + val = args->socketcall_args[0]; + +@@ -1494,7 +1511,7 @@ int f_sys_send_x(struct event_filler_arguments *args) + bufsize = 0; + } else { + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1523,7 +1540,7 @@ int f_sys_recv_x_common(struct event_filler_arguments *args, int64_t *retval) + * Retrieve the FD. It will be used for dynamic snaplen calculation. + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1548,7 +1565,7 @@ int f_sys_recv_x_common(struct event_filler_arguments *args, int64_t *retval) + bufsize = 0; + } else { + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1604,7 +1621,7 @@ int f_sys_recvfrom_x(struct event_filler_arguments *args) + * Get the fd + */ + if (!args->is_socketcall) { +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + fd = (int)val; + } else + fd = (int)args->socketcall_args[0]; +@@ -1613,7 +1630,7 @@ int f_sys_recvfrom_x(struct event_filler_arguments *args) + * Get the address + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 4, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &val); + else + val = args->socketcall_args[4]; + usrsockaddr = (struct sockaddr __user *)val; +@@ -1622,7 +1639,7 @@ int f_sys_recvfrom_x(struct event_filler_arguments *args) + * Get the address len + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 5, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 5, 1, &val); + else + val = args->socketcall_args[5]; + if (usrsockaddr != NULL && val != 0) { +@@ -1698,7 +1715,7 @@ int f_sys_sendmsg_e(struct event_filler_arguments *args) + * fd + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + else + val = args->socketcall_args[0]; + +@@ -1711,7 +1728,7 @@ int f_sys_sendmsg_e(struct event_filler_arguments *args) + * Retrieve the message header + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1823,7 +1840,7 @@ int f_sys_sendmsg_x(struct event_filler_arguments *args) + * Retrieve the message header + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1896,7 +1913,7 @@ int f_sys_recvmsg_x(struct event_filler_arguments *args) + * Retrieve the message header + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -1940,7 +1957,7 @@ int f_sys_recvmsg_x(struct event_filler_arguments *args) + * Get the fd + */ + if (!args->is_socketcall) { +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + fd = (int)val; + } else + fd = (int)args->socketcall_args[0]; +@@ -2002,7 +2019,7 @@ int f_sys_pipe_x(struct event_filler_arguments *args) + /* + * fds + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + #ifdef CONFIG_COMPAT + if (!args->compat) { +@@ -2050,7 +2067,7 @@ int f_sys_eventfd_e(struct event_filler_arguments *args) + /* + * initval + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2059,7 +2076,7 @@ int f_sys_eventfd_e(struct event_filler_arguments *args) + * flags + * XXX not implemented yet + */ +- /* syscall_get_arguments(current, args->regs, 1, 1, &val); */ ++ /* syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); */ + val = 0; + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -2077,7 +2094,7 @@ int f_sys_shutdown_e(struct event_filler_arguments *args) + * fd + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + else + val = args->socketcall_args[0]; + +@@ -2089,7 +2106,7 @@ int f_sys_shutdown_e(struct event_filler_arguments *args) + * how + */ + if (!args->is_socketcall) +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + else + val = args->socketcall_args[1]; + +@@ -2108,7 +2125,7 @@ int f_sys_futex_e(struct event_filler_arguments *args) + /* + * addr + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2116,7 +2133,7 @@ int f_sys_futex_e(struct event_filler_arguments *args) + /* + * op + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, (unsigned long)futex_op_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2124,7 +2141,7 @@ int f_sys_futex_e(struct event_filler_arguments *args) + /* + * val + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2140,7 +2157,7 @@ int f_sys_lseek_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2148,7 +2165,7 @@ int f_sys_lseek_e(struct event_filler_arguments *args) + /* + * offset + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2156,7 +2173,7 @@ int f_sys_lseek_e(struct event_filler_arguments *args) + /* + * whence + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, lseek_whence_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2175,7 +2192,7 @@ int f_sys_llseek_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2184,8 +2201,8 @@ int f_sys_llseek_e(struct event_filler_arguments *args) + * offset + * We build it by combining the offset_high and offset_low system call arguments + */ +- syscall_get_arguments(current, args->regs, 1, 1, &oh); +- syscall_get_arguments(current, args->regs, 2, 1, &ol); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &oh); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &ol); + offset = (((uint64_t)oh) << 32) + ((uint64_t)ol); + res = val_to_ring(args, offset, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -2194,7 +2211,7 @@ int f_sys_llseek_e(struct event_filler_arguments *args) + /* + * whence + */ +- syscall_get_arguments(current, args->regs, 4, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &val); + res = val_to_ring(args, lseek_whence_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2218,7 +2235,7 @@ static int poll_parse_fds(struct event_filler_arguments *args, bool enter_event) + * + * Get the number of fds + */ +- syscall_get_arguments(current, args->regs, 1, 1, &nfds); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &nfds); + + /* + * Check if we have enough space to store both the fd list +@@ -2228,7 +2245,7 @@ static int poll_parse_fds(struct event_filler_arguments *args, bool enter_event) + return PPM_FAILURE_BUFFER_FULL; + + /* Get the fds pointer */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + fds = (struct pollfd *)args->str_storage; + #ifdef CONFIG_COMPAT +@@ -2285,7 +2302,7 @@ int f_sys_poll_e(struct event_filler_arguments *args) + /* + * timeout + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2340,7 +2357,7 @@ int f_sys_ppoll_e(struct event_filler_arguments *args) + /* + * timeout + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + /* NULL timeout specified as 0xFFFFFF.... */ + if (val == (unsigned long)NULL) + res = val_to_ring(args, (uint64_t)(-1), 0, false, 0); +@@ -2352,7 +2369,7 @@ int f_sys_ppoll_e(struct event_filler_arguments *args) + /* + * sigmask + */ +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + if (val != (unsigned long)NULL) + if (0 != ppm_copy_from_user(&val, (void __user *)val, sizeof(val))) + return PPM_FAILURE_INVALID_USER_MEMORY; +@@ -2394,7 +2411,7 @@ int f_sys_mount_e(struct event_filler_arguments *args) + * Fix mount flags in arg 3. + * See http://lxr.free-electrons.com/source/fs/namespace.c?v=4.2#L2650 + */ +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + if ((val & PPM_MS_MGC_MSK) == PPM_MS_MGC_VAL) + val &= ~PPM_MS_MGC_MSK; + res = val_to_ring(args, val, 0, false, 0); +@@ -2420,7 +2437,7 @@ int f_sys_openat_x(struct event_filler_arguments *args) + /* + * dirfd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -2432,7 +2449,7 @@ int f_sys_openat_x(struct event_filler_arguments *args) + /* + * name + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2441,7 +2458,7 @@ int f_sys_openat_x(struct event_filler_arguments *args) + * Flags + * Note that we convert them into the ppm portable representation before pushing them to the ring + */ +- syscall_get_arguments(current, args->regs, 2, 1, &flags); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &flags); + res = val_to_ring(args, open_flags_to_scap(flags), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2449,7 +2466,7 @@ int f_sys_openat_x(struct event_filler_arguments *args) + /* + * mode + */ +- syscall_get_arguments(current, args->regs, 3, 1, &modes); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &modes); + res = val_to_ring(args, open_modes_to_scap(flags, modes), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2471,7 +2488,7 @@ int f_sys_unlinkat_x(struct event_filler_arguments *args) + /* + * dirfd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -2483,7 +2500,7 @@ int f_sys_unlinkat_x(struct event_filler_arguments *args) + /* + * name + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2492,7 +2509,7 @@ int f_sys_unlinkat_x(struct event_filler_arguments *args) + * flags + * Note that we convert them into the ppm portable representation before pushing them to the ring + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, unlinkat_flags_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2515,7 +2532,7 @@ int f_sys_linkat_x(struct event_filler_arguments *args) + /* + * olddir + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -2527,7 +2544,7 @@ int f_sys_linkat_x(struct event_filler_arguments *args) + /* + * oldpath + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2535,7 +2552,7 @@ int f_sys_linkat_x(struct event_filler_arguments *args) + /* + * newdir + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -2547,7 +2564,7 @@ int f_sys_linkat_x(struct event_filler_arguments *args) + /* + * newpath + */ +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2556,7 +2573,7 @@ int f_sys_linkat_x(struct event_filler_arguments *args) + * Flags + * Note that we convert them into the ppm portable representation before pushing them to the ring + */ +- syscall_get_arguments(current, args->regs, 4, 1, &flags); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &flags); + res = val_to_ring(args, linkat_flags_to_scap(flags), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2577,7 +2594,7 @@ int f_sys_pread64_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2585,7 +2602,7 @@ int f_sys_pread64_e(struct event_filler_arguments *args) + /* + * size + */ +- syscall_get_arguments(current, args->regs, 2, 1, &size); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &size); + res = val_to_ring(args, size, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2594,11 +2611,11 @@ int f_sys_pread64_e(struct event_filler_arguments *args) + * pos + */ + #if defined CONFIG_X86 +- syscall_get_arguments(current, args->regs, 3, 1, &pos0); +- syscall_get_arguments(current, args->regs, 4, 1, &pos1); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &pos0); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &pos1); + #elif defined CONFIG_ARM && CONFIG_AEABI +- syscall_get_arguments(current, args->regs, 4, 1, &pos0); +- syscall_get_arguments(current, args->regs, 5, 1, &pos1); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &pos0); ++ syscall_get_arguments_deprecated(current, args->regs, 5, 1, &pos1); + #else + #error This architecture/abi not yet supported + #endif +@@ -2628,7 +2645,7 @@ int f_sys_pwrite64_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2636,7 +2653,7 @@ int f_sys_pwrite64_e(struct event_filler_arguments *args) + /* + * size + */ +- syscall_get_arguments(current, args->regs, 2, 1, &size); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &size); + res = val_to_ring(args, size, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2647,17 +2664,17 @@ int f_sys_pwrite64_e(struct event_filler_arguments *args) + * separate registers that we need to merge. + */ + #ifdef _64BIT_ARGS_SINGLE_REGISTER +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; + #else + #if defined CONFIG_X86 +- syscall_get_arguments(current, args->regs, 3, 1, &pos0); +- syscall_get_arguments(current, args->regs, 4, 1, &pos1); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &pos0); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &pos1); + #elif defined CONFIG_ARM && CONFIG_AEABI +- syscall_get_arguments(current, args->regs, 4, 1, &pos0); +- syscall_get_arguments(current, args->regs, 5, 1, &pos1); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &pos0); ++ syscall_get_arguments_deprecated(current, args->regs, 5, 1, &pos1); + #else + #error This architecture/abi not yet supported + #endif +@@ -2695,8 +2712,8 @@ int f_sys_readv_preadv_x(struct event_filler_arguments *args) + /* + * data and size + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); +- syscall_get_arguments(current, args->regs, 2, 1, &iovcnt); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &iovcnt); + + #ifdef CONFIG_COMPAT + if (unlikely(args->compat)) { +@@ -2727,7 +2744,7 @@ int f_sys_writev_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2735,12 +2752,12 @@ int f_sys_writev_e(struct event_filler_arguments *args) + /* + * size + */ +- syscall_get_arguments(current, args->regs, 2, 1, &iovcnt); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &iovcnt); + + /* + * Copy the buffer + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + #ifdef CONFIG_COMPAT + if (unlikely(args->compat)) { + compat_iov = (const struct compat_iovec __user *)compat_ptr(val); +@@ -2783,13 +2800,13 @@ int f_sys_writev_pwritev_x(struct event_filler_arguments *args) + /* + * data and size + */ +- syscall_get_arguments(current, args->regs, 2, 1, &iovcnt); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &iovcnt); + + + /* + * Copy the buffer + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + #ifdef CONFIG_COMPAT + if (unlikely(args->compat)) { + compat_iov = (const struct compat_iovec __user *)compat_ptr(val); +@@ -2818,7 +2835,7 @@ int f_sys_preadv64_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2833,8 +2850,8 @@ int f_sys_preadv64_e(struct event_filler_arguments *args) + * requirements apply here. For an overly-detailed discussion about + * this, see https://lwn.net/Articles/311630/ + */ +- syscall_get_arguments(current, args->regs, 3, 1, &pos0); +- syscall_get_arguments(current, args->regs, 4, 1, &pos1); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &pos0); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &pos1); + + pos64 = merge_64(pos1, pos0); + +@@ -2864,7 +2881,7 @@ int f_sys_pwritev_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2872,12 +2889,12 @@ int f_sys_pwritev_e(struct event_filler_arguments *args) + /* + * size + */ +- syscall_get_arguments(current, args->regs, 2, 1, &iovcnt); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &iovcnt); + + /* + * Copy the buffer + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + #ifdef CONFIG_COMPAT + if (unlikely(args->compat)) { + compat_iov = (const struct compat_iovec __user *)compat_ptr(val); +@@ -2900,7 +2917,7 @@ int f_sys_pwritev_e(struct event_filler_arguments *args) + * separate registers that we need to merge. + */ + #ifdef _64BIT_ARGS_SINGLE_REGISTER +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2911,8 +2928,8 @@ int f_sys_pwritev_e(struct event_filler_arguments *args) + * requirements apply here. For an overly-detailed discussion about + * this, see https://lwn.net/Articles/311630/ + */ +- syscall_get_arguments(current, args->regs, 3, 1, &pos0); +- syscall_get_arguments(current, args->regs, 4, 1, &pos1); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &pos0); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &pos1); + + pos64 = merge_64(pos1, pos0); + +@@ -2929,7 +2946,7 @@ int f_sys_nanosleep_e(struct event_filler_arguments *args) + unsigned long val; + int res; + +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = timespec_parse(args, val); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -2946,7 +2963,7 @@ int f_sys_getrlimit_setrlimit_e(struct event_filler_arguments *args) + /* + * resource + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + ppm_resource = rlimit_resource_to_scap(val); + +@@ -2981,7 +2998,7 @@ int f_sys_getrlimit_setrlrimit_x(struct event_filler_arguments *args) + * Copy the user structure and extract cur and max + */ + if (retval >= 0 || args->event_type == PPME_SYSCALL_SETRLIMIT_X) { +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + + #ifdef CONFIG_COMPAT + if (!args->compat) { +@@ -3029,7 +3046,7 @@ int f_sys_prlimit_e(struct event_filler_arguments *args) + /* + * pid + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -3038,7 +3055,7 @@ int f_sys_prlimit_e(struct event_filler_arguments *args) + /* + * resource + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + + ppm_resource = rlimit_resource_to_scap(val); + +@@ -3075,7 +3092,7 @@ int f_sys_prlimit_x(struct event_filler_arguments *args) + * Copy the user structure and extract cur and max + */ + if (retval >= 0) { +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + + #ifdef CONFIG_COMPAT + if (!args->compat) { +@@ -3103,7 +3120,7 @@ int f_sys_prlimit_x(struct event_filler_arguments *args) + newmax = -1; + } + +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + + #ifdef CONFIG_COMPAT + if (!args->compat) { +@@ -3258,7 +3275,7 @@ int f_sys_fcntl_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3266,7 +3283,7 @@ int f_sys_fcntl_e(struct event_filler_arguments *args) + /* + * cmd + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, fcntl_cmd_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3280,7 +3297,7 @@ static inline int parse_ptrace_addr(struct event_filler_arguments *args, u16 req + uint64_t dst; + u8 idx; + +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + switch (request) { + default: + idx = PPM_PTRACE_IDX_UINT64; +@@ -3297,7 +3314,7 @@ static inline int parse_ptrace_data(struct event_filler_arguments *args, u16 req + uint64_t dst; + u8 idx; + +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + switch (request) { + case PPM_PTRACE_PEEKTEXT: + case PPM_PTRACE_PEEKDATA: +@@ -3345,7 +3362,7 @@ int f_sys_ptrace_e(struct event_filler_arguments *args) + /* + * request + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, ptrace_requests_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3353,7 +3370,7 @@ int f_sys_ptrace_e(struct event_filler_arguments *args) + /* + * pid + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3391,7 +3408,7 @@ int f_sys_ptrace_x(struct event_filler_arguments *args) + /* + * request + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + request = ptrace_requests_to_scap(val); + + res = parse_ptrace_addr(args, request); +@@ -3457,7 +3474,7 @@ int f_sys_mmap_e(struct event_filler_arguments *args) + /* + * addr + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3465,7 +3482,7 @@ int f_sys_mmap_e(struct event_filler_arguments *args) + /* + * length + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3473,7 +3490,7 @@ int f_sys_mmap_e(struct event_filler_arguments *args) + /* + * prot + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, prot_flags_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3481,7 +3498,7 @@ int f_sys_mmap_e(struct event_filler_arguments *args) + /* + * flags + */ +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + res = val_to_ring(args, mmap_flags_to_scap(val), 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3489,7 +3506,7 @@ int f_sys_mmap_e(struct event_filler_arguments *args) + /* + * fd + */ +- syscall_get_arguments(current, args->regs, 4, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 4, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3497,7 +3514,7 @@ int f_sys_mmap_e(struct event_filler_arguments *args) + /* + * offset/pgoffset + */ +- syscall_get_arguments(current, args->regs, 5, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 5, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3519,7 +3536,7 @@ int f_sys_renameat_x(struct event_filler_arguments *args) + /* + * olddirfd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -3531,7 +3548,7 @@ int f_sys_renameat_x(struct event_filler_arguments *args) + /* + * oldpath + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3539,7 +3556,7 @@ int f_sys_renameat_x(struct event_filler_arguments *args) + /* + * newdirfd + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -3551,7 +3568,7 @@ int f_sys_renameat_x(struct event_filler_arguments *args) + /* + * newpath + */ +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3573,7 +3590,7 @@ int f_sys_symlinkat_x(struct event_filler_arguments *args) + /* + * oldpath + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3581,7 +3598,7 @@ int f_sys_symlinkat_x(struct event_filler_arguments *args) + /* + * newdirfd + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -3593,7 +3610,7 @@ int f_sys_symlinkat_x(struct event_filler_arguments *args) + /* + * newpath + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3629,7 +3646,7 @@ int f_sys_sendfile_e(struct event_filler_arguments *args) + /* + * out_fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3637,7 +3654,7 @@ int f_sys_sendfile_e(struct event_filler_arguments *args) + /* + * in_fd + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3645,7 +3662,7 @@ int f_sys_sendfile_e(struct event_filler_arguments *args) + /* + * offset + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + + if (val != 0) { + #ifdef CONFIG_COMPAT +@@ -3670,7 +3687,7 @@ int f_sys_sendfile_e(struct event_filler_arguments *args) + /* + * size + */ +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3696,7 +3713,7 @@ int f_sys_sendfile_x(struct event_filler_arguments *args) + /* + * offset + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + + if (val != 0) { + #ifdef CONFIG_COMPAT +@@ -3732,7 +3749,7 @@ int f_sys_quotactl_e(struct event_filler_arguments *args) + /* + * extract cmd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + cmd = quotactl_cmd_to_scap(val); + res = val_to_ring(args, cmd, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -3749,7 +3766,7 @@ int f_sys_quotactl_e(struct event_filler_arguments *args) + * extract id + */ + id = 0; +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + if ((cmd == PPM_Q_GETQUOTA) || + (cmd == PPM_Q_SETQUOTA) || + (cmd == PPM_Q_XGETQUOTA) || +@@ -3792,7 +3809,7 @@ int f_sys_quotactl_x(struct event_filler_arguments *args) + /* + * extract cmd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + cmd = quotactl_cmd_to_scap(val); + + /* +@@ -3806,7 +3823,7 @@ int f_sys_quotactl_x(struct event_filler_arguments *args) + /* + * Add special + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -3814,7 +3831,7 @@ int f_sys_quotactl_x(struct event_filler_arguments *args) + /* + * get addr + */ +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + + /* + * get quotafilepath only for QUOTAON +@@ -3992,7 +4009,7 @@ int f_sys_getresuid_and_gid_x(struct event_filler_arguments *args) + /* + * ruid + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + #ifdef CONFIG_COMPAT + if (!args->compat) { + #endif +@@ -4012,7 +4029,7 @@ int f_sys_getresuid_and_gid_x(struct event_filler_arguments *args) + /* + * euid + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + len = ppm_copy_from_user(&uid, (void *)val, sizeof(uint32_t)); + if (unlikely(len != 0)) + return PPM_FAILURE_INVALID_USER_MEMORY; +@@ -4024,7 +4041,7 @@ int f_sys_getresuid_and_gid_x(struct event_filler_arguments *args) + /* + * suid + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + len = ppm_copy_from_user(&uid, (void *)val, sizeof(uint32_t)); + if (unlikely(len != 0)) + return PPM_FAILURE_INVALID_USER_MEMORY; +@@ -4042,12 +4059,12 @@ int f_sys_flock_e(struct event_filler_arguments *args) + int res; + u32 flags; + +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; + +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + flags = flock_flags_to_scap(val); + res = val_to_ring(args, flags, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -4065,7 +4082,7 @@ int f_sys_setns_e(struct event_filler_arguments *args) + /* + * parse fd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4073,7 +4090,7 @@ int f_sys_setns_e(struct event_filler_arguments *args) + /* + * get type, parse as clone flags as it's a subset of it + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + flags = clone_flags_to_scap(val); + res = val_to_ring(args, flags, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -4091,7 +4108,7 @@ int f_sys_unshare_e(struct event_filler_arguments *args) + /* + * get type, parse as clone flags as it's a subset of it + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + flags = clone_flags_to_scap(val); + res = val_to_ring(args, flags, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) +@@ -4192,7 +4209,7 @@ int f_sys_semop_x(struct event_filler_arguments *args) + * actually this could be read in the enter function but + * we also need to know the value to access the sembuf structs + */ +- syscall_get_arguments(current, args->regs, 2, 1, &nsops); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &nsops); + res = val_to_ring(args, nsops, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4200,7 +4217,7 @@ int f_sys_semop_x(struct event_filler_arguments *args) + /* + * sembuf + */ +- syscall_get_arguments(current, args->regs, 1, 1, (unsigned long *) &ptr); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, (unsigned long *) &ptr); + + if (nsops && ptr) { + /* max length of sembuf array in g_event_info = 2 */ +@@ -4239,7 +4256,7 @@ int f_sys_semget_e(struct event_filler_arguments *args) + /* + * key + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4247,7 +4264,7 @@ int f_sys_semget_e(struct event_filler_arguments *args) + /* + * nsems + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4255,7 +4272,7 @@ int f_sys_semget_e(struct event_filler_arguments *args) + /* + * semflg + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, semget_flags_to_scap(val), 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4271,7 +4288,7 @@ int f_sys_semctl_e(struct event_filler_arguments *args) + /* + * semid + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4279,7 +4296,7 @@ int f_sys_semctl_e(struct event_filler_arguments *args) + /* + * semnum + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4287,7 +4304,7 @@ int f_sys_semctl_e(struct event_filler_arguments *args) + /* + * cmd + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, semctl_cmd_to_scap(val), 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4296,7 +4313,7 @@ int f_sys_semctl_e(struct event_filler_arguments *args) + * optional argument semun/val + */ + if (val == SETVAL) +- syscall_get_arguments(current, args->regs, 3, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 3, 1, &val); + else + val = 0; + res = val_to_ring(args, val, 0, true, 0); +@@ -4314,7 +4331,7 @@ int f_sys_access_e(struct event_filler_arguments *args) + /* + * mode + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, access_flags_to_scap(val), 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4342,7 +4359,7 @@ int f_sys_bpf_x(struct event_filler_arguments *args) + /* + * fd, depending on cmd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &cmd); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &cmd); + #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 18, 0) + if(cmd == BPF_MAP_CREATE || cmd == BPF_PROG_LOAD) + #else +@@ -4375,7 +4392,7 @@ int f_sys_mkdirat_x(struct event_filler_arguments *args) + /* + * dirfd + */ +- syscall_get_arguments(current, args->regs, 0, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 0, 1, &val); + + if ((int)val == AT_FDCWD) + val = PPM_AT_FDCWD; +@@ -4387,7 +4404,7 @@ int f_sys_mkdirat_x(struct event_filler_arguments *args) + /* + * path + */ +- syscall_get_arguments(current, args->regs, 1, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 1, 1, &val); + res = val_to_ring(args, val, 0, true, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +@@ -4395,7 +4412,7 @@ int f_sys_mkdirat_x(struct event_filler_arguments *args) + /* + * mode + */ +- syscall_get_arguments(current, args->regs, 2, 1, &val); ++ syscall_get_arguments_deprecated(current, args->regs, 2, 1, &val); + res = val_to_ring(args, val, 0, false, 0); + if (unlikely(res != PPM_SUCCESS)) + return res; +diff --git a/driver/ppm_flag_helpers.h b/driver/ppm_flag_helpers.h +index 92aaa1a4..00f11ec9 100644 +--- a/driver/ppm_flag_helpers.h ++++ b/driver/ppm_flag_helpers.h +@@ -18,8 +18,7 @@ along with sysdig. If not, see . + + #ifndef PPM_FLAG_HELPERS_H_ + #define PPM_FLAG_HELPERS_H_ +- +-#include ++#include + #include + #include + +-- +2.26.2 + +diff --git a/driver/ppm_events.c b/driver/ppm_events.c +index 7be81657..3b94e651 100644 +--- a/driver/ppm_events.c ++++ b/driver/ppm_events.c +@@ -55,7 +55,11 @@ along with sysdig. If not, see . + #ifdef access_ok_noprefault + #define ppm_access_ok access_ok_noprefault + #else ++#if LINUX_VERSION_CODE <= KERNEL_VERSION(5, 0, 0) + #define ppm_access_ok access_ok ++#else ++#define ppm_access_ok(type,addr,size) access_ok(addr,size) ++#endif + #endif + + extern bool g_tracers_enabled; diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/patches/sysdig/0.23.1/luajit.patch b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/sysdig/0.23.1/luajit.patch new file mode 100644 index 000000000000..1945908ba74b --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/sysdig/0.23.1/luajit.patch @@ -0,0 +1,56 @@ +# hack taken from CMakeLists.txt +# PATCH_COMMAND sed -i "s/luaL_reg/luaL_Reg/g" ${PROJECT_SOURCE_DIR}/userspace/libsinsp/chisel.cpp && sed -i "s/luaL_reg/luaL_Reg/g" ${PROJECT_SOURCE_DIR}/userspace/libsinsp/lua_parser.cpp && sed -i "s/luaL_getn/lua_objlen /g" ${PROJECT_SOURCE_DIR}/userspace/libsinsp/lua_parser_api.cpp +diff -ur sysdig-0.23.1.orig/userspace/libsinsp/chisel.cpp sysdig-0.23.1/userspace/libsinsp/chisel.cpp +--- sysdig-0.23.1.orig/userspace/libsinsp/chisel.cpp 2018-08-14 22:58:06.000000000 +0200 ++++ sysdig-0.23.1/userspace/libsinsp/chisel.cpp 2020-05-17 12:33:38.871530253 +0200 +@@ -96,7 +96,7 @@ + // Lua callbacks + /////////////////////////////////////////////////////////////////////////////// + #ifdef HAS_LUA_CHISELS +-const static struct luaL_reg ll_sysdig [] = ++const static struct luaL_Reg ll_sysdig [] = + { + {"set_filter", &lua_cbacks::set_global_filter}, + {"set_snaplen", &lua_cbacks::set_snaplen}, +@@ -132,7 +132,7 @@ + {NULL,NULL} + }; + +-const static struct luaL_reg ll_chisel [] = ++const static struct luaL_Reg ll_chisel [] = + { + {"request_field", &lua_cbacks::request_field}, + {"set_filter", &lua_cbacks::set_filter}, +@@ -144,7 +144,7 @@ + {NULL,NULL} + }; + +-const static struct luaL_reg ll_evt [] = ++const static struct luaL_Reg ll_evt [] = + { + {"field", &lua_cbacks::field}, + {"get_num", &lua_cbacks::get_num}, +diff -ur sysdig-0.23.1.orig/userspace/libsinsp/lua_parser_api.cpp sysdig-0.23.1/userspace/libsinsp/lua_parser_api.cpp +--- sysdig-0.23.1.orig/userspace/libsinsp/lua_parser_api.cpp 2018-08-14 22:58:06.000000000 +0200 ++++ sysdig-0.23.1/userspace/libsinsp/lua_parser_api.cpp 2020-05-17 12:33:53.019534358 +0200 +@@ -235,7 +235,7 @@ + fprintf(stderr, "%s\n", err.c_str()); + throw sinsp_exception("parser API error"); + } +- int n = luaL_getn(ls, 3); /* get size of table */ ++ int n = lua_objlen (ls, 3); /* get size of table */ + for (i=1; i<=n; i++) + { + lua_rawgeti(ls, 3, i); +diff -ur sysdig-0.23.1.orig/userspace/libsinsp/lua_parser.cpp sysdig-0.23.1/userspace/libsinsp/lua_parser.cpp +--- sysdig-0.23.1.orig/userspace/libsinsp/lua_parser.cpp 2018-08-14 22:58:06.000000000 +0200 ++++ sysdig-0.23.1/userspace/libsinsp/lua_parser.cpp 2020-05-17 12:33:46.343532385 +0200 +@@ -14,7 +14,7 @@ + #include "lauxlib.h" + } + +-const static struct luaL_reg ll_filter [] = ++const static struct luaL_Reg ll_filter [] = + { + {"rel_expr", &lua_parser_cbacks::rel_expr}, + {"bool_op", &lua_parser_cbacks::bool_op}, diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/patches/systemd/240/dhcp-multiple-addresses-for-router.patch b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/systemd/240/dhcp-multiple-addresses-for-router.patch new file mode 100644 index 000000000000..10be45fdf5c1 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/systemd/240/dhcp-multiple-addresses-for-router.patch @@ -0,0 +1,470 @@ +From 398f9301fd2db3b15407a62e90d416914f94c669 Mon Sep 17 00:00:00 2001 +From: Yu Watanabe +Date: Mon, 11 Feb 2019 21:25:13 +0900 +Subject: [PATCH 1/3] network: minor coding style update + +(cherry picked from commit 860e636cf6855260634ef2f7f52af4635b1271c3) +--- + src/network/networkd-dhcp4.c | 16 +++++++--------- + 1 file changed, 7 insertions(+), 9 deletions(-) + +diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c +index 980d49e..61f767a 100644 +--- a/src/network/networkd-dhcp4.c ++++ b/src/network/networkd-dhcp4.c +@@ -70,7 +70,7 @@ static int link_set_dhcp_routes(Link *link) { + /* When the interface is part of an VRF use the VRFs routing table, unless + * there is a another table specified. */ + table = link->network->dhcp_route_table; +- if (!link->network->dhcp_route_table_set && link->network->vrf != NULL) ++ if (!link->network->dhcp_route_table_set && link->network->vrf) + table = VRF(link->network->vrf)->table; + + r = sd_dhcp_lease_get_address(link->dhcp_lease, &address); +@@ -135,14 +135,7 @@ static int link_set_dhcp_routes(Link *link) { + log_link_warning(link, "Classless static routes received from DHCP server: ignoring static-route option and router option"); + + if (r >= 0 && !classless_route) { +- _cleanup_(route_freep) Route *route = NULL; +- _cleanup_(route_freep) Route *route_gw = NULL; +- +- r = route_new(&route); +- if (r < 0) +- return log_link_error_errno(link, r, "Could not allocate route: %m"); +- +- route->protocol = RTPROT_DHCP; ++ _cleanup_(route_freep) Route *route = NULL, *route_gw = NULL; + + r = route_new(&route_gw); + if (r < 0) +@@ -166,9 +159,14 @@ static int link_set_dhcp_routes(Link *link) { + + link->dhcp4_messages++; + ++ r = route_new(&route); ++ if (r < 0) ++ return log_link_error_errno(link, r, "Could not allocate route: %m"); ++ + route->family = AF_INET; + route->gw.in = gateway; + route->prefsrc.in = address; ++ route->protocol = RTPROT_DHCP; + route->priority = link->network->dhcp_route_metric; + route->table = table; + +-- +2.7.4 + +From 8fac545db140bd5c29113d13caa2d0d7cb8bb49b Mon Sep 17 00:00:00 2001 +From: Thomas Haller +Date: Fri, 14 Dec 2018 11:10:57 +0100 +Subject: [PATCH 2/3] dhcp: handle multiple addresses for "Router" (option 3) + in DHCP library + +The Router DHCP option may contain a list of one or more +routers ([1]). Extend the API of sd_dhcp_lease to return a +list instead of only the first. + +Note that networkd still only uses the first router (if present). +Aside from extending the internal API of the DHCP client, there +is almost no change in behavior. The only visible difference in +behavior is that the "ROUTER" variable in the lease file is now a +list of addresses. + +Note how RFC 2132 does not define certain IP addresses as invalid for the +router option. Still, previously sd_dhcp_lease_get_router() would never +return a "0.0.0.0" address. In fact, the previous API could not +differenciate whether no router option was present, whether it +was invalid, or whether its first router was "0.0.0.0". No longer let +the DHCP client library impose additional restrictions that are not +part of RFC. Instead, the caller should handle this. The patch does +that, and networkd only consideres the first router entry if it is not +"0.0.0.0". + +[1] https://tools.ietf.org/html/rfc2132#section-3.5 + +(cherry picked from commit f8862395e8f802e4106a07ceaaf02b6a1faa5a6d) +--- + src/libsystemd-network/dhcp-lease-internal.h | 4 ++- + src/libsystemd-network/sd-dhcp-lease.c | 50 +++++++++++++++------------- + src/libsystemd-network/test-dhcp-client.c | 7 ++-- + src/network/networkd-dhcp4.c | 37 ++++++++++---------- + src/systemd/sd-dhcp-lease.h | 2 +- + 5 files changed, 54 insertions(+), 46 deletions(-) + +diff --git a/src/libsystemd-network/dhcp-lease-internal.h b/src/libsystemd-network/dhcp-lease-internal.h +index 9d245a9..122042a 100644 +--- a/src/libsystemd-network/dhcp-lease-internal.h ++++ b/src/libsystemd-network/dhcp-lease-internal.h +@@ -41,7 +41,6 @@ struct sd_dhcp_lease { + /* each 0 if unset */ + be32_t address; + be32_t server_address; +- be32_t router; + be32_t next_server; + + bool have_subnet_mask; +@@ -50,6 +49,9 @@ struct sd_dhcp_lease { + bool have_broadcast; + be32_t broadcast; + ++ struct in_addr *router; ++ size_t router_size; ++ + struct in_addr *dns; + size_t dns_size; + +diff --git a/src/libsystemd-network/sd-dhcp-lease.c b/src/libsystemd-network/sd-dhcp-lease.c +index 13badbf..406188c 100644 +--- a/src/libsystemd-network/sd-dhcp-lease.c ++++ b/src/libsystemd-network/sd-dhcp-lease.c +@@ -151,15 +151,15 @@ int sd_dhcp_lease_get_root_path(sd_dhcp_lease *lease, const char **root_path) { + return 0; + } + +-int sd_dhcp_lease_get_router(sd_dhcp_lease *lease, struct in_addr *addr) { ++int sd_dhcp_lease_get_router(sd_dhcp_lease *lease, const struct in_addr **addr) { + assert_return(lease, -EINVAL); + assert_return(addr, -EINVAL); + +- if (lease->router == 0) ++ if (lease->router_size <= 0) + return -ENODATA; + +- addr->s_addr = lease->router; +- return 0; ++ *addr = lease->router; ++ return (int) lease->router_size; + } + + int sd_dhcp_lease_get_netmask(sd_dhcp_lease *lease, struct in_addr *addr) { +@@ -261,6 +261,7 @@ static sd_dhcp_lease *dhcp_lease_free(sd_dhcp_lease *lease) { + } + + free(lease->root_path); ++ free(lease->router); + free(lease->timezone); + free(lease->hostname); + free(lease->domainname); +@@ -387,7 +388,7 @@ static void filter_bogus_addresses(struct in_addr *addresses, size_t *n) { + *n = j; + } + +-static int lease_parse_in_addrs(const uint8_t *option, size_t len, struct in_addr **ret, size_t *n_ret) { ++static int lease_parse_in_addrs(const uint8_t *option, size_t len, bool filter_bogus, struct in_addr **ret, size_t *n_ret) { + assert(option); + assert(ret); + assert(n_ret); +@@ -408,7 +409,8 @@ static int lease_parse_in_addrs(const uint8_t *option, size_t len, struct in_add + if (!addresses) + return -ENOMEM; + +- filter_bogus_addresses(addresses, &n_addresses); ++ if (filter_bogus) ++ filter_bogus_addresses(addresses, &n_addresses); + + free(*ret); + *ret = addresses; +@@ -554,21 +556,19 @@ int dhcp_lease_parse_options(uint8_t code, uint8_t len, const void *option, void + break; + + case SD_DHCP_OPTION_ROUTER: +- if (len >= 4) { +- r = lease_parse_be32(option, 4, &lease->router); +- if (r < 0) +- log_debug_errno(r, "Failed to parse router address, ignoring: %m"); +- } ++ r = lease_parse_in_addrs(option, len, false, &lease->router, &lease->router_size); ++ if (r < 0) ++ log_debug_errno(r, "Failed to parse router addresses, ignoring: %m"); + break; + + case SD_DHCP_OPTION_DOMAIN_NAME_SERVER: +- r = lease_parse_in_addrs(option, len, &lease->dns, &lease->dns_size); ++ r = lease_parse_in_addrs(option, len, true, &lease->dns, &lease->dns_size); + if (r < 0) + log_debug_errno(r, "Failed to parse DNS server, ignoring: %m"); + break; + + case SD_DHCP_OPTION_NTP_SERVER: +- r = lease_parse_in_addrs(option, len, &lease->ntp, &lease->ntp_size); ++ r = lease_parse_in_addrs(option, len, true, &lease->ntp, &lease->ntp_size); + if (r < 0) + log_debug_errno(r, "Failed to parse NTP server, ignoring: %m"); + break; +@@ -820,7 +820,6 @@ int dhcp_lease_new(sd_dhcp_lease **ret) { + if (!lease) + return -ENOMEM; + +- lease->router = INADDR_ANY; + lease->n_ref = 1; + + *ret = lease; +@@ -863,9 +862,12 @@ int dhcp_lease_save(sd_dhcp_lease *lease, const char *lease_file) { + if (r >= 0) + fprintf(f, "NETMASK=%s\n", inet_ntoa(address)); + +- r = sd_dhcp_lease_get_router(lease, &address); +- if (r >= 0) +- fprintf(f, "ROUTER=%s\n", inet_ntoa(address)); ++ r = sd_dhcp_lease_get_router(lease, &addresses); ++ if (r > 0) { ++ fputs("ROUTER=", f); ++ serialize_in_addrs(f, addresses, r); ++ fputc('\n', f); ++ } + + r = sd_dhcp_lease_get_server_identifier(lease, &address); + if (r >= 0) +@@ -899,14 +901,14 @@ int dhcp_lease_save(sd_dhcp_lease *lease, const char *lease_file) { + if (r > 0) { + fputs("DNS=", f); + serialize_in_addrs(f, addresses, r); +- fputs("\n", f); ++ fputc('\n', f); + } + + r = sd_dhcp_lease_get_ntp(lease, &addresses); + if (r > 0) { + fputs("NTP=", f); + serialize_in_addrs(f, addresses, r); +- fputs("\n", f); ++ fputc('\n', f); + } + + r = sd_dhcp_lease_get_domainname(lease, &string); +@@ -917,7 +919,7 @@ int dhcp_lease_save(sd_dhcp_lease *lease, const char *lease_file) { + if (r > 0) { + fputs("DOMAIN_SEARCH_LIST=", f); + fputstrv(f, search_domains, NULL, NULL); +- fputs("\n", f); ++ fputc('\n', f); + } + + r = sd_dhcp_lease_get_hostname(lease, &string); +@@ -1080,9 +1082,11 @@ int dhcp_lease_load(sd_dhcp_lease **ret, const char *lease_file) { + } + + if (router) { +- r = inet_pton(AF_INET, router, &lease->router); +- if (r <= 0) +- log_debug("Failed to parse router %s, ignoring.", router); ++ r = deserialize_in_addrs(&lease->router, router); ++ if (r < 0) ++ log_debug_errno(r, "Failed to deserialize router addresses %s, ignoring: %m", router); ++ else ++ lease->router_size = r; + } + + if (netmask) { +diff --git a/src/libsystemd-network/test-dhcp-client.c b/src/libsystemd-network/test-dhcp-client.c +index fe6788d..0431e2c 100644 +--- a/src/libsystemd-network/test-dhcp-client.c ++++ b/src/libsystemd-network/test-dhcp-client.c +@@ -423,6 +423,7 @@ static void test_addr_acq_acquired(sd_dhcp_client *client, int event, + sd_event *e = userdata; + sd_dhcp_lease *lease; + struct in_addr addr; ++ const struct in_addr *addrs; + + assert_se(client); + assert_se(event == SD_DHCP_CLIENT_EVENT_IP_ACQUIRE); +@@ -438,9 +439,9 @@ static void test_addr_acq_acquired(sd_dhcp_client *client, int event, + assert_se(memcmp(&addr.s_addr, &test_addr_acq_ack[285], + sizeof(addr.s_addr)) == 0); + +- assert_se(sd_dhcp_lease_get_router(lease, &addr) >= 0); +- assert_se(memcmp(&addr.s_addr, &test_addr_acq_ack[308], +- sizeof(addr.s_addr)) == 0); ++ assert_se(sd_dhcp_lease_get_router(lease, &addrs) == 1); ++ assert_se(memcmp(&addrs[0].s_addr, &test_addr_acq_ack[308], ++ sizeof(addrs[0].s_addr)) == 0); + + if (verbose) + printf(" DHCP address acquired\n"); +diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c +index 61f767a..56512e5 100644 +--- a/src/network/networkd-dhcp4.c ++++ b/src/network/networkd-dhcp4.c +@@ -52,7 +52,8 @@ static int route_scope_from_address(const Route *route, const struct in_addr *se + static int link_set_dhcp_routes(Link *link) { + _cleanup_free_ sd_dhcp_route **static_routes = NULL; + bool classless_route = false, static_route = false; +- struct in_addr gateway, address; ++ const struct in_addr *router; ++ struct in_addr address; + int r, n, i; + uint32_t table; + +@@ -123,18 +124,18 @@ static int link_set_dhcp_routes(Link *link) { + link->dhcp4_messages++; + } + +- r = sd_dhcp_lease_get_router(link->dhcp_lease, &gateway); +- if (r == -ENODATA) +- log_link_info_errno(link, r, "DHCP: No gateway received from DHCP server: %m"); +- else if (r < 0) ++ r = sd_dhcp_lease_get_router(link->dhcp_lease, &router); ++ if (r < 0 && r != -ENODATA) + log_link_warning_errno(link, r, "DHCP error: could not get gateway: %m"); ++ else if (r <= 0 || in4_addr_is_null(&router[0])) ++ log_link_info_errno(link, r, "DHCP: No gateway received from DHCP server: %m"); + + /* According to RFC 3442: If the DHCP server returns both a Classless Static Routes option and + a Router option, the DHCP client MUST ignore the Router option. */ + if (classless_route && static_route) + log_link_warning(link, "Classless static routes received from DHCP server: ignoring static-route option and router option"); + +- if (r >= 0 && !classless_route) { ++ if (r > 0 && !classless_route && !in4_addr_is_null(&router[0])) { + _cleanup_(route_freep) Route *route = NULL, *route_gw = NULL; + + r = route_new(&route_gw); +@@ -145,7 +146,7 @@ static int link_set_dhcp_routes(Link *link) { + * route for the gw host so that we can route no matter the + * netmask or existing kernel route tables. */ + route_gw->family = AF_INET; +- route_gw->dst.in = gateway; ++ route_gw->dst.in = router[0]; + route_gw->dst_prefixlen = 32; + route_gw->prefsrc.in = address; + route_gw->scope = RT_SCOPE_LINK; +@@ -164,7 +165,7 @@ static int link_set_dhcp_routes(Link *link) { + return log_link_error_errno(link, r, "Could not allocate route: %m"); + + route->family = AF_INET; +- route->gw.in = gateway; ++ route->gw.in = router[0]; + route->prefsrc.in = address; + route->protocol = RTPROT_DHCP; + route->priority = link->network->dhcp_route_metric; +@@ -185,9 +186,9 @@ static int link_set_dhcp_routes(Link *link) { + + static int dhcp_lease_lost(Link *link) { + _cleanup_(address_freep) Address *address = NULL; ++ const struct in_addr *router; + struct in_addr addr; + struct in_addr netmask; +- struct in_addr gateway; + unsigned prefixlen = 0; + int r; + +@@ -220,15 +221,15 @@ static int dhcp_lease_lost(Link *link) { + + r = address_new(&address); + if (r >= 0) { +- r = sd_dhcp_lease_get_router(link->dhcp_lease, &gateway); +- if (r >= 0) { ++ r = sd_dhcp_lease_get_router(link->dhcp_lease, &router); ++ if (r > 0 && !in4_addr_is_null(&router[0])) { + _cleanup_(route_freep) Route *route_gw = NULL; + _cleanup_(route_freep) Route *route = NULL; + + r = route_new(&route_gw); + if (r >= 0) { + route_gw->family = AF_INET; +- route_gw->dst.in = gateway; ++ route_gw->dst.in = router[0]; + route_gw->dst_prefixlen = 32; + route_gw->scope = RT_SCOPE_LINK; + +@@ -238,7 +239,7 @@ static int dhcp_lease_lost(Link *link) { + r = route_new(&route); + if (r >= 0) { + route->family = AF_INET; +- route->gw.in = gateway; ++ route->gw.in = router[0]; + + route_remove(route, link, NULL); + } +@@ -397,10 +398,10 @@ static int dhcp_lease_renew(sd_dhcp_client *client, Link *link) { + } + + static int dhcp_lease_acquired(sd_dhcp_client *client, Link *link) { ++ const struct in_addr *router; + sd_dhcp_lease *lease; + struct in_addr address; + struct in_addr netmask; +- struct in_addr gateway; + unsigned prefixlen; + uint32_t lifetime = CACHE_INFO_INFINITY_LIFE_TIME; + int r; +@@ -422,20 +423,20 @@ static int dhcp_lease_acquired(sd_dhcp_client *client, Link *link) { + + prefixlen = in4_addr_netmask_to_prefixlen(&netmask); + +- r = sd_dhcp_lease_get_router(lease, &gateway); ++ r = sd_dhcp_lease_get_router(lease, &router); + if (r < 0 && r != -ENODATA) + return log_link_error_errno(link, r, "DHCP error: Could not get gateway: %m"); + +- if (r >= 0) ++ if (r > 0 && !in4_addr_is_null(&router[0])) + log_struct(LOG_INFO, + LOG_LINK_INTERFACE(link), + LOG_LINK_MESSAGE(link, "DHCPv4 address %u.%u.%u.%u/%u via %u.%u.%u.%u", + ADDRESS_FMT_VAL(address), + prefixlen, +- ADDRESS_FMT_VAL(gateway)), ++ ADDRESS_FMT_VAL(router[0])), + "ADDRESS=%u.%u.%u.%u", ADDRESS_FMT_VAL(address), + "PREFIXLEN=%u", prefixlen, +- "GATEWAY=%u.%u.%u.%u", ADDRESS_FMT_VAL(gateway)); ++ "GATEWAY=%u.%u.%u.%u", ADDRESS_FMT_VAL(router[0])); + else + log_struct(LOG_INFO, + LOG_LINK_INTERFACE(link), +diff --git a/src/systemd/sd-dhcp-lease.h b/src/systemd/sd-dhcp-lease.h +index 4875f10..d299c79 100644 +--- a/src/systemd/sd-dhcp-lease.h ++++ b/src/systemd/sd-dhcp-lease.h +@@ -39,7 +39,7 @@ int sd_dhcp_lease_get_t1(sd_dhcp_lease *lease, uint32_t *t1); + int sd_dhcp_lease_get_t2(sd_dhcp_lease *lease, uint32_t *t2); + int sd_dhcp_lease_get_broadcast(sd_dhcp_lease *lease, struct in_addr *addr); + int sd_dhcp_lease_get_netmask(sd_dhcp_lease *lease, struct in_addr *addr); +-int sd_dhcp_lease_get_router(sd_dhcp_lease *lease, struct in_addr *addr); ++int sd_dhcp_lease_get_router(sd_dhcp_lease *lease, const struct in_addr **addr); + int sd_dhcp_lease_get_next_server(sd_dhcp_lease *lease, struct in_addr *addr); + int sd_dhcp_lease_get_server_identifier(sd_dhcp_lease *lease, struct in_addr *addr); + int sd_dhcp_lease_get_dns(sd_dhcp_lease *lease, const struct in_addr **addr); +-- +2.7.4 + +From da9adbb9539bee8886bb680e70616eac8281acd5 Mon Sep 17 00:00:00 2001 +From: Yu Watanabe +Date: Tue, 19 Feb 2019 15:09:28 +0900 +Subject: [PATCH 3/3] network: do not log wrong error cause + +If sd_dhcp_lease_get_router() returns a positive value and the first +router is null, then invalid error cause was logged. + +Follow-up for f8862395e8f802e4106a07ceaaf02b6a1faa5a6d. + +(cherry picked from commit 825ace96b1076ac367d2962e3979f62954145812) +--- + src/network/networkd-dhcp4.c | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c +index 56512e5..29ad323 100644 +--- a/src/network/networkd-dhcp4.c ++++ b/src/network/networkd-dhcp4.c +@@ -125,10 +125,12 @@ static int link_set_dhcp_routes(Link *link) { + } + + r = sd_dhcp_lease_get_router(link->dhcp_lease, &router); +- if (r < 0 && r != -ENODATA) ++ if (IN_SET(r, 0, -ENODATA)) ++ log_link_info(link, "DHCP: No gateway received from DHCP server."); ++ else if (r < 0) + log_link_warning_errno(link, r, "DHCP error: could not get gateway: %m"); +- else if (r <= 0 || in4_addr_is_null(&router[0])) +- log_link_info_errno(link, r, "DHCP: No gateway received from DHCP server: %m"); ++ else if (in4_addr_is_null(&router[0])) ++ log_link_info(link, "DHCP: Received gateway is null."); + + /* According to RFC 3442: If the DHCP server returns both a Classless Static Routes option and + a Router option, the DHCP client MUST ignore the Router option. */ +-- +2.7.4 + diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/patches/systemd/240/rdrand-workaround-on-amd.patch b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/systemd/240/rdrand-workaround-on-amd.patch new file mode 100644 index 000000000000..a209e58bfd78 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/systemd/240/rdrand-workaround-on-amd.patch @@ -0,0 +1,36 @@ +Index: systemd-240/src/basic/random-util.c +=================================================================== +--- systemd-240.orig/src/basic/random-util.c ++++ systemd-240/src/basic/random-util.c +@@ -37,6 +37,7 @@ int rdrand(unsigned long *ret) { + + #if defined(__i386__) || defined(__x86_64__) + static int have_rdrand = -1; ++ unsigned long v; + unsigned char err; + + if (have_rdrand < 0) { +@@ -56,9 +57,22 @@ int rdrand(unsigned long *ret) { + + asm volatile("rdrand %0;" + "setc %1" +- : "=r" (*ret), ++ : "=r" (v), + "=qm" (err)); + ++ /* Apparently on some AMD CPUs RDRAND will sometimes (after a suspend/resume cycle?) report success ++ * via the carry flag but nonetheless return the same fixed value -1 in all cases. This appears to be ++ * a bad bug in the CPU or firmware. Let's deal with that and work-around this by explicitly checking ++ * for this special value (and also 0, just to be sure) and filtering it out. This is a work-around ++ * only however and something AMD really should fix properly. The Linux kernel should probably work ++ * around this issue by turning off RDRAND altogether on those CPUs. See: ++ * https://github.com/systemd/systemd/issues/11810 */ ++ if (v == 0 || v == ULONG_MAX) ++ return log_debug_errno(SYNTHETIC_ERRNO(EUCLEAN), ++ "RDRAND returned suspicious value %lx, assuming bad hardware RNG, not using value.", v); ++ ++ *ret = v; ++ + #if HAS_FEATURE_MEMORY_SANITIZER + __msan_unpoison(&err, sizeof(err)); + #endif diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/patches/varlink/19/ctags.patch b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/varlink/19/ctags.patch new file mode 100644 index 000000000000..88642dcdd751 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/patches/varlink/19/ctags.patch @@ -0,0 +1,12 @@ +diff -ur libvarlink-19.orig/meson.build libvarlink-19/meson.build +--- libvarlink-19.orig/meson.build 2020-03-06 11:42:33.000000000 +0100 ++++ libvarlink-19/meson.build 2020-05-17 13:27:52.972980173 +0200 +@@ -96,8 +96,4 @@ + 'tags', + output : 'tags', + command : ['env', 'etags', '-o', '@0@/TAGS'.format(meson.current_source_dir())] + all_files) +- custom_target( +- 'ctags', +- output : 'ctags', +- command : ['env', 'ctags', '-o', '@0@/tags'.format(meson.current_source_dir())] + all_files) + endif diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/permissions b/deploy/iso/minikube-iso/board/minikube/x86_64/permissions new file mode 100644 index 000000000000..02ad93232e96 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/permissions @@ -0,0 +1,4 @@ +# https://buildroot.org/downloads/manual/manual.html#makedev-syntax + +/usr/bin/toolbox f 755 0 0 - - - - - + diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/post-build.sh b/deploy/iso/minikube-iso/board/minikube/x86_64/post-build.sh new file mode 100755 index 000000000000..38ce764f90dc --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/post-build.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +# Copyright 2021 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -e + +BOARD_DIR=$(dirname "$0") + +cp -f "$BOARD_DIR/grub.cfg" "$BINARIES_DIR/efi-part/EFI/BOOT/grub.cfg" diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/post-image.sh b/deploy/iso/minikube-iso/board/minikube/x86_64/post-image.sh new file mode 100755 index 000000000000..99c560f656db --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/post-image.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +# Copyright 2021 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -e + +GENIMAGE_CFG="$2" + +support/scripts/genimage.sh -c "$GENIMAGE_CFG" + +cd "$BINARIES_DIR" +mkdir -p root/boot +cp bzImage root/boot/bzimage +cp rootfs.cpio.gz root/boot/initrd +mkdir -p root/EFI/BOOT +cp efi-part/EFI/BOOT/* root/EFI/BOOT/ +cp efiboot.img root/EFI/BOOT/ + +mkisofs \ + -o boot.iso \ + -R -J -v -d -N \ + -hide-rr-moved \ + -no-emul-boot \ + -eltorito-platform=efi \ + -eltorito-boot EFI/BOOT/efiboot.img \ + -V "EFIBOOTISO" \ + -A "EFI Boot ISO" \ + root +cd - diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/cni/net.d/.keep b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/cni/net.d/.keep new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/docker/.keep b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/docker/.keep new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/fstab b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/fstab new file mode 100644 index 000000000000..8c56808aa3c6 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/fstab @@ -0,0 +1,5 @@ +# +/dev/root / ext2 rw,noauto 0 1 +proc /proc proc defaults 0 0 +devpts /dev/pts devpts defaults,gid=5,mode=620 0 0 +sysfs /sys sysfs defaults 0 0 diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/motd b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/motd new file mode 100644 index 000000000000..d914a81ab431 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/motd @@ -0,0 +1,7 @@ + _ _ + _ _ ( ) ( ) + ___ ___ (_) ___ (_)| |/') _ _ | |_ __ +/' _ ` _ `\| |/' _ `\| || , < ( ) ( )| '_`\ /'__`\ +| ( ) ( ) || || ( ) || || |\`\ | (_) || |_) )( ___/ +(_) (_) (_)(_)(_) (_)(_)(_) (_)`\___/'(_,__/'`\____) + diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/ssh/sshd_config b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/ssh/sshd_config new file mode 100644 index 000000000000..b7ab4a59a66a --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/ssh/sshd_config @@ -0,0 +1,124 @@ +# $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $ + +# This is the sshd server system-wide configuration file. See +# sshd_config(5) for more information. + +# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin + +# The strategy used for options in the default sshd_config shipped with +# OpenSSH is to specify options with their default value where +# possible, but leave them commented. Uncommented options override the +# default value. + +#Port 22 +#AddressFamily any +#ListenAddress 0.0.0.0 +#ListenAddress :: + +#HostKey /etc/ssh/ssh_host_rsa_key +#HostKey /etc/ssh/ssh_host_dsa_key +#HostKey /etc/ssh/ssh_host_ecdsa_key +#HostKey /etc/ssh/ssh_host_ed25519_key + +# Ciphers and keying +#RekeyLimit default none + +# Logging +#SyslogFacility AUTH +#LogLevel INFO + +# Authentication: + +#LoginGraceTime 2m +#PermitRootLogin prohibit-password +#StrictModes yes +#MaxAuthTries 6 +MaxSessions 1000 + +#PubkeyAuthentication yes + +# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2 +# but this is overridden so installations will only check .ssh/authorized_keys +AuthorizedKeysFile .ssh/authorized_keys + +#AuthorizedPrincipalsFile none + +#AuthorizedKeysCommand none +#AuthorizedKeysCommandUser nobody + +# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts +#HostbasedAuthentication no +# Change to yes if you don't trust ~/.ssh/known_hosts for +# HostbasedAuthentication +#IgnoreUserKnownHosts no +# Don't read the user's ~/.rhosts and ~/.shosts files +#IgnoreRhosts yes + +# To disable tunneled clear text passwords, change to no here! +#PasswordAuthentication yes +#PermitEmptyPasswords no + +# Change to no to disable s/key passwords +#ChallengeResponseAuthentication yes + +# Kerberos options +#KerberosAuthentication no +#KerberosOrLocalPasswd yes +#KerberosTicketCleanup yes +#KerberosGetAFSToken no + +# GSSAPI options +#GSSAPIAuthentication no +#GSSAPICleanupCredentials yes + +# Set this to 'yes' to enable PAM authentication, account processing, +# and session processing. If this is enabled, PAM authentication will +# be allowed through the ChallengeResponseAuthentication and +# PasswordAuthentication. Depending on your PAM configuration, +# PAM authentication via ChallengeResponseAuthentication may bypass +# the setting of "PermitRootLogin without-password". +# If you just want the PAM account and session checks to run without +# PAM authentication, then enable this but set PasswordAuthentication +# and ChallengeResponseAuthentication to 'no'. +#UsePAM no + +#AllowAgentForwarding yes +#AllowTcpForwarding yes +GatewayPorts yes +#X11Forwarding no +#X11DisplayOffset 10 +#X11UseLocalhost yes +#PermitTTY yes +PrintMotd yes +#PrintLastLog yes +#TCPKeepAlive yes +#UseLogin no +#UsePrivilegeSeparation sandbox +#PermitUserEnvironment no +#Compression delayed +#ClientAliveInterval 0 +#ClientAliveCountMax 3 +#UseDNS no +#PidFile /var/run/sshd.pid +#MaxStartups 10:30:100 +PermitTunnel yes +#ChrootDirectory none +#VersionAddendum none + +# no default banner path +#Banner none + +# override default of no subsystems +Subsystem sftp /usr/libexec/sftp-server + +# Example of overriding settings on a per-user basis +#Match User anoncvs +# X11Forwarding no +# AllowTcpForwarding no +# PermitTTY no +# ForceCommand cvs server + +# Temporarily accept ssh-rsa algorithm for openssh >= 8.8, +# until most ssh clients could deprecate ssh-rsa. +HostkeyAlgorithms +ssh-rsa +PubkeyAcceptedAlgorithms +ssh-rsa diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sudoers b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sudoers new file mode 100644 index 000000000000..eb6a2d3d9237 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sudoers @@ -0,0 +1,2 @@ +root ALL=(ALL) ALL +%wheel ALL=(ALL) NOPASSWD: ALL diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/11-tcp-mtu-probing.conf b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/11-tcp-mtu-probing.conf new file mode 100644 index 000000000000..c34569dd8111 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/11-tcp-mtu-probing.conf @@ -0,0 +1,3 @@ +# Turn on MTU probing to avoid network hangs when the Docker MTU is larger than +# the host or upstream network MTU. +net.ipv4.tcp_mtu_probing=1 \ No newline at end of file diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/90-cilium-rp_filter.conf b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/90-cilium-rp_filter.conf new file mode 100644 index 000000000000..aa285916a512 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/90-cilium-rp_filter.conf @@ -0,0 +1,2 @@ +net.ipv4.conf.lxc*.rp_filter = 0 +net.ipv4.conf.cilium_*.rp_filter = 0 diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/disable-ipv6.conf b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/disable-ipv6.conf new file mode 100644 index 000000000000..30b2d9b487d7 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/sysctl.d/disable-ipv6.conf @@ -0,0 +1,2 @@ +net.ipv6.conf.all.disable_ipv6=1 +net.ipv6.conf.default.disable_ipv6=1 diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/journald.conf b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/journald.conf new file mode 100644 index 000000000000..2e9d3eccd0dc --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/journald.conf @@ -0,0 +1,16 @@ +# Copyright 2018 The Kubernetes Authors All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +[Journal] +Storage=volatile diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/network/10-eth1.network b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/network/10-eth1.network new file mode 100644 index 000000000000..63a89ca2af8b --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/network/10-eth1.network @@ -0,0 +1,9 @@ +[Match] +Name=eth1 +Virtualization=qemu + +[Network] +DHCP=ipv4 + +[DHCP] +UseDNS=false diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/network/20-dhcp.network b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/network/20-dhcp.network new file mode 100644 index 000000000000..c9086ef0856a --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/network/20-dhcp.network @@ -0,0 +1,9 @@ +[Match] +Name=eth* + +[Network] +DHCP=ipv4 +LinkLocalAddressing=no + +[DHCP] +ClientIdentifier=mac diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/system/getty.target.wants/getty@tty1.service b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/system/getty.target.wants/getty@tty1.service new file mode 120000 index 000000000000..7bfe0808b1e2 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/system/getty.target.wants/getty@tty1.service @@ -0,0 +1 @@ +/usr/lib/systemd/system/getty@.service \ No newline at end of file diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/system/systemd-timesyncd.service.d/disable-virtualbox.conf b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/system/systemd-timesyncd.service.d/disable-virtualbox.conf new file mode 100644 index 000000000000..c732fdedb2c5 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/systemd/system/systemd-timesyncd.service.d/disable-virtualbox.conf @@ -0,0 +1,2 @@ +[Unit] +ConditionVirtualization=!oracle diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/udev/rules.d/80-net-setup-link.rules b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/udev/rules.d/80-net-setup-link.rules new file mode 120000 index 000000000000..f69baf4515cc --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/etc/udev/rules.d/80-net-setup-link.rules @@ -0,0 +1 @@ +80-net-setup-link.rules \ No newline at end of file diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/init b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/init new file mode 100755 index 000000000000..d6f7a2987b29 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/init @@ -0,0 +1,13 @@ +#!/bin/sh +mkdir /sysroot +# the value 90% borrowed from tcl via boot2docker +mount -t tmpfs -o size=90% tmpfs /sysroot +# copy from rootfs, to be able to do switch_root(8) +tar -C / --exclude=sysroot -cf - . | tar -C /sysroot/ -xf - + +# devtmpfs does not get automounted for initramfs +/bin/mount -t devtmpfs devtmpfs /sysroot/dev +exec 0/sysroot/dev/console +exec 2>/sysroot/dev/console +exec /sbin/switch_root /sysroot /sbin/init "$@" diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/usr/bin/toolbox b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/usr/bin/toolbox new file mode 100644 index 000000000000..2f597cd80b20 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/usr/bin/toolbox @@ -0,0 +1,77 @@ +#!/bin/bash + +set -e +set -o pipefail + +machine=$(uname -m) + +case ${machine} in + aarch64 ) + TOOLBOX_DOCKER_IMAGE=arm64v8/fedora + TOOLBOX_DOCKER_TAG=latest + ;; + x86_64 ) + TOOLBOX_DOCKER_IMAGE=fedora + TOOLBOX_DOCKER_TAG=latest + ;; + * ) + echo "Warning: Unknown machine type ${machine}" >&2 + ;; +esac + +TOOLBOX_USER=root +TOOLBOX_DIRECTORY="/var/lib/toolbox" +TOOLBOX_BIND="--bind=/:/media/root --bind=/usr:/media/root/usr --bind=/run:/media/root/run" +# Ex: "--setenv=KEY=VALUE" +TOOLBOX_ENV="" + +toolboxrc="${HOME}"/.toolboxrc + +# System defaults +if [ -f "/etc/default/toolbox" ]; then + source "/etc/default/toolbox" +fi + +# User overrides +if [ -f "${toolboxrc}" ]; then + source "${toolboxrc}" +fi + +if [[ -n "${TOOLBOX_DOCKER_IMAGE}" ]] && [[ -n "${TOOLBOX_DOCKER_TAG}" ]]; then + TOOLBOX_NAME=${TOOLBOX_DOCKER_IMAGE}-${TOOLBOX_DOCKER_TAG} + have_docker_image="y" +fi + +machinename=$(echo "${USER}-${TOOLBOX_NAME}" | sed -r 's/[^a-zA-Z0-9_.-]/_/g') +machinepath="${TOOLBOX_DIRECTORY}/${machinename}" +osrelease="${machinepath}/etc/os-release" +if [ ! -f "${osrelease}" ] || systemctl is-failed -q "${machinename}" ; then + sudo mkdir -p "${machinepath}" + sudo chown "${USER}:" "${machinepath}" + + if [[ -n "${have_docker_image}" ]]; then + piid=$(sudo --preserve-env podman pull "docker://${TOOLBOX_DOCKER_IMAGE}:${TOOLBOX_DOCKER_TAG}") + pcid=$(sudo --preserve-env podman create "${piid}") + mnt=$(sudo --preserve-env podman mount "${pcid}") + sudo --preserve-env rsync -ax "${mnt}"/ "${machinepath}"/ + sudo --preserve-env podman unmount "${pcid}" + sudo --preserve-env podman rm "${pcid}" + sudo --preserve-env podman rmi "${piid}" + else + echo "Error: No toolbox filesystem specified." >&2 + exit 1 + fi + sudo touch "${osrelease}" +fi + +# Special case for when SSH tries to pass a shell command with -c +if [ "x${1-}" == x-c ]; then + set /bin/sh "$@" +fi + +sudo SYSTEMD_NSPAWN_SHARE_SYSTEM=1 systemd-nspawn \ + --directory="${machinepath}" \ + --capability=all \ + ${TOOLBOX_BIND} \ + ${TOOLBOX_ENV} \ + --user="${TOOLBOX_USER}" "$@" diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/var/lib/boot2docker/.keep b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/var/lib/boot2docker/.keep new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/var/log/.keep b/deploy/iso/minikube-iso/board/minikube/x86_64/rootfs-overlay/var/log/.keep new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/deploy/iso/minikube-iso/board/minikube/x86_64/users b/deploy/iso/minikube-iso/board/minikube/x86_64/users new file mode 100644 index 000000000000..e5ece397b952 --- /dev/null +++ b/deploy/iso/minikube-iso/board/minikube/x86_64/users @@ -0,0 +1 @@ +docker 1000 docker 1000 =tcuser /home/docker /bin/bash wheel,vboxsf,podman,buildkit - diff --git a/deploy/iso/minikube-iso/configs/minikube_defconfig b/deploy/iso/minikube-iso/configs/minikube_aarch64_defconfig similarity index 76% rename from deploy/iso/minikube-iso/configs/minikube_defconfig rename to deploy/iso/minikube-iso/configs/minikube_aarch64_defconfig index 0e1decb0de43..2ab5989e6a61 100644 --- a/deploy/iso/minikube-iso/configs/minikube_defconfig +++ b/deploy/iso/minikube-iso/configs/minikube_aarch64_defconfig @@ -1,11 +1,13 @@ # Architecture -BR2_x86_64=y +BR2_aarch64=y # Toolchain BR2_TOOLCHAIN_BUILDROOT_WCHAR=y # System BR2_SYSTEM_DHCP="eth0" +BR2_TARGET_GENERIC_GETTY_PORT="tty1" +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y # Required tools to create bootable media BR2_PACKAGE_HOST_DOSFSTOOLS=y @@ -14,16 +16,18 @@ BR2_PACKAGE_HOST_MTOOLS=y # Bootloader BR2_TARGET_GRUB2=y -BR2_TARGET_GRUB2_X86_64_EFI=y -BR2_TARGET_GRUB2_BUILTIN_CONFIG="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/iso/x86_64/grub-stub.cfg" +BR2_TARGET_GRUB2_ARM64_EFI=y +BR2_TARGET_GRUB2_BUILTIN_CONFIG="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/grub-stub.cfg" BR2_TARGET_GRUB2_BUILTIN_MODULES="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop udf iso9660 search search_fs_file search_fs_uuid search_label" # Filesystem / image BR2_TARGET_ROOTFS_CPIO=y -BR2_TARGET_ROOTFS_CPIO_GZIP=y -BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/iso/x86_64/post-build.sh" -BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/iso/x86_64/post-image.sh" -BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/iso/x86_64/genimage.cfg" +BR2_TARGET_ROOTFS_CPIO_LZ4=y +# BR2_TARGET_ROOTFS_TAR is not set +BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/post-build.sh" +BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/post-image.sh" +BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/genimage.cfg" + # Linux headers same as kernel, a 4.19 series BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y @@ -34,6 +38,7 @@ BR2_LINUX_KERNEL_CUSTOM_VERSION=y BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.235" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_LINUX_KERNEL_INSTALL_TARGET=y BR2_CCACHE=y @@ -42,8 +47,10 @@ BR2_PACKAGE_ACPID=y # Minikube +BR2_PACKAGE_VBOX_GUEST=n + BR2_OPTIMIZE_2=y -BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/coreos/minikube/patches" +BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/patches" BR2_TOOLCHAIN_BUILDROOT_VENDOR="minikube" BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_TOOLCHAIN_BUILDROOT_CXX=y @@ -52,18 +59,17 @@ BR2_TARGET_GENERIC_HOSTNAME="minikube" BR2_TARGET_GENERIC_ISSUE="Welcome to minikube" BR2_TARGET_GENERIC_PASSWD_SHA512=y BR2_INIT_SYSTEMD=y -BR2_ROOTFS_DEVICE_TABLE="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/coreos/minikube/permissions" +BR2_ROOTFS_DEVICE_TABLE="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/permissions" BR2_SYSTEM_BIN_SH_BASH=y -BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/coreos/minikube/users" -BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/coreos/minikube/rootfs-overlay" +BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/users" +BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/rootfs-overlay" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y -BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/coreos/minikube/linux_defconfig" +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/aarch64/linux_aarch64_defconfig" BR2_LINUX_KERNEL_LZ4=y BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y BR2_PACKAGE_GZIP=y BR2_PACKAGE_XZ=y BR2_PACKAGE_STRACE=y -BR2_PACKAGE_SYSDIG=y BR2_PACKAGE_FINDUTILS=y BR2_PACKAGE_GIT=y BR2_PACKAGE_CIFS_UTILS=y @@ -78,6 +84,7 @@ BR2_PACKAGE_LZ4=y BR2_PACKAGE_LZ4_PROGS=y BR2_PACKAGE_CA_CERTIFICATES=y BR2_PACKAGE_LIBOPENSSL_BIN=y +BR2_PACKAGE_LIBCURL=y BR2_PACKAGE_LIBCURL_CURL=y BR2_PACKAGE_BRIDGE_UTILS=y BR2_PACKAGE_CONNTRACK_TOOLS=y @@ -102,9 +109,6 @@ BR2_PACKAGE_UTIL_LINUX_LOSETUP=y BR2_PACKAGE_UTIL_LINUX_NOLOGIN=y BR2_PACKAGE_UTIL_LINUX_NSENTER=y BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS=y -BR2_TARGET_ROOTFS_ISO9660=y -BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/coreos/minikube/isolinux.cfg" -BR2_TARGET_SYSLINUX=y BR2_PACKAGE_HOST_E2TOOLS=y BR2_PACKAGE_HOST_PYTHON=y BR2_PACKAGE_LIBFUSE=y diff --git a/deploy/iso/minikube-iso/configs/minikube_x86_64_defconfig b/deploy/iso/minikube-iso/configs/minikube_x86_64_defconfig new file mode 100644 index 000000000000..2623be409175 --- /dev/null +++ b/deploy/iso/minikube-iso/configs/minikube_x86_64_defconfig @@ -0,0 +1,116 @@ +# Architecture +BR2_x86_64=y + +# Toolchain +BR2_TOOLCHAIN_BUILDROOT_WCHAR=y + +# System +BR2_SYSTEM_DHCP="eth0" +BR2_TARGET_GENERIC_GETTY_PORT="tty1" +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y + +# Required tools to create bootable media +BR2_PACKAGE_HOST_DOSFSTOOLS=y +BR2_PACKAGE_HOST_GENIMAGE=y +BR2_PACKAGE_HOST_MTOOLS=y + +# Bootloader +# To turn the x86_64 ISO from BIOS to EFI, uncomment the following 7 lines and comment out the 3 lines beneath it. +#BR2_TARGET_GRUB2=y +#BR2_TARGET_GRUB2_X86_64_EFI=y +#BR2_TARGET_GRUB2_BUILTIN_CONFIG="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/grub-stub.cfg" +#BR2_TARGET_GRUB2_BUILTIN_MODULES="boot linux ext2 fat squash4 part_msdos part_gpt normal efi_gop udf iso9660 search search_fs_file search_fs_uuid search_label" +#BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/post-build.sh" +#BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/post-image.sh" +#BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/genimage.cfg" +BR2_TARGET_ROOTFS_ISO9660=y +BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/isolinux.cfg" +BR2_TARGET_SYSLINUX=y + +# Filesystem / image +BR2_TARGET_ROOTFS_CPIO=y +BR2_TARGET_ROOTFS_CPIO_GZIP=y + +# Linux headers same as kernel, a 4.19 series +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_19=y + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.19.235" +BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y +BR2_LINUX_KERNEL_INSTALL_TARGET=y + +BR2_CCACHE=y + +# Packages +BR2_PACKAGE_ACPID=y + +# Minikube + +config BR2_PACKAGE_VBOX_GUEST=y + +BR2_OPTIMIZE_2=y +BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/patches" +BR2_TOOLCHAIN_BUILDROOT_VENDOR="minikube" +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y +BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_GCC_ENABLE_LTO=y +BR2_TARGET_GENERIC_HOSTNAME="minikube" +BR2_TARGET_GENERIC_ISSUE="Welcome to minikube" +BR2_TARGET_GENERIC_PASSWD_SHA512=y +BR2_INIT_SYSTEMD=y +BR2_ROOTFS_DEVICE_TABLE="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/permissions" +BR2_SYSTEM_BIN_SH_BASH=y +BR2_ROOTFS_USERS_TABLES="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/users" +BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/rootfs-overlay" +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_MINIKUBE_PATH)/board/minikube/x86_64/linux_x86_64_defconfig" +BR2_LINUX_KERNEL_LZ4=y +BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y +BR2_PACKAGE_GZIP=y +BR2_PACKAGE_XZ=y +BR2_PACKAGE_STRACE=y +BR2_PACKAGE_FINDUTILS=y +BR2_PACKAGE_GIT=y +BR2_PACKAGE_CIFS_UTILS=y +BR2_PACKAGE_E2TOOLS=y +BR2_PACKAGE_NFS_UTILS=y +BR2_PACKAGE_SSHFS=y +BR2_PACKAGE_XFSPROGS=y +BR2_PACKAGE_PARTED=y +BR2_PACKAGE_SYSSTAT=y +BR2_PACKAGE_LUAJIT=y +BR2_PACKAGE_LZ4=y +BR2_PACKAGE_LZ4_PROGS=y +BR2_PACKAGE_CA_CERTIFICATES=y +BR2_PACKAGE_LIBOPENSSL_BIN=y +BR2_PACKAGE_LIBCURL=y +BR2_PACKAGE_LIBCURL_CURL=y +BR2_PACKAGE_BRIDGE_UTILS=y +BR2_PACKAGE_CONNTRACK_TOOLS=y +BR2_PACKAGE_EBTABLES=y +BR2_PACKAGE_ETHTOOL=y +BR2_PACKAGE_IPROUTE2=y +BR2_PACKAGE_IPTABLES=y +BR2_PACKAGE_RSYNC=y +BR2_PACKAGE_SOCAT=y +BR2_PACKAGE_SUDO=y +BR2_PACKAGE_ACL=y +BR2_PACKAGE_COREUTILS=y +BR2_PACKAGE_HTOP=y +BR2_PACKAGE_OPENVMTOOLS=y +BR2_PACKAGE_PROCPS_NG=y +BR2_PACKAGE_PSMISC=y +BR2_PACKAGE_SYSTEMD_LOGIND=y +BR2_PACKAGE_SYSTEMD_MACHINED=y +BR2_PACKAGE_TAR=y +BR2_PACKAGE_UTIL_LINUX_BINARIES=y +BR2_PACKAGE_UTIL_LINUX_LOSETUP=y +BR2_PACKAGE_UTIL_LINUX_NOLOGIN=y +BR2_PACKAGE_UTIL_LINUX_NSENTER=y +BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS=y +BR2_PACKAGE_HOST_E2TOOLS=y +BR2_PACKAGE_HOST_PYTHON=y +BR2_PACKAGE_LIBFUSE=y diff --git a/deploy/iso/minikube-iso/external.mk b/deploy/iso/minikube-iso/external.mk index de09e68021ef..5a8a5d065e82 100644 --- a/deploy/iso/minikube-iso/external.mk +++ b/deploy/iso/minikube-iso/external.mk @@ -1,2 +1,4 @@ include $(sort $(wildcard $(BR2_EXTERNAL_MINIKUBE_PATH)/linux/*.mk)) include $(sort $(wildcard $(BR2_EXTERNAL_MINIKUBE_PATH)/package/*/*.mk)) +include $(sort $(wildcard $(BR2_EXTERNAL_MINIKUBE_PATH)/arch/x86_64/package/*/*.mk)) +include $(sort $(wildcard $(BR2_EXTERNAL_MINIKUBE_PATH)/arch/aarch64/package/*/*.mk)) diff --git a/deploy/iso/minikube-iso/package/Config.in b/deploy/iso/minikube-iso/package/Config.in index 7fc3d3aad64c..3cb958fae672 100644 --- a/deploy/iso/minikube-iso/package/Config.in +++ b/deploy/iso/minikube-iso/package/Config.in @@ -1,20 +1,7 @@ menu "System tools" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/runc-master/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/crun/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/podman/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/conmon/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/crio-bin/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/crictl-bin/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/automount/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/docker-bin/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/cri-dockerd/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/cni/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/cni-plugins/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/hyperv-daemons/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/gluster/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/vbox-guest/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/containerd-bin/Config.in" - source "$BR2_EXTERNAL_MINIKUBE_PATH/package/buildkit-bin/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/falco-module/Config.in" source "$BR2_EXTERNAL_MINIKUBE_PATH/package/scheduled-stop/Config.in" endmenu diff --git a/deploy/iso/minikube-iso/package/gluster/Config.in b/deploy/iso/minikube-iso/package/gluster/Config.in index 7d2515e177ac..cc5f3b54044a 100644 --- a/deploy/iso/minikube-iso/package/gluster/Config.in +++ b/deploy/iso/minikube-iso/package/gluster/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_GLUSTER bool "gluster" default y - depends on BR2_x86_64 select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_LIBXML2 help diff --git a/hack/jenkins/build_iso.sh b/hack/jenkins/build_iso.sh index 5a95616992ce..8a3c1b52b1dd 100755 --- a/hack/jenkins/build_iso.sh +++ b/hack/jenkins/build_iso.sh @@ -37,6 +37,7 @@ if [[ -z $ISO_VERSION ]]; then now=$(date +%s) export ISO_VERSION=$IV-$now-$ghprbPullId export ISO_BUCKET=minikube-builds/iso/$ghprbPullId + echo "#$ghprPullId - $ghprPullTitle" >> deploy/iso/minikube-iso/CHANGELOG else release=true export ISO_VERSION diff --git a/installers/linux/kvm/Dockerfile.arm64 b/installers/linux/kvm/Dockerfile.arm64 index 272c0a0d9234..07249c7d5e4a 100644 --- a/installers/linux/kvm/Dockerfile.arm64 +++ b/installers/linux/kvm/Dockerfile.arm64 @@ -33,7 +33,7 @@ RUN DEBIAN_FRONTEND=noninteractive \ libvirt-dev:arm64 && \ dpkg --configure -a -RUN curl -sSL https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz | tar -C /usr/local -xzf - +RUN curl -sSL https://golang.org/dl/go${GO_VERSION}.linux-arm64.tar.gz | tar -C /usr/local -xzf - ENV GOPATH /go diff --git a/pkg/drivers/kvm/domain_definition_arm64.go b/pkg/drivers/kvm/domain_definition_arm64.go index 7e7314945af4..85082457f712 100644 --- a/pkg/drivers/kvm/domain_definition_arm64.go +++ b/pkg/drivers/kvm/domain_definition_arm64.go @@ -24,8 +24,9 @@ const domainTmpl = ` {{.Memory}} {{.CPU}} - - + + + {{if .Hidden}} @@ -37,11 +38,10 @@ const domainTmpl = ` {{.NUMANodeXML}} {{end}} - - /usr/share/AAVMF/AAVMF_CODE.fd - /var/lib/libvirt/qemu/nvram/ubuntu_VARS.fd hvm + /usr/share/AAVMF/AAVMF_CODE.fd + /usr/share/AAVMF/AAVMF_VARS.fd @@ -49,7 +49,7 @@ const domainTmpl = ` - + diff --git a/pkg/drivers/kvm/kvm.go b/pkg/drivers/kvm/kvm.go index 7093b48e1c43..733fd31d4129 100644 --- a/pkg/drivers/kvm/kvm.go +++ b/pkg/drivers/kvm/kvm.go @@ -546,7 +546,7 @@ func (d *Driver) undefineDomain(conn *libvirt.Connect, dom *libvirt.Domain) erro return nil } - return dom.Undefine() + return dom.UndefineFlags(libvirt.DOMAIN_UNDEFINE_KEEP_NVRAM) } // lvErr will return libvirt Error struct containing specific libvirt error code, domain, message and level diff --git a/pkg/minikube/download/iso.go b/pkg/minikube/download/iso.go index a4d93c15e831..7adbc82b6c4d 100644 --- a/pkg/minikube/download/iso.go +++ b/pkg/minikube/download/iso.go @@ -22,6 +22,7 @@ import ( "os" "path" "path/filepath" + "runtime" "strings" "time" @@ -40,8 +41,12 @@ const fileScheme = "file" // DefaultISOURLs returns a list of ISO URL's to consult by default, in priority order func DefaultISOURLs() []string { v := version.GetISOVersion() - isoBucket := "minikube-builds/iso/13814" + isoBucket := "minikube-builds/iso/13762" return []string{ + fmt.Sprintf("https://storage.googleapis.com/%s/minikube-%s-%s.iso", isoBucket, v, runtime.GOARCH), + fmt.Sprintf("https://github.com/kubernetes/minikube/releases/download/%s/minikube-%s-%s.iso", v, v, runtime.GOARCH), + fmt.Sprintf("https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-%s-%s.iso", v, runtime.GOARCH), + // fallback to older style ISO urls, without explicit arch reference fmt.Sprintf("https://storage.googleapis.com/%s/minikube-%s.iso", isoBucket, v), fmt.Sprintf("https://github.com/kubernetes/minikube/releases/download/%s/minikube-%s.iso", v, v), fmt.Sprintf("https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-%s.iso", v), diff --git a/site/content/en/docs/commands/start.md b/site/content/en/docs/commands/start.md index 367b8f5f8242..b0032b5a9755 100644 --- a/site/content/en/docs/commands/start.md +++ b/site/content/en/docs/commands/start.md @@ -69,7 +69,7 @@ minikube start [flags] --insecure-registry strings Insecure Docker registries to pass to the Docker daemon. The default service CIDR range will automatically be added. --install-addons If set, install addons. Defaults to true. (default true) --interactive Allow user prompts for more information (default true) - --iso-url strings Locations to fetch the minikube ISO from. (default [https://storage.googleapis.com/minikube-builds/iso/13814/minikube-v1.25.2-1650391217-13814.iso,https://github.com/kubernetes/minikube/releases/download/v1.25.2-1650391217-13814/minikube-v1.25.2-1650391217-13814.iso,https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.25.2-1650391217-13814.iso]) + --iso-url strings Locations to fetch the minikube ISO from. (default [https://storage.googleapis.com/minikube-builds/iso/13762/minikube-v1.25.2-1651892774-13762-amd64.iso,https://github.com/kubernetes/minikube/releases/download/v1.25.2-1651892774-13762/minikube-v1.25.2-1651892774-13762-amd64.iso,https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.25.2-1651892774-13762-amd64.iso,https://storage.googleapis.com/minikube-builds/iso/13762/minikube-v1.25.2-1651892774-13762.iso,https://github.com/kubernetes/minikube/releases/download/v1.25.2-1651892774-13762/minikube-v1.25.2-1651892774-13762.iso,https://kubernetes.oss-cn-hangzhou.aliyuncs.com/minikube/iso/minikube-v1.25.2-1651892774-13762.iso]) --keep-context This will keep the existing kubectl context and will create a minikube context. --kubernetes-version string The Kubernetes version that the minikube VM will use (ex: v1.2.3, 'stable' for v1.23.5, 'latest' for v1.23.6-rc.0). Defaults to 'stable'. --kvm-gpu Enable experimental NVIDIA GPU support in minikube