[PATCH] pc-bios/s390-ccw/Makefile: Use -z noexecstack to silence linker warning

Thomas Huth posted 1 patch 10 months, 2 weeks ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230622130822.396793-1-thuth@redhat.com
Maintainers: Thomas Huth <thuth@redhat.com>, Christian Borntraeger <borntraeger@linux.ibm.com>
pc-bios/s390-ccw/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] pc-bios/s390-ccw/Makefile: Use -z noexecstack to silence linker warning
Posted by Thomas Huth 10 months, 2 weeks ago
Recent versions of ld complain when linking the s390-ccw bios:

 /usr/bin/ld: warning: start.o: missing .note.GNU-stack section implies
              executable stack
 /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in
              a future version of the linker

We can silence the warning by telling the linker to mark the stack
as not executable.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 pc-bios/s390-ccw/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pc-bios/s390-ccw/Makefile b/pc-bios/s390-ccw/Makefile
index 2e8cc015aa..acfcd1e71a 100644
--- a/pc-bios/s390-ccw/Makefile
+++ b/pc-bios/s390-ccw/Makefile
@@ -55,7 +55,7 @@ config-cc.mak: Makefile
 	    $(call cc-option,-march=z900,-march=z10)) 3> config-cc.mak
 -include config-cc.mak
 
-LDFLAGS += -Wl,-pie -nostdlib
+LDFLAGS += -Wl,-pie -nostdlib -z noexecstack
 
 build-all: s390-ccw.img s390-netboot.img
 
-- 
2.39.3
Re: [PATCH] pc-bios/s390-ccw/Makefile: Use -z noexecstack to silence linker warning
Posted by Christian Borntraeger 10 months, 2 weeks ago
Am 22.06.23 um 15:08 schrieb Thomas Huth:
> Recent versions of ld complain when linking the s390-ccw bios:
> 
>   /usr/bin/ld: warning: start.o: missing .note.GNU-stack section implies
>                executable stack
>   /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in
>                a future version of the linker
> 
> We can silence the warning by telling the linker to mark the stack
> as not executable.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>   pc-bios/s390-ccw/Makefile | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/pc-bios/s390-ccw/Makefile b/pc-bios/s390-ccw/Makefile
> index 2e8cc015aa..acfcd1e71a 100644
> --- a/pc-bios/s390-ccw/Makefile
> +++ b/pc-bios/s390-ccw/Makefile
> @@ -55,7 +55,7 @@ config-cc.mak: Makefile
>   	    $(call cc-option,-march=z900,-march=z10)) 3> config-cc.mak
>   -include config-cc.mak
>   
> -LDFLAGS += -Wl,-pie -nostdlib
> +LDFLAGS += -Wl,-pie -nostdlib -z noexecstack
>   
>   build-all: s390-ccw.img s390-netboot.img

In the end this should not matter as the resulting binary is not loaded by an
elf loader so this should be fine
Acked-by: Christian Borntraeger <borntraeger@linux.ibm.com>