[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] VT-d: fix mask applied to DMIBAR in desktop chipset XSA-59 workaround
commit f8ecf31c31906552522c2a1b0d1cada07d78876e Author: Jan Beulich <jbeulich@xxxxxxxx> AuthorDate: Mon May 26 12:28:46 2014 +0200 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Mon May 26 12:28:46 2014 +0200 VT-d: fix mask applied to DMIBAR in desktop chipset XSA-59 workaround In commit ("VT-d: suppress UR signaling for desktop chipsets") the mask applied to the value read from DMIBAR is to narrow, only the comment accompanying it was correct. Fix that and tag the literal number as "long" at once to avoid eventual compiler warnings. The widest possible value so far is 39 bits; all chipsets covered here but having less than this number of bits have the remaining bits marked reserved (zero), and hence there's no need for making the mask chipset specific. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Acked-by: Yang Zhang <yang.z.zhang@xxxxxxxxx> --- xen/drivers/passthrough/vtd/quirks.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/xen/drivers/passthrough/vtd/quirks.c b/xen/drivers/passthrough/vtd/quirks.c index d917b2f..33f3942 100644 --- a/xen/drivers/passthrough/vtd/quirks.c +++ b/xen/drivers/passthrough/vtd/quirks.c @@ -467,7 +467,7 @@ void pci_vtd_quirk(const struct pci_dev *pdev) case 0xc00: case 0xc04: case 0xc08: /* Haswell */ bar = pci_conf_read32(seg, bus, dev, func, 0x6c); bar = (bar << 32) | pci_conf_read32(seg, bus, dev, func, 0x68); - pa = bar & 0x7fffff000; /* bits 12...38 */ + pa = bar & 0x7ffffff000UL; /* bits 12...38 */ if ( (bar & 1) && pa && page_is_ram_type(paddr_to_pfn(pa), RAM_TYPE_RESERVED) ) { -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |