On Sun, Jul 10, 2016 at 07:40:53PM +0800, Wan Zongshun wrote:
Do you mean we need enable the V and TV bits to DTE entry after all
DTEs tables were initialized completely?
Yes, this is what my patch does and what fixes the bug that was
reported on machines which have unity-mapping entries.
I checked this function 'init_device_table_dma', and find it just set
V and TV bit, to set translation info valid and DTE bits127:1 valid.
Right, if no other bits are set this blocks all DMA from the gives
device-id.
So I just think all things it should to do are to allow DMA access,
GPA-to-SPA translation should be active, why you add function
comments below is to not allow DMA access and suppress all page
faults?
/*
* Init the device table to not allow DMA access for devices and
* suppress all page faults
*/
Yeah, that comment needs to be updated. Not all DMA is blocked and
page-faults are not suppressed at all. Thanks for noticing.
Joerg