[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 0/3] Fix dma-reentrancy issues
From: |
Alexander Bulekov |
Subject: |
[PATCH v2 0/3] Fix dma-reentrancy issues |
Date: |
Fri, 27 May 2022 12:19:34 -0400 |
A shot at fixing dma-reentrancy issues.
Patch 1 adds a flag to track device IO activity to DeviceState.
Patch 2 Checks/sets the flag prior to invoking MemoryRegion handlers to
prevent the mmio->dma->mmio case
Patch 3 Sets the flag in dma-related calls to prevent the bh->dma->mmio
case
The related issues are tracked here:
https://gitlab.com/qemu-project/qemu/-/issues/556
There is also a related whitepaper: https://qiuhao.org/Matryoshka_Trap.pdf
Cc: Philippe Mathieu-Daudé <philmd@redhat.com>
Cc: Mauro Matteo Cascella <mcascell@redhat.com>
Cc: Qiuhao Li <Qiuhao.Li@outlook.com>
Cc: Peter Xu <peterx@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: David Hildenbrand <david@redhat.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Peter Maydell <peter.maydell@linaro.org>
Cc: Li Qiang <liq3ea@gmail.com>
Cc: Thomas Huth <thuth@redhat.com>
Cc: Laurent Vivier <lvivier@redhat.com>
Cc: Bandan Das <bsd@redhat.com>
Cc: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Cc: Darren Kenny <darren.kenny@oracle.com>
Cc: Bin Meng <bin.meng@windriver.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Alexander Bulekov (3):
memory: Track whether a Device is engaged in IO
memory: fix PIO/MMIO-initiated dma-reentracy issues
memory: fix bh-initiated dma-reentracy issues
include/hw/pci/pci.h | 13 +++++++++++--
include/hw/qdev-core.h | 3 +++
softmmu/dma-helpers.c | 12 ++++++++++++
softmmu/memory.c | 15 +++++++++++++++
softmmu/trace-events | 1 +
5 files changed, 42 insertions(+), 2 deletions(-)
--
2.33.0
- [PATCH v2 0/3] Fix dma-reentrancy issues,
Alexander Bulekov <=
Re: [PATCH v2 1/3] memory: Track whether a Device is engaged in IO, David Hildenbrand, 2022/05/30