qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 1/1] pc-bios/s390-ccw.img: Fix build


From: Cornelia Huck
Subject: Re: [Qemu-devel] [PATCH 1/1] pc-bios/s390-ccw.img: Fix build
Date: Mon, 15 Aug 2016 12:57:15 +0200

On Mon, 15 Aug 2016 12:28:11 +0200
Christian Borntraeger <address@hidden> wrote:

> Since
> commit a9c87304b76d ("build-sys: fix building with make CFLAGS=.. argument")
> 
> pc-bios/s390-ccw.img build might fail with
> 
> --- snip ---
> main.o: In function `virtio_setup':
> qemu/pc-bios/s390-ccw/main.c:117: undefined reference to `__stack_chk_fail'
> --- snip ---
> 
> Changing the CFLAGS to QEMU_CFLAGS does the trick.
> 
> We also need to fix a potential aliasing bug as we now compile with
> -O2 instead of -O0. This was the warning message:
> 
> --- snip ---
> /home/cborntra/REPOS/qemu/pc-bios/s390-ccw/virtio.c:64:5: error:
> dereferencing type-punned pointer will break strict-aliasing rules
> [-Werror=strict-aliasing]

Can we preserve no strict aliasing somehow? I don't really want to
change the bios code at that point if not needed.

>      return kvm_hypercall(KVM_S390_VIRTIO_CCW_NOTIFY, *(u32 *)&schid,
> --- snip ---
> 
> Signed-off-by: Christian Borntraeger <address@hidden>
> ---
>  pc-bios/s390-ccw/Makefile | 6 ++++--
>  pc-bios/s390-ccw/virtio.c | 7 ++++++-
>  2 files changed, 10 insertions(+), 3 deletions(-)
> 
> diff --git a/pc-bios/s390-ccw/Makefile b/pc-bios/s390-ccw/Makefile
> index 4208cb4..a9dcca4 100644
> --- a/pc-bios/s390-ccw/Makefile
> +++ b/pc-bios/s390-ccw/Makefile
> @@ -10,8 +10,10 @@ $(call set-vpath, $(SRC_PATH)/pc-bios/s390-ccw)
>  .PHONY : all clean build-all
> 
>  OBJECTS = start.o main.o bootmap.o sclp-ascii.o virtio.o virtio-scsi.o
> -CFLAGS += -fPIE -fno-stack-protector -ffreestanding -march=z900
> -CFLAGS += -fno-delete-null-pointer-checks -msoft-float
> +QEMU_CFLAGS := $(filter -W%, $(QEMU_CFLAGS))
> +QEMU_CFLAGS += -ffreestanding -fno-delete-null-pointer-checks -msoft-float
> +QEMU_CFLAGS += -march=z900 -fPIE
> +QEMU_CFLAGS += $(call cc-option, $(QEMU_CFLAGS), -fno-stack-protector)
>  LDFLAGS += -Wl,-pie -nostdlib

Does not look unreasonable, but as I've lost myself in the makefile
dependencies before, I'd like another review.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]