From patchwork Thu Aug 3 17:19:45 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John McNamara X-Patchwork-Id: 27421 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 E9C05325C; Thu, 3 Aug 2017 19:20:08 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 88CEB324B for ; Thu, 3 Aug 2017 19:20:07 +0200 (CEST) Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 03 Aug 2017 10:19:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos; i="5.41,317,1498546800"; d="scan'208"; a="1158823930" Received: from sivswdev02.ir.intel.com (HELO localhost.localdomain) ([10.237.217.46]) by orsmga001.jf.intel.com with ESMTP; 03 Aug 2017 10:19:47 -0700 From: John McNamara To: dev@dpdk.org Cc: bruce.richardson@intel.com, John McNamara Date: Thu, 3 Aug 2017 18:19:45 +0100 Message-Id: <1501780785-22677-1-git-send-email-john.mcnamara@intel.com> X-Mailer: git-send-email 1.7.0.7 Subject: [dpdk-dev] [PATCH v1] doc: add note about uio not working with uefi secure boot X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Added notes to the documentation warning that if UEFI secure boot is enabled the Linux kernel may disallow the use of UIO on the system, and a suggested workaround of using the vfio-pci kernel module instead of igb_uio or uio_pci_generic. Signed-off-by: John McNamara --- doc/guides/faq/faq.rst | 7 +++++++ doc/guides/linux_gsg/linux_drivers.rst | 8 ++++++++ doc/guides/linux_gsg/sys_reqs.rst | 6 ++++++ 3 files changed, 21 insertions(+) diff --git a/doc/guides/faq/faq.rst b/doc/guides/faq/faq.rst index 308a287..aa1d47d 100644 --- a/doc/guides/faq/faq.rst +++ b/doc/guides/faq/faq.rst @@ -222,3 +222,10 @@ How can hugepage-backed memory be shared among multiple processes? ------------------------------------------------------------------ See the Primary and Secondary examples in the :ref:`multi-process sample application `. + + +Why can't my application receive packets on my system with UEFI Secure Boot enabled? +------------------------------------------------------------------------------------ + +If UEFI secure boot is enabled, the Linux kernel may disallow the use of UIO on the system. +Therefore, devices for use by DPDK should be bound to the ``vfio-pci`` kernel module rather than ``igb_uio`` or ``uio_pci_generic``. diff --git a/doc/guides/linux_gsg/linux_drivers.rst b/doc/guides/linux_gsg/linux_drivers.rst index b3525c0..dfb1fbd 100644 --- a/doc/guides/linux_gsg/linux_drivers.rst +++ b/doc/guides/linux_gsg/linux_drivers.rst @@ -67,6 +67,14 @@ be loaded as shown below: For some devices which lack support for legacy interrupts, e.g. virtual function (VF) devices, the ``igb_uio`` module may be needed in place of ``uio_pci_generic``. +.. note:: + + If UEFI secure boot is enabled, the Linux kernel may disallow the use of + UIO on the system. Therefore, devices for use by DPDK should be bound to + the ``vfio-pci`` kernel module rather than ``igb_uio`` or + ``uio_pci_generic``. For more details see :ref:`linux_gsg_binding_kernel` + below. + Since DPDK release 1.7 onward provides VFIO support, use of UIO is optional for platforms that support using VFIO. diff --git a/doc/guides/linux_gsg/sys_reqs.rst b/doc/guides/linux_gsg/sys_reqs.rst index 0f98876..3f697c5 100644 --- a/doc/guides/linux_gsg/sys_reqs.rst +++ b/doc/guides/linux_gsg/sys_reqs.rst @@ -47,6 +47,12 @@ and high performance of small packets, BIOS setting changes may be needed. Consult the section on :ref:`Enabling Additional Functionality ` for more information on the required changes. +.. note:: + + If UEFI secure boot is enabled, the Linux kernel may disallow the use of UIO on the system. + Therefore, devices for use by DPDK should be bound to the ``vfio-pci`` kernel module rather than ``igb_uio`` or ``uio_pci_generic``. + For more details see :ref:`linux_gsg_binding_kernel`. + Compilation of the DPDK -----------------------