From patchwork Mon Dec 15 10:32:43 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Sergio Gonzalez Monroy X-Patchwork-Id: 2000 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id A4BAD804B; Mon, 15 Dec 2014 11:32:49 +0100 (CET) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id C7FA88044 for ; Mon, 15 Dec 2014 11:32:46 +0100 (CET) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga101.jf.intel.com with ESMTP; 15 Dec 2014 02:32:45 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.07,579,1413270000"; d="scan'208";a="623887108" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by orsmga001.jf.intel.com with ESMTP; 15 Dec 2014 02:32:44 -0800 Received: from sivswdev02.ir.intel.com (sivswdev02.ir.intel.com [10.237.217.46]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id sBFAWiEi004850 for ; Mon, 15 Dec 2014 10:32:44 GMT Received: from sivswdev02.ir.intel.com (localhost [127.0.0.1]) by sivswdev02.ir.intel.com with ESMTP id sBFAWi4Y003640 for ; Mon, 15 Dec 2014 10:32:44 GMT Received: (from smonroy@localhost) by sivswdev02.ir.intel.com with id sBFAWhYP003636 for dev@dpdk.org; Mon, 15 Dec 2014 10:32:43 GMT From: Sergio Gonzalez Monroy To: dev@dpdk.org Date: Mon, 15 Dec 2014 10:32:43 +0000 Message-Id: <1418639563-3599-1-git-send-email-sergio.gonzalez.monroy@intel.com> X-Mailer: git-send-email 1.8.5.4 In-Reply-To: <1418395427-17406-1-git-send-email-sergio.gonzalez.monroy@intel.com> References: <1418395427-17406-1-git-send-email-sergio.gonzalez.monroy@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v4] doc: add known issue for iommu and igb_uio X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Known issue regarding iommu/VT-d and igb_uio in Linux kernel version 3.15 to 3.17 where unbinding the device from the driver removes the 1:1 mapping in the iommu resulting in IOMMU/DMAR errors when the device tries to access memory. Signed-off-by: Sergio Gonzalez Monroy Acked-by: Bernard Iremonger --- v4: Improve commit log description Add kernel error message info Improve formatting Fix patch charset encoding v3: Remove reference number Add Linux commit links v2: Fix title uppercase Add extra blank line to show proper indentation v1: Known igb_uio issue when iommu/vt-d is on doc/guides/rel_notes/known_issues.rst | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/doc/guides/rel_notes/known_issues.rst b/doc/guides/rel_notes/known_issues.rst index 8ef654a..d26dcfa 100644 --- a/doc/guides/rel_notes/known_issues.rst +++ b/doc/guides/rel_notes/known_issues.rst @@ -1026,3 +1026,35 @@ Stopping the port does not down the link on IntelĀ® 40G ethernet controller | Driver/Module | Poll Mode Driver (PMD) | | | | +--------------------------------+--------------------------------------------------------------------------------------+ + +Devices bound to igb_uio with VT-d enabled do not work on Linux* kernel 3.15-3.17 +--------------------------------------------------------------------------------- + ++--------------------------------+--------------------------------------------------------------------------------------+ +| Title | Devices bound to igb_uio with VT-d enabled do not work on Linux* kernel 3.15-3.17 | ++================================+======================================================================================+ +| Description | | When VT-d is enabled (iommu=pt intel_iommu=on), devices are 1:1 mapped. | +| | In the Linux* kernel unbinding devices from drivers removes that mapping which | +| | result in IOMMU errors. | +| | | Introduced in Linux `kernel 3.15 commit `_, | +| | solved in Linux `kernel 3.18 commit `_. | ++--------------------------------+--------------------------------------------------------------------------------------+ +| Implication | | Devices will not be allowed to access memory, resulting in following kernel errors:| +| | | ``dmar: DRHD: handling fault status reg 2`` | +| | | ``dmar: DMAR:[DMA Read] Request device [02:00.0] fault addr a0c58000`` | +| | | ``DMAR:[fault reason 02] Present bit in context entry is clear`` | ++--------------------------------+--------------------------------------------------------------------------------------+ +| Resolution/ Workaround | | Use earlier or later kernel versions, or avoid driver binding on boot by | +| | blacklisting the driver modules. | +| | | ie. in the case of ixgbe, we can pass the kernel command line option: | +| | | ``modprobe.blacklist=ixgbe`` | +| | | This way we do not need to unbind the device to bind it to igb_uio. | ++--------------------------------+--------------------------------------------------------------------------------------+ +| Affected Environment/ Platform | Linux* systems with kernel versions 3.15 to 3.17 | ++--------------------------------+--------------------------------------------------------------------------------------+ +| Driver/Module | igb_uio module | ++--------------------------------+--------------------------------------------------------------------------------------+