search for: msixtbl_read

Displaying 2 results from an estimated 2 matches for "msixtbl_read".

2012 Mar 24
0
[xen-4.0-testing test] 12413: regressions - FAIL
...rtable) - MAX_MSIX_TABLE_PAGES was also off by one (failing to account for a non-zero table offset); this was also affecting host MSI-X code - struct msixtbl_entry''s table_flags[] was one element larger than necessary due to improper open-coding of BITS_TO_LONGS() - msixtbl_read() unconditionally accessed the physical table, even though the data was only needed in a quarter of all cases - various calculations were done unnecessarily for both of the rather distinct code paths in msixtbl_read() Additionally it is unclear on what basis MAX_MSIX_ACC_EN...
2013 May 08
11
[PATCH 1/2] xen, libxc: init msix addr/data with value from qemu via hypercall
...@@ -168,6 +168,7 @@ struct msixtbl_entry struct { uint32_t msi_ad[3]; /* Shadow of address low, high and data */ } gentries[MAX_MSIX_ACC_ENTRIES]; + unsigned long table_shadow[BITS_TO_LONGS(MAX_MSIX_ACC_ENTRIES)]; struct rcu_head rcu; }; @@ -229,6 +230,9 @@ static int msixtbl_read( nr_entry = (address - entry->gtable) / PCI_MSIX_ENTRY_SIZE; if ( nr_entry >= MAX_MSIX_ACC_ENTRIES ) goto out; + if( !test_bit(nr_entry, entry->table_shadow) ) + goto out; + index = offset / sizeof(uint32_t); *pval = entry-...