From patchwork Mon Jun 24 16:47:14 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 55265 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id EACA41BD72; Mon, 24 Jun 2019 18:47:52 +0200 (CEST) Received: from mail-pf1-f193.google.com (mail-pf1-f193.google.com [209.85.210.193]) by dpdk.org (Postfix) with ESMTP id DB0111BD29 for ; Mon, 24 Jun 2019 18:47:32 +0200 (CEST) Received: by mail-pf1-f193.google.com with SMTP id p184so7839455pfp.7 for ; Mon, 24 Jun 2019 09:47:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=0khlawSNIgDeYLk2xnYr3hkFbn+imFT3yJqOIe71Vj8=; b=fAAsQ5zPkkdY/rOG940YE7JrFsW4KVojZC6bahHpsa6qbX1kz1dAKGyydwSbvPGxiB 0WH2ibqgSORym0yUe7caYm1ZRn6hwTxFLy5P5JM3dvtZwJBsvfsu1PfGELcIdR1xGXJ2 YGCgqpCrTNbQpE0WtJErEGnvXJBOEbqJOuI2vR2xR1nqgErHD/lnJdmCbPdR7Xp16qJB JydrT68Am/X7Ph+pJ/ifY6ih+nsShXs+AltQy6XMbJiRREZQID5a1944rU7r49ew/Aau dD9ngRono0W4Aw1gslh4uRe+HFj7NYn2syR4JRf3BAwEjadH7mzXEFGJPxbykmB81uuJ Aisw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=0khlawSNIgDeYLk2xnYr3hkFbn+imFT3yJqOIe71Vj8=; b=h1lI/2xTcpycqQQIaNwNW3nJlo01LIEoVQ/QP/rM5wJHpBIeXfLi+ETKiki6ksIu6F PinCHyOLlGFoO8y7RKjRX0AX3GJsElid9cHpRT7AURiasmj4Eey9kes4qiYA64R9CYhd NuukZLhUuQs7MdSNwWHuEtll2jGb/06qDbvw4lnELBsv28YKfzbcHRYeh8potpbJE0YT 2RpQYLq+fhDkg7e/2MYONFNSkeOQpYpMKsBprwIjQYAxBm5VAIgdeYIWaIL7Hg/Zq+53 rCtgZ6me9wRaaB+Uk7dtX0rgzJhSfelxUtD+SUXUtrTHn8wPBeR7UL9wrw6qK8G7pVp8 4vVQ== X-Gm-Message-State: APjAAAUgWO1iyDsE/fry+KYxPZcZkX0Mb0vNP0tlUqWgp3MySkzMl7tn SMXwOw7i4NvoSJTzZF1DW0GqTk55zWA= X-Google-Smtp-Source: APXvYqz2Md4OIYioWZYrYFg0IsY3nmydTaOb4yoFt+DQrTCJsgW9nIzL2zvUl3OUxzspweXtjy9YRw== X-Received: by 2002:a17:90a:778c:: with SMTP id v12mr24526774pjk.141.1561394851706; Mon, 24 Jun 2019 09:47:31 -0700 (PDT) Received: from hermes.lan (204-195-22-127.wavecable.com. [204.195.22.127]) by smtp.gmail.com with ESMTPSA id f7sm12814023pfd.43.2019.06.24.09.47.30 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Mon, 24 Jun 2019 09:47:30 -0700 (PDT) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger Date: Mon, 24 Jun 2019 09:47:14 -0700 Message-Id: <20190624164714.6560-10-stephen@networkplumber.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190624164714.6560-1-stephen@networkplumber.org> References: <20190610175155.21374-1-stephen@networkplumber.org> <20190624164714.6560-1-stephen@networkplumber.org> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v6 9/9] doc: update KNI documentation 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" Update KNI documentation to reflect current ethtool support. Replace references to out dated tools (ifconfig) with modern iproute2. Tshark is a better replacement for tcpdump. Signed-off-by: Stephen Hemminger --- .../prog_guide/kernel_nic_interface.rst | 9 +++---- .../sample_app_ug/kernel_nic_interface.rst | 24 ++++++++++++------- 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/doc/guides/prog_guide/kernel_nic_interface.rst b/doc/guides/prog_guide/kernel_nic_interface.rst index daf87f4a8edf..5afd05c0a745 100644 --- a/doc/guides/prog_guide/kernel_nic_interface.rst +++ b/doc/guides/prog_guide/kernel_nic_interface.rst @@ -290,7 +290,8 @@ It then puts the mbuf back in the cache. Ethtool ------- -Ethtool is a Linux-specific tool with corresponding support in the kernel -where each net device must register its own callbacks for the supported operations. -The current implementation uses the igb/ixgbe modified Linux drivers for ethtool support. -Ethtool is not supported in i40e and VMs (VF or EM devices). +Ethtool is a Linux-specific tool with corresponding support in the kernel. +The current version of kni provides minimal ethtool functionality +including querying version and link state. It does not support link +control, statistics, or dumping device registers. + diff --git a/doc/guides/sample_app_ug/kernel_nic_interface.rst b/doc/guides/sample_app_ug/kernel_nic_interface.rst index a7e549d5213a..aac4ebd8d4ff 100644 --- a/doc/guides/sample_app_ug/kernel_nic_interface.rst +++ b/doc/guides/sample_app_ug/kernel_nic_interface.rst @@ -21,14 +21,14 @@ The FIFO queues contain pointers to data packets in the DPDK. This: * Provides a faster mechanism to interface with the kernel net stack and eliminates system calls -* Facilitates the DPDK using standard Linux* userspace net tools (tcpdump, ftp, and so on) +* Facilitates the DPDK using standard Linux* userspace net tools (tshark, rsync, and so on) * Eliminate the copy_to_user and copy_from_user operations on packets. The Kernel NIC Interface sample application is a simple example that demonstrates the use of the DPDK to create a path for packets to go through the Linux* kernel. This is done by creating one or more kernel net devices for each of the DPDK ports. -The application allows the use of standard Linux tools (ethtool, ifconfig, tcpdump) with the DPDK ports and +The application allows the use of standard Linux tools (ethtool, iproute, tshark) with the DPDK ports and also the exchange of packets between the DPDK application and the Linux* kernel. The Kernel NIC Interface sample application requires that the @@ -220,13 +220,13 @@ Enable KNI interface and assign an IP address: .. code-block:: console - # ifconfig vEth0_0 192.168.0.1 + # ip addr add dev vEth0_0 192.168.0.1 Show KNI interface configuration and statistics: .. code-block:: console - # ifconfig vEth0_0 + # ip -s -d addr show vEth0_0 The user can also check and reset the packet statistics inside the ``kni`` application by sending the app the USR1 and USR2 signals: @@ -234,16 +234,16 @@ application by sending the app the USR1 and USR2 signals: .. code-block:: console # Print statistics - # kill -SIGUSR1 `pidof kni` + # pkill -USR1 kni # Zero statistics - # kill -SIGUSR2 `pidof kni` + # pkill -USR2 kni Dump network traffic: .. code-block:: console - # tcpdump -i vEth0_0 + # tshark -n -i vEth0_0 The normal Linux commands can also be used to change the MAC address and MTU size used by the physical NIC which corresponds to the KNI interface. @@ -254,13 +254,19 @@ Change the MAC address: .. code-block:: console - # ifconfig vEth0_0 hw ether 0C:01:02:03:04:08 + # ip link set dev vEth0_0 lladdr 0C:01:02:03:04:08 Change the MTU size: .. code-block:: console - # ifconfig vEth0_0 mtu 1450 + # ip link set dev vEth0_0 mtu 1450 + +Limited ethtool support: + +.. code-block:: console + + # ethtool -i vEth0_0 When the ``kni`` application is closed, all the KNI interfaces are deleted from the Linux kernel.