[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [qemu-s390x] [PATCH for-2.11] pc-bios/s390-ccw: Fix problem with inv
From: |
Cornelia Huck |
Subject: |
Re: [qemu-s390x] [PATCH for-2.11] pc-bios/s390-ccw: Fix problem with invalid virtio-scsi LUN when rebooting |
Date: |
Mon, 20 Nov 2017 10:26:12 +0100 |
On Mon, 20 Nov 2017 10:18:38 +0100
Thomas Huth <address@hidden> wrote:
> On 20.11.2017 09:48, Christian Borntraeger wrote:
> > Thomas,
> >
> > does this patch help as well?
> >
> > diff --git a/pc-bios/s390-ccw/Makefile b/pc-bios/s390-ccw/Makefile
> > index 6d0c2ee..2687590 100644
> > --- a/pc-bios/s390-ccw/Makefile
> > +++ b/pc-bios/s390-ccw/Makefile
> > @@ -12,7 +12,7 @@ $(call set-vpath, $(SRC_PATH)/pc-bios/s390-ccw)
> > OBJECTS = start.o main.o bootmap.o sclp.o virtio.o virtio-scsi.o
> > virtio-blkdev.o
> > QEMU_CFLAGS := $(filter -W%, $(QEMU_CFLAGS))
> > QEMU_CFLAGS += -ffreestanding -fno-delete-null-pointer-checks -msoft-float
> > -QEMU_CFLAGS += -march=z900 -fPIE -fno-strict-aliasing
> > +QEMU_CFLAGS += -march=z900 -fPIE -fno-strict-aliasing
> > -fno-zero-initialized-in-bss
> > QEMU_CFLAGS += $(call cc-option, $(QEMU_CFLAGS), -fno-stack-protector)
> > LDFLAGS += -Wl,-pie -nostdlib
>
> No, that alone does not help, the default_scsi_device variable is still
> in the normal .bss section in that case (you can also check that with
> objdump for example). You'd have to apply this patch on top to fix it
> that way:
>
> diff --git a/pc-bios/s390-ccw/virtio-scsi.c b/pc-bios/s390-ccw/virtio-scsi.c
> index c92f5d3..64ab095 100644
> --- a/pc-bios/s390-ccw/virtio-scsi.c
> +++ b/pc-bios/s390-ccw/virtio-scsi.c
> @@ -15,7 +15,7 @@
> #include "scsi.h"
> #include "virtio-scsi.h"
>
> -static ScsiDevice default_scsi_device;
> +static ScsiDevice default_scsi_device = { 0 };
> static VirtioScsiCmdReq req;
> static VirtioScsiCmdResp resp;
>
> ... then the variable is in the .data section instead.
>
> But since the problem with other uninitialized .bss variables is then
> still pending, I think we should rather go with my patch for 2.11 and
> fix future problems properly in v2.12 by initializing the complete .bss
> to zero in the start.S file.
OK, I'll go with that. We can (should) invest more cycles for fixing
the whole class of problems for the next release.
Re: [qemu-s390x] [PATCH for-2.11] pc-bios/s390-ccw: Fix problem with invalid virtio-scsi LUN when rebooting, David Hildenbrand, 2017/11/20
Re: [qemu-s390x] [PATCH for-2.11] pc-bios/s390-ccw: Fix problem with invalid virtio-scsi LUN when rebooting, Cornelia Huck, 2017/11/20