On 2013-09-09 18:58, Peter Maydell wrote:
> On 9 September 2013 17:54, Jan Kiszka <jan.kis...@siemens.com> wrote:
>> DMA requests from one device to another targeting anything else but
>> RAM-backed regions will have to be rejected by QEMU in the future. We
>> cannot map this sanely on a per-device locking model. The filtering will
>> take place early in the memory core, to avoid any risk of deadlocking.
>> No idea if reporting them as aborts will be easily feasible then.
> 
> Why is a DMA request any different from any other communication
> between two devices?

Other communication between devices requiring to take the target
device's lock while holding the one of the initiator will be a no-go as
well. But usually these scenarios are clearly defined, not
guest-influenceable and can be avoided by the initiator. DMA is too
generic. E.g., the guest can easily program a device to "accidentally"
hit another device's MMIO region, creating the precondition for
deadlocks on the host side.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux

Reply via email to