From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pd0-f175.google.com (mail-pd0-f175.google.com [209.85.192.175]) by dpdk.org (Postfix) with ESMTP id 311CF5A5E for ; Tue, 16 Jun 2015 04:45:39 +0200 (CEST) Received: by pdbnf5 with SMTP id nf5so3563287pdb.2 for ; Mon, 15 Jun 2015 19:45:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=0jumfz6+pxBAuVgy+iPFhC7hnGqSziyZAEZUoRY3xag=; b=KDknhAJ+BTEP7olZNTDV3EgY6wyPHvEyAtg2MjVrGgXzv9jFoeL8iV0mOugZuxGNDL UiE8ggg694Yk+h/dXWX764jdIvaGZVoA2yhaa2zrUP3VO0Jmhou6YQyWgh/PHOTsMQtr yy0a+wNGdx+BAW3BOmyAmrSZlXh5J1LW8Ya8p0oV2G2JcGhyjYJ5V8HBrRwXiNBdhyG2 lhahuyNCefzoiswdKO7h8mtJV1xSZKURy+y6o2tatg24UE06sUc3/EocQvEByJU096DT AUYrFu4NygKEKEka8xiuKGPB5TRBD2miDrt6IvxBBWgIdju7Wz6MnzlNbyy2SxT/iF7b wqsA== X-Gm-Message-State: ALoCoQnH54y+JkA1wvlvYgtdLSDuHVZs+Lylf+hIA26mDfnfA6s8fQ1eHFCUX3+3eZTrwwPmOs5n X-Received: by 10.68.235.38 with SMTP id uj6mr54306006pbc.57.1434422738437; Mon, 15 Jun 2015 19:45:38 -0700 (PDT) Received: from [10.16.129.101] (napt.igel.co.jp. [219.106.231.132]) by mx.google.com with ESMTPSA id y3sm3997371pbt.81.2015.06.15.19.45.36 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 15 Jun 2015 19:45:37 -0700 (PDT) Message-ID: <557F8DD0.8070205@igel.co.jp> Date: Tue, 16 Jun 2015 11:45:36 +0900 From: Tetsuya Mukawa User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Bernard Iremonger References: <1434033207-4288-1-git-send-email-bernard.iremonger@intel.com> In-Reply-To: <1434033207-4288-1-git-send-email-bernard.iremonger@intel.com> Content-Type: text/plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH] doc: update port attach and detach in Testpmd Runtime Functions chapter 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: Tue, 16 Jun 2015 02:45:39 -0000 On 2015/06/11 23:33, Bernard Iremonger wrote: > Signed-off-by: Bernard Iremonger > --- > doc/guides/testpmd_app_ug/testpmd_funcs.rst | 96 +++++++++++++++++++++++---- > 1 files changed, 82 insertions(+), 14 deletions(-) > > diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst b/doc/guides/testpmd_app_ug/testpmd_funcs.rst > index 761172e..fef3ceb 100644 > --- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst > +++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst > @@ -1,5 +1,5 @@ > .. BSD LICENSE > - Copyright(c) 2010-2014 Intel Corporation. All rights reserved. > + Copyright(c) 2010-2015 Intel Corporation. All rights reserved. > All rights reserved. > > Redistribution and use in source and binary forms, with or without > @@ -866,31 +866,61 @@ Attach a port specified by pci address or virtual device args. > To attach a new pci device, the device should be recognized by kernel first. > Then it should be moved under DPDK management. > Finally the port can be attached to testpmd. > -On the other hand, to attach a port created by virtual device, above steps are not needed. > + > +For example, to move a pci device using ixgbe under DPDK management: > + > +.. code-block:: console > + > + ./tools/dpdk_nic_bind.py --status > + > + Network devices using DPDK-compatible driver > + ============================================ > + > + > + Network devices using kernel driver > + =================================== > + 0000:0a:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' if=eth2 drv=ixgbe unused= > + > + ./tools/dpdk_nic_bind.py -b igb_uio 0000:0a:00.0 > + ./tools/dpdk_nic_bind.py --status > + > + Network devices using DPDK-compatible driver > + ============================================ > + 0000:0a:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' drv=igb_uio unused= > + > +To attach a port created by virtual device, above steps are not needed. > > port attach (identifier) > > -For example, to attach a port whose pci address is 0000:02:00.0. > +For example, to attach a port whose pci address is 0000:0a:00.0. > > .. code-block:: console > > - testpmd> port attach 0000:02:00.0 > + testpmd> port attach 0000:0a:00.0 > Attaching a new port... > - ... snip ... > + EAL: PCI device 0000:0a:00.0 on NUMA socket -1 > + EAL: probe driver: 8086:10fb rte_ixgbe_pmd > + EAL: PCI memory mapped at 0x7f83bfa00000 > + EAL: PCI memory mapped at 0x7f83bfa80000 > + PMD: eth_ixgbe_dev_init(): MAC: 2, PHY: 18, SFP+: 5 > + PMD: eth_ixgbe_dev_init(): port 0 vendorID=0x8086 deviceID=0x10fb > Port 0 is attached. Now total ports is 1 > Done > + testpmd> > > For example, to attach a port created by pcap PMD. > > .. code-block:: console > > - testpmd> port attach eth_pcap0,iface=eth0 > + testpmd> port attach eth_pcap0 > Attaching a new port... > - ... snip ... > + PMD: Initializing pmd_pcap for eth_pcap0 > + PMD: Creating pcap-backed ethdev on numa socket 0 > Port 0 is attached. Now total ports is 1 > Done > + testpmd> > > -In this case, identifier is "eth_pcap0,iface=eth0". > +In this case, identifier is "eth_pcap0". > This identifier format is the same as "--vdev" format of DPDK applications. > > port detach > @@ -899,21 +929,59 @@ port detach > Detach a specific port. > > Before detaching a port, the port should be closed. > -Also to remove a pci device completely from the system, first detach the port from testpmd. > -Then the device should be moved under kernel management. > -Finally the device can be removed using kernel pci hotplug functionality. > -On the other hand, to remove a port created by a virtual device, above steps are not needed. > > port detach (port_id) > > -For example, to detach a port 0. > +For example, to detach a pci device port 0. > + > +.. code-block:: console > + > + testpmd> port close 0 > + Closing ports... > + Done > + testpmd> port detach 0 > + Detaching a port... > + EAL: PCI device 0000:0a:00.0 on NUMA socket -1 > + EAL: remove driver: 8086:10fb rte_ixgbe_pmd > + EAL: PCI memory unmapped at 0x7f83bfa00000 > + EAL: PCI memory unmapped at 0x7f83bfa80000 > + Done > + testpmd> > + > +For example, to detach a virtual device port 0. > > .. code-block:: console > > + testpmd> port close 0 > + Closing ports... > + Done > testpmd> port detach 0 > Detaching a port... > - ... snip ... > + PMD: Closing pcap ethdev on numa socket 0 > + Port 'eth_pcap0' is detached. Now total ports is 0 > Done > + testpmd> > + > +To remove a pci device completely from the system, first detach the port from testpmd. > +Then the device should be moved under kernel management. > +Finally the device can be removed using kernel pci hotplug functionality. > + > +For example, to move a pci device under kernel management: > + > +.. code-block:: console > + > + ./tools/dpdk_nic_bind.py -b ixgbe 0000:0a:00.0 > + ./tools/dpdk_nic_bind.py --status > + > + Network devices using DPDK-compatible driver > + ============================================ > + > + > + Network devices using kernel driver > + =================================== > + 0000:0a:00.0 '82599ES 10-Gigabit SFI/SFP+ Network Connection' if=eth2 drv=ixgbe unused=igb_uio > + > +To remove a port created by a virtual device, above steps are not needed. > > port start > ~~~~~~~~~~ Acked-by: Tetsuya Mukawa