[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stable-8.0.5 11/66] loongarch: mark loongarch_ipi_iocsr re-entrnacy saf
From: |
Michael Tokarev |
Subject: |
[Stable-8.0.5 11/66] loongarch: mark loongarch_ipi_iocsr re-entrnacy safe |
Date: |
Wed, 13 Sep 2023 16:17:35 +0300 |
From: Alexander Bulekov <alxndr@bu.edu>
loongarch_ipi_iocsr MRs rely on re-entrant IO through the ipi_send
function. As such, mark these MRs re-entrancy-safe.
Fixes: a2e1753b80 ("memory: prevent dma-reentracy issues")
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Song Gao <gaosong@loongson.cn>
Message-Id: <20230506112145.3563708-1-alxndr@bu.edu>
Signed-off-by: Song Gao <gaosong@loongson.cn>
(cherry picked from commit 6d0589e0e6c64b888864a2bf980537be20389264)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
diff --git a/hw/intc/loongarch_ipi.c b/hw/intc/loongarch_ipi.c
index aa4bf9eb74..40e98af2ce 100644
--- a/hw/intc/loongarch_ipi.c
+++ b/hw/intc/loongarch_ipi.c
@@ -215,6 +215,10 @@ static void loongarch_ipi_init(Object *obj)
for (cpu = 0; cpu < MAX_IPI_CORE_NUM; cpu++) {
memory_region_init_io(&s->ipi_iocsr_mem[cpu], obj, &loongarch_ipi_ops,
&lams->ipi_core[cpu], "loongarch_ipi_iocsr", 0x48);
+
+ /* loongarch_ipi_iocsr performs re-entrant IO through ipi_send */
+ s->ipi_iocsr_mem[cpu].disable_reentrancy_guard = true;
+
sysbus_init_mmio(sbd, &s->ipi_iocsr_mem[cpu]);
memory_region_init_io(&s->ipi64_iocsr_mem[cpu], obj,
&loongarch_ipi64_ops,
--
2.39.2
- [Stable-8.0.5 01/66] memory: prevent dma-reentracy issues, (continued)
- [Stable-8.0.5 01/66] memory: prevent dma-reentracy issues, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 02/66] async: Add an optional reentrancy guard to the BH API, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 03/66] async: avoid use-after-free on re-entrancy guard, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 04/66] checkpatch: add qemu_bh_new/aio_bh_new checks, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 05/66] hw: replace most qemu_bh_new calls with qemu_bh_new_guarded, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 06/66] lsi53c895a: disable reentrancy detection for script RAM, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 07/66] lsi53c895a: disable reentrancy detection for MMIO region, too, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 08/66] bcm2835_property: disable reentrancy detection for iomem, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 10/66] apic: disable reentrancy detection for apic-msi, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 09/66] raven: disable reentrancy detection for iomem, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 11/66] loongarch: mark loongarch_ipi_iocsr re-entrnacy safe,
Michael Tokarev <=
- [Stable-8.0.5 12/66] pnv_lpc: disable reentrancy detection for lpc-hc, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 57/66] arm64: Restore trapless ptimer access, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 56/66] virtio: Drop out of coroutine context in virtio_load(), Michael Tokarev, 2023/09/13
- [Stable-8.0.5 58/66] hw/char/riscv_htif: Fix printing of console characters on big endian hosts, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 59/66] hw/char/riscv_htif: Fix the console syscall on big endian hosts, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 60/66] hw/intc: Fix upper/lower mtime write calculation, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 61/66] hw/intc: Make rtc variable names consistent, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 63/66] hw/riscv: virt: Fix riscv,pmu DT node path, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 62/66] linux-user/riscv: Use abi type for target_ucontext, Michael Tokarev, 2023/09/13
- [Stable-8.0.5 64/66] target/riscv: fix satp_mode_finalize() when satp_mode.supported = 0, Michael Tokarev, 2023/09/13