From e3b00f398baeb5f3816d08728dd2dc8a9b408474 Mon Sep 17 00:00:00 2001 From: Jakob Naucke Date: Tue, 18 Jan 2022 11:32:03 +0100 Subject: [PATCH] runtime: -Wl,--s390-pgste for s390x for linking. Required for basic KVM checks on some kernels (e.g. the one RHEL is currently shipping), cf. https://github.com/qemu/qemu/blob/6621441db50d5bae7e34dbd04bf3c57a27a71b32/target/s390x/kvm/meson.build#L15-L16. Must also be applied to netmon in backport. Fixes: #3469 Signed-off-by: Jakob Naucke Co-authored-by: Amulya Meka --- src/runtime/Makefile | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/runtime/Makefile b/src/runtime/Makefile index a8f7ef070d..6fea174a45 100644 --- a/src/runtime/Makefile +++ b/src/runtime/Makefile @@ -496,7 +496,11 @@ BUILDFLAGS := -buildmode=pie -mod=vendor ${BUILDTAGS} # whether stipping the binary ifeq ($(STRIP),yes) - KATA_LDFLAGS := -ldflags "-w -s" + KATA_LDFLAGS = -w -s +endif + +ifeq ($(ARCH),s390x) + KATA_LDFLAGS += -extldflags=-Wl,--s390-pgste endif # Return non-empty string if specified directory exists @@ -528,7 +532,7 @@ monitor: $(MONITOR_OUTPUT) netmon: $(NETMON_RUNTIME_OUTPUT) $(NETMON_RUNTIME_OUTPUT): $(SOURCES) VERSION - $(QUIET_BUILD)(cd $(NETMON_DIR) && go build $(BUILDFLAGS) -o $@ -ldflags "-X main.version=$(VERSION)" $(KATA_LDFLAGS)) + $(QUIET_BUILD)(cd $(NETMON_DIR) && go build $(BUILDFLAGS) -o $@ -ldflags "-X main.version=$(VERSION)" -ldflags "$(KATA_LDFLAGS)") runtime: $(RUNTIME_OUTPUT) $(CONFIGS) .DEFAULT: default @@ -564,10 +568,10 @@ endef GENERATED_FILES += pkg/katautils/config-settings.go $(RUNTIME_OUTPUT): $(SOURCES) $(GENERATED_FILES) $(MAKEFILE_LIST) | show-summary - $(QUIET_BUILD)(cd $(RUNTIME_DIR) && go build $(KATA_LDFLAGS) $(BUILDFLAGS) -o $@ .) + $(QUIET_BUILD)(cd $(RUNTIME_DIR) && go build -ldflags "$(KATA_LDFLAGS)" $(BUILDFLAGS) -o $@ .) $(SHIMV2_OUTPUT): $(SOURCES) $(GENERATED_FILES) $(MAKEFILE_LIST) - $(QUIET_BUILD)(cd $(SHIMV2_DIR)/ && go build $(KATA_LDFLAGS) $(BUILDFLAGS) -o $@ .) + $(QUIET_BUILD)(cd $(SHIMV2_DIR)/ && go build -ldflags "$(KATA_LDFLAGS)" $(BUILDFLAGS) -o $@ .) $(MONITOR_OUTPUT): $(SOURCES) $(GENERATED_FILES) $(MAKEFILE_LIST) .git-commit $(QUIET_BUILD)(cd $(MONITOR_DIR)/ && CGO_ENABLED=0 go build \