[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v8 0/8] memory: prevent dma-reentracy issues
From: |
Alexander Bulekov |
Subject: |
Re: [PATCH v8 0/8] memory: prevent dma-reentracy issues |
Date: |
Wed, 26 Apr 2023 12:03:27 -0400 |
On 230425 1146, Thomas Huth wrote:
> On 21/04/2023 16.27, Alexander Bulekov wrote:
> > v7 -> v8:
> > - Disable reentrancy checks for bcm2835_property's iomem (Patch 7)
> > - Cache DeviceState* in the MemoryRegion to avoid dynamic cast for
> > each MemoryRegion access. (Patch 1)
> > - Make re-entrancy fatal for debug-builds (Patch 8)
>
> Hi Alexander,
>
> I just put your series into a run with the gitlab-CI and it seems this now
> introduced another failure in one of the avocado tests:
>
> https://gitlab.com/thuth/qemu/-/jobs/4171448248#L318
>
> The "IbmPrep40pMachine.test_openbios_and_netbsd" test is failing now.
>
> You can reproduce it manually quite easily:
>
> wget
> https://archive.netbsd.org/pub/NetBSD-archive/NetBSD-7.1.2/iso/NetBSD-7.1.2-prep.iso
>
> ./qemu-system-ppc -nographic -M 40p -boot d -cdrom NetBSD-7.1.2-prep.iso
>
> Without your patches, this prints out "NetBSD/prep BOOT, Revision 1.9" in
> the console, but with your patches, the message does not appear anymore.
#0 trace_memory_region_reentrant_io at trace/trace-softmmu.h:335
#1 0x0000555555f3f315 in access_with_adjusted_size at ../softmmu/memory.c:549
#2 0x0000555555f3f0f6 in memory_region_dispatch_write at
../softmmu/memory.c:1531
#3 0x0000555555f4e655 in flatview_write_continue at ../softmmu/physmem.c:2641
#4 0x0000555555f4b30e in flatview_write at ../softmmu/physmem.c:2683
#5 0x0000555555f4b119 in address_space_write at ../softmmu/physmem.c:2779
#6 0x0000555555c5a233 in raven_io_write at ../hw/pci-host/raven.c:194
#7 0x0000555555f3f409 in memory_region_write_accessor at
../softmmu/memory.c:493
#8 0x0000555555f3f22b in access_with_adjusted_size at ../softmmu/memory.c:568
#9 0x0000555555f3f0f6 in memory_region_dispatch_write at
../softmmu/memory.c:1531
#10 0x0000555555fcf74b in io_writex at ../accel/tcg/cputlb.c:1430
#11 0x0000555555fc33dd in store_helper at ../accel/tcg/cputlb.c:2454
#12 full_le_stl_mmu at ../accel/tcg/cputlb.c:2542
#13 0x00007fffa404b78c in code_gen_buffer
#14 0x0000555555fa510d in cpu_tb_exec at ../accel/tcg/cpu-exec.c:460
#15 0x0000555555fa5ec0 in cpu_loop_exec_tb at ../accel/tcg/cpu-exec.c:893
#16 cpu_exec_loop at ../accel/tcg/cpu-exec.c:1013
#17 0x0000555555fa5697 in cpu_exec_setjmp at ../accel/tcg/cpu-exec.c:1043
#18 0x0000555555fa558e in cpu_exec at ../accel/tcg/cpu-exec.c:1069
#19 0x0000555555fd1f8f in tcg_cpus_exec at ../accel/tcg/tcg-accel-ops.c:81
#20 0x0000555555fd2c16 in rr_cpu_thread_fn at
../accel/tcg/tcg-accel-ops-rr.c:223
#21 0x0000555556156465 in qemu_thread_start at ../util/qemu-thread-posix.c:541
#22 0x00007ffff6960fd4 in start_thread at ./nptl/pthread_create.c:442
#23 0x00007ffff69e166c in clone3 at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
gef⤠p ->name
$4 = 0x555557615bd0 "pci-conf-idx"
Raven owns both the ravio_io MR and the pci-conf MRs. raven_io needs to
be marked re-entrancy safe.
- [PATCH v8 5/8] memory: Allow disabling re-entrancy checking per-MR, (continued)
- [PATCH v8 5/8] memory: Allow disabling re-entrancy checking per-MR, Alexander Bulekov, 2023/04/21
- [PATCH v8 4/8] hw: replace most qemu_bh_new calls with qemu_bh_new_guarded, Alexander Bulekov, 2023/04/21
- [PATCH v8 6/8] lsi53c895a: disable reentrancy detection for script RAM, Alexander Bulekov, 2023/04/21
- [PATCH v8 7/8] bcm2835_property: disable reentrancy detection for iomem, Alexander Bulekov, 2023/04/21
- [PATCH v8 8/8] memory: abort on re-entrancy in debug builds, Alexander Bulekov, 2023/04/21
- Re: [PATCH v8 0/8] memory: prevent dma-reentracy issues, Thomas Huth, 2023/04/25
- Re: [PATCH v8 0/8] memory: prevent dma-reentracy issues,
Alexander Bulekov <=