qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] xen/pt: use address_space_memory object for mem


From: Igor Druzhinin
Subject: Re: [Qemu-devel] [PATCH] xen/pt: use address_space_memory object for memory region hooks
Date: Tue, 17 Apr 2018 15:18:55 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0

On 17/04/18 15:15, Anthony PERARD wrote:
> On Fri, Apr 06, 2018 at 10:21:23PM +0100, Igor Druzhinin wrote:
>> Commit 99605175c (xen-pt: Fix PCI devices re-attach failed) introduced
>> a subtle bug. As soon as the guest switches off Bus Mastering on the
>> device it immediately causes all the BARs be unmapped due to the DMA
>> address space of the device being changed. This is undesired behavior
>> because the guest may try to communicate with the device after that
>> which triggers the following errors in the logs:
>>
>> [00:05.0] xen_pt_bar_read: Error: Should not read BAR through QEMU. 
>> @0x0000000000000200
>> [00:05.0] xen_pt_bar_write: Error: Should not write BAR through QEMU. 
>> @0x0000000000000200
>>
>> The issue that the original patch tried to workaround (uneven number of
>> region_add/del calls on device attach/detach) was fixed in later QEMU
>> versions.
> 
> Do you know when the issue was fixed?
> 

I haven't tracked down a particular version but the previous behavior of
memory_listener_unregister() was to remove the listener from the list
without calling the callback. It has changed since then and now the
callback is called in listener_del_address_space().

Igor



reply via email to

[Prev in Thread] Current Thread [Next in Thread]