* [PATCH] lsi53c895a: disable reentrancy detection for MMIO region, too
@ 2023-05-16 9:05 Thomas Huth
2023-05-16 9:27 ` Alexander Bulekov
0 siblings, 1 reply; 3+ messages in thread
From: Thomas Huth @ 2023-05-16 9:05 UTC (permalink / raw)
To: Paolo Bonzini, Alexander Bulekov
Cc: Fam Zheng, qemu-devel, Fiona Ebner, Darren Kenny, Thomas Huth
While trying to use a SCSI disk on the LSI controller with an
older version of Fedora (25), I'm getting:
qemu: warning: Blocked re-entrant IO on MemoryRegion: lsi-mmio at addr: 0x34
and the SCSI controller is not usable. Seems like we have to
disable the reentrancy checker for the MMIO region, too, to
get this working again.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/scsi/lsi53c895a.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
index db27872963..048436352b 100644
--- a/hw/scsi/lsi53c895a.c
+++ b/hw/scsi/lsi53c895a.c
@@ -2307,6 +2307,7 @@ static void lsi_scsi_realize(PCIDevice *dev, Error **errp)
* re-entrancy guard.
*/
s->ram_io.disable_reentrancy_guard = true;
+ s->mmio_io.disable_reentrancy_guard = true;
address_space_init(&s->pci_io_as, pci_address_space_io(dev), "lsi-pci-io");
qdev_init_gpio_out(d, &s->ext_irq, 1);
--
2.31.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] lsi53c895a: disable reentrancy detection for MMIO region, too
2023-05-16 9:05 [PATCH] lsi53c895a: disable reentrancy detection for MMIO region, too Thomas Huth
@ 2023-05-16 9:27 ` Alexander Bulekov
2023-05-16 10:07 ` Thomas Huth
0 siblings, 1 reply; 3+ messages in thread
From: Alexander Bulekov @ 2023-05-16 9:27 UTC (permalink / raw)
To: Thomas Huth
Cc: Paolo Bonzini, Fam Zheng, qemu-devel, Fiona Ebner, Darren Kenny
On 230516 1105, Thomas Huth wrote:
> While trying to use a SCSI disk on the LSI controller with an
> older version of Fedora (25), I'm getting:
>
> qemu: warning: Blocked re-entrant IO on MemoryRegion: lsi-mmio at addr: 0x34
Do you have a gdb backtrace for this one or is there some easy way to
reproduce with just a LiveCD or something? Marking mmio_io re-entrancy
safe would bring back https://gitlab.com/qemu-project/qemu/-/issues/1563
Maybe there is some other workaround here?
-Alex
>
> and the SCSI controller is not usable. Seems like we have to
> disable the reentrancy checker for the MMIO region, too, to
> get this working again.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> hw/scsi/lsi53c895a.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
> index db27872963..048436352b 100644
> --- a/hw/scsi/lsi53c895a.c
> +++ b/hw/scsi/lsi53c895a.c
> @@ -2307,6 +2307,7 @@ static void lsi_scsi_realize(PCIDevice *dev, Error **errp)
> * re-entrancy guard.
> */
> s->ram_io.disable_reentrancy_guard = true;
> + s->mmio_io.disable_reentrancy_guard = true;
>
> address_space_init(&s->pci_io_as, pci_address_space_io(dev), "lsi-pci-io");
> qdev_init_gpio_out(d, &s->ext_irq, 1);
> --
> 2.31.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] lsi53c895a: disable reentrancy detection for MMIO region, too
2023-05-16 9:27 ` Alexander Bulekov
@ 2023-05-16 10:07 ` Thomas Huth
0 siblings, 0 replies; 3+ messages in thread
From: Thomas Huth @ 2023-05-16 10:07 UTC (permalink / raw)
To: Alexander Bulekov
Cc: Paolo Bonzini, Fam Zheng, qemu-devel, Fiona Ebner, Darren Kenny
On 16/05/2023 11.27, Alexander Bulekov wrote:
> On 230516 1105, Thomas Huth wrote:
>> While trying to use a SCSI disk on the LSI controller with an
>> older version of Fedora (25), I'm getting:
>>
>> qemu: warning: Blocked re-entrant IO on MemoryRegion: lsi-mmio at addr: 0x34
>
> Do you have a gdb backtrace for this one or is there some easy way to
> reproduce with just a LiveCD or something?
I reproduced it like this:
./qemu-system-x86_64 -accel kvm -m 2G -machine q35 \
-device lsi53c810,id=lsi1 -device scsi-hd,drive=d0 \
-drive if=none,id=d0,file=.../somedisk.qcow2 \
-cdrom Fedora-Everything-netinst-i386-25-1.3.iso
Where somedisk.qcow2 is an image that contains already some partitions and
file systems.
In the boot menu of Fedora, go to "Troubleshooting" -> "Rescue a Fedora
system" -> "3) Skip to shell"
Then check "dmesg | grep -i 53c" for failure messages, and try to mount a
partition from somedisk.qcow2
> Marking mmio_io re-entrancy
> safe would bring back https://gitlab.com/qemu-project/qemu/-/issues/1563
> Maybe there is some other workaround here?
I think we manually have to disallow endless reentrancy in
lsi_execute_script() ... I'm currently doing some experiments there...
Thomas
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-05-16 10:07 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-16 9:05 [PATCH] lsi53c895a: disable reentrancy detection for MMIO region, too Thomas Huth
2023-05-16 9:27 ` Alexander Bulekov
2023-05-16 10:07 ` Thomas Huth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).