From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id B1A509A94 for ; Wed, 25 Feb 2015 13:19:44 +0100 (CET) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga101.fm.intel.com with ESMTP; 25 Feb 2015 04:19:12 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,644,1418112000"; d="scan'208";a="690531235" Received: from irsmsx154.ger.corp.intel.com ([163.33.192.96]) by orsmga002.jf.intel.com with ESMTP; 25 Feb 2015 04:19:12 -0800 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.218]) by IRSMSX154.ger.corp.intel.com ([169.254.12.237]) with mapi id 14.03.0195.001; Wed, 25 Feb 2015 12:19:11 +0000 From: "Iremonger, Bernard" To: "Richardson, Bruce" , "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH 2/2] doc: update programmers guide for uio_pci_generic Thread-Index: AQHQUE770X1fJ3HFQEyTvHfFebnZ6p0BSTOw Date: Wed, 25 Feb 2015 12:19:10 +0000 Message-ID: <8CEF83825BEC744B83065625E567D7C2049ED878@IRSMSX108.ger.corp.intel.com> References: <1424795260-13793-1-git-send-email-bruce.richardson@intel.com> <1424795260-13793-3-git-send-email-bruce.richardson@intel.com> In-Reply-To: <1424795260-13793-3-git-send-email-bruce.richardson@intel.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.181] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH 2/2] doc: update programmers guide for uio_pci_generic 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: , X-List-Received-Date: Wed, 25 Feb 2015 12:19:45 -0000 > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Bruce Richardson > Sent: Tuesday, February 24, 2015 4:28 PM > To: dev@dpdk.org > Subject: [dpdk-dev] [PATCH 2/2] doc: update programmers guide for uio_pci= _generic >=20 > Since DPDK now has support for the in-tree uio_pci_generic driver, update= the programmers guide > document to reference this module, and to use it in preference to the igb= _uio driver, which is DPDK- > specific. >=20 > Signed-off-by: Bruce Richardson > --- > doc/guides/prog_guide/env_abstraction_layer.rst | 8 +++= +---- > doc/guides/prog_guide/intel_dpdk_xen_based_packet_switch_sol.rst | 6 +++= --- > doc/guides/prog_guide/kernel_nic_interface.rst | 2 +- > doc/guides/prog_guide/poll_mode_drv_emulated_virtio_nic.rst | 8 +++= +---- > doc/guides/prog_guide/poll_mode_drv_paravirtual_vmxnets_nic.rst | 2 +- > 5 files changed, 13 insertions(+), 13 deletions(-) >=20 > diff --git a/doc/guides/prog_guide/env_abstraction_layer.rst > b/doc/guides/prog_guide/env_abstraction_layer.rst > index 231e266..b5321c3 100644 > --- a/doc/guides/prog_guide/env_abstraction_layer.rst > +++ b/doc/guides/prog_guide/env_abstraction_layer.rst > @@ -66,7 +66,7 @@ EAL in a Linux-userland Execution Environment > --------------------------------------------- >=20 > In a Linux user space environment, the DPDK application runs as a user-s= pace application using the > pthread library. > -PCI information about devices and address space is discovered through th= e /sys kernel interface and > through a module called igb_uio. > +PCI information about devices and address space is discovered through th= e /sys kernel interface and > through kernel modules such as uio_pci_generic, or igb_uio. > Refer to the UIO: User-space drivers documentation in the Linux kernel. = This memory is mmap'd in > the application. >=20 > The EAL performs physical memory allocation using mmap() in hugetlbfs (u= sing huge page sizes to > increase performance). > @@ -134,10 +134,10 @@ PCI Access > ~~~~~~~~~~ >=20 > The EAL uses the /sys/bus/pci utilities provided by the kernel to scan t= he content on the PCI bus. > - > -To access PCI memory, a kernel module called igb_uio provides a /dev/uio= X device file > +To access PCI memory, a kernel module called uio_pci_generic provides a > +/dev/uioX device file and resource files in /sys > that can be mmap'd to obtain access to PCI address space from the applic= ation. > -It uses the uio kernel feature (userland driver). > +The DPDK-specific igb_uio module can also be used for this. Both drivers= use the uio kernel feature > (userland driver). >=20 > Per-lcore and Shared Variables > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > diff --git a/doc/guides/prog_guide/intel_dpdk_xen_based_packet_switch_sol= .rst > b/doc/guides/prog_guide/intel_dpdk_xen_based_packet_switch_sol.rst > index 1f1e04f..a0dd959 100644 > --- a/doc/guides/prog_guide/intel_dpdk_xen_based_packet_switch_sol.rst > +++ b/doc/guides/prog_guide/intel_dpdk_xen_based_packet_switch_sol.rst > @@ -306,12 +306,12 @@ Building and Running the Switching Backend > Refer to the *DPDK Getting Started Guide* for more information o= n memory management in the > DPDK. > In the above command, 4 GB memory is reserved (2048 of 2 MB page= s) for DPDK. >=20 > -#. Load igb_uio and bind one Intel NIC controller to igb_uio: > +#. Load uio_pci_generic and bind one Intel NIC controller to it: >=20 > .. code-block:: console >=20 > - insmod x86_64-native-linuxapp-gcc/kmod/igb_uio.ko > - python tools/dpdk_nic_bind.py -b igb_uio 0000:09:00:00.0 Hi Bruce, Should the information about igb_uio be retained alongside the new informat= ion about uio_pci_generic? > + modprobe uio_pci_generic > + python tools/dpdk_nic_bind.py -b uio_pci_generic > + 0000:09:00:00.0 >=20 > In this case, 0000:09:00.0 is the PCI address for the NIC controller= . >=20 > diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst > b/doc/guides/prog_guide/kernel_nic_interface.rst > index 0276019..9ed7688 100644 > --- a/doc/guides/prog_guide/kernel_nic_interface.rst > +++ b/doc/guides/prog_guide/kernel_nic_interface.rst > @@ -224,7 +224,7 @@ Otherwise, by default, KNI will not enable its backen= d support capability. >=20 > Of course, as a prerequisite, the vhost/vhost-net kernel CONFIG should b= e chosen before compiling > the kernel. >=20 > -#. Compile the DPDK and insert igb_uio as normal. > +#. Compile the DPDK and insert uio_pci_generic/igb_uio kernel modules a= s normal. >=20 > #. Insert the KNI kernel module: >=20 > diff --git a/doc/guides/prog_guide/poll_mode_drv_emulated_virtio_nic.rst > b/doc/guides/prog_guide/poll_mode_drv_emulated_virtio_nic.rst > index 86f4f60..b0a6250 100644 > --- a/doc/guides/prog_guide/poll_mode_drv_emulated_virtio_nic.rst > +++ b/doc/guides/prog_guide/poll_mode_drv_emulated_virtio_nic.rst > @@ -113,7 +113,7 @@ Host2VM communication example >=20 > insmod rte_kni.ko >=20 > - Other basic DPDK preparations like hugepage enabling, igb_uio port b= inding are not listed here. > + Other basic DPDK preparations like hugepage enabling, uio port bindi= ng are not listed here. > Please refer to the *DPDK Getting Started Guide* for detailed instru= ctions. >=20 > #. Launch the kni user application: > @@ -154,7 +154,7 @@ Host2VM communication example > In the above example, virtio port 0 in the guest VM will be associat= ed with vEth0, which in turns > corresponds to a physical port, > which means received packets come from vEth0, and transmitted packet= s is sent to vEth0. >=20 > -#. In the guest, bind the virtio device to the igb_uio kernel module an= d start the forwarding > application. > +#. In the guest, bind the virtio device to the uio_pci_generic kernel m= odule and start the forwarding > application. > When the virtio port in guest bursts rx, it is getting packets from = the raw socket's receive queue. > When the virtio port bursts tx, it is sending packet to the tx_q. >=20 > @@ -162,8 +162,8 @@ Host2VM communication example >=20 > modprobe uio > echo 512 > /sys/devices/system/node/node0/hugepages/hugepages-20= 48kB/nr_hugepages > - insmod x86_64-native-linuxapp-gcc/kmod/igb_uio.ko > - python tools/dpdk_nic_bind.py -b igb_uio 00:03.0 Should the information about igb_uio be retained alongside the new informat= ion about uio_pci_generic? > + modprobe uio_pci_generic > + python tools/dpdk_nic_bind.py -b uio_pci_generic 00:03.0 >=20 > We use testpmd as the forwarding application in this example. >=20 > diff --git a/doc/guides/prog_guide/poll_mode_drv_paravirtual_vmxnets_nic.= rst > b/doc/guides/prog_guide/poll_mode_drv_paravirtual_vmxnets_nic.rst > index e48bc13..769723e 100644 > --- a/doc/guides/prog_guide/poll_mode_drv_paravirtual_vmxnets_nic.rst > +++ b/doc/guides/prog_guide/poll_mode_drv_paravirtual_vmxnets_nic.rst > @@ -150,7 +150,7 @@ This section describes an example setup for Phy-vSwit= ch-VM-Phy > communication. >=20 > .. note:: >=20 > - Other instructions on preparing to use DPDK such as, hugepage enabli= ng, igb_uio port binding are > not listed here. > + Other instructions on preparing to use DPDK such as, hugepage enabli= ng, uio port binding are not > listed here. > Please refer to *DPDK Getting Started Guide and DPDK Sample Applicat= ion's User Guide* for > detailed instructions. >=20 > The packet reception and transmission flow path is: > -- > 2.1.0 Regards, Bernard.