Date: Sun, 1 Mar 2015 10:29:48 +0000 (UTC) From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r279484 - stable/10/sys/x86/iommu Message-ID: <201503011029.t21ATmoE069417@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kib Date: Sun Mar 1 10:29:48 2015 New Revision: 279484 URL: https://svnweb.freebsd.org/changeset/base/279484 Log: MFC r276867: Fix DMAR context allocations for the devices behind PCIe->PCI bridges after dmar driver was converted to use rids. The bus component to calculate context page must be taken from the requestor rid, which is a bridge, and not from the device bus number. Modified: stable/10/sys/x86/iommu/intel_ctx.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/x86/iommu/intel_ctx.c ============================================================================== --- stable/10/sys/x86/iommu/intel_ctx.c Sun Mar 1 10:04:14 2015 (r279483) +++ stable/10/sys/x86/iommu/intel_ctx.c Sun Mar 1 10:29:48 2015 (r279484) @@ -290,7 +290,7 @@ dmar_get_ctx(struct dmar_unit *dmar, dev * higher chance to succeed if the sleep is allowed. */ DMAR_UNLOCK(dmar); - dmar_ensure_ctx_page(dmar, bus); + dmar_ensure_ctx_page(dmar, PCI_RID2BUS(rid)); ctx1 = dmar_get_ctx_alloc(dmar, rid); if (id_mapped) {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201503011029.t21ATmoE069417>