[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen stable-4.16] VT-d: constrain IGD check
commit 4d42cc4d25c35ca381370a1fa0b45350723d1308 Author: Jan Beulich <jbeulich@xxxxxxxx> AuthorDate: Tue Mar 21 13:52:20 2023 +0100 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Tue Mar 21 13:52:20 2023 +0100 VT-d: constrain IGD check Marking a DRHD as controlling an IGD isn't very sensible without checking that at the very least it's a graphics device that lives at 0000:00:02.0. Re-use the reading of the class-code to control both the clearing of "gfx_only" and the setting of "igd_drhd_address". Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx> master commit: f8c4317295fa1cde1a81779b7e362651c084efb8 master date: 2023-03-14 10:44:08 +0100 --- xen/drivers/passthrough/vtd/dmar.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/xen/drivers/passthrough/vtd/dmar.c b/xen/drivers/passthrough/vtd/dmar.c index 33a12b2ae9..9ec49936b8 100644 --- a/xen/drivers/passthrough/vtd/dmar.c +++ b/xen/drivers/passthrough/vtd/dmar.c @@ -391,15 +391,12 @@ static int __init acpi_parse_dev_scope( if ( drhd ) { - if ( (seg == 0) && (bus == 0) && (path->dev == 2) && - (path->fn == 0) ) - igd_drhd_address = drhd->address; - - if ( gfx_only && - pci_conf_read8(PCI_SBDF(seg, bus, path->dev, path->fn), + if ( pci_conf_read8(PCI_SBDF(seg, bus, path->dev, path->fn), PCI_CLASS_DEVICE + 1) != 0x03 /* PCI_BASE_CLASS_DISPLAY */ ) gfx_only = false; + else if ( !seg && !bus && path->dev == 2 && !path->fn ) + igd_drhd_address = drhd->address; } break; -- generated by git-patchbot for /home/xen/git/xen.git#stable-4.16
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |