[dpdk-dev] [PATCH v5 0/5] kni: add API to set link status on kernel interface
Dan Gora
dg at adax.com
Fri Oct 19 02:23:53 CEST 2018
Hi All,
Attached is version 5 of a patchset to add a new API function to
set the link status on kernel interfaces created with the KNI kernel
module.
v5
====
* Update Kernel NIC Interface document with new rte_kni option, move
kernel module parameter description here from KNI sample app
document, general cleanup.
* Update Kernel NIC Interface sample application (kni) document
with new command line parameter, remove documentation for rte_kni
kernel module but add reference to it, general cleanup.
* Change link status change sample rate for KNI example app to 500ms
from 100ms.
* Fix bug in parameter parsing in v4 in rte_kni kernel module.
* Fix output formatting of optional parameters for rte_kni with
modinfo.
* Fix permissions of optional parameters for rte_kni.
* Squash patch to add test for rte_kni_update_link into patch
introducing the API function.
> v4
> ====
> * Rework rte_kni_update_link to only take linkup/linkdown as parameter,
> return previous link state, and remove log messages.
>
> * Update patch to set default carrier state to make default carrier
> state configurable by passing the 'carrier=[on|off]' option to
> the rte_kni kernel module. This is necessary in order to allow
> applications which use KNI as pure virtual interfaces without
> corresponding physical ethernet port to use the interfaces without
> having to set the carrier state to 'on' via rte_kni_update_link()
> or by writing to /sys/devices/virtual/net/<ifaceX>/carrier.
> Note that the default is 'off'.
>
> * Add command line flag '-m' to examples/kni to continuously monitor
> and update the KNI interface link status according to the link
> status of the corresponding physical ethernet port.
>
>
> v3
> ====
> * Use separate function to test rte_kni_update_link() in 'test' app.
>
> * Separate changes to 'test' app into separate patch to facilitate
> possible merge with https://patches.dpdk.org/patch/44730/
>
> * Remove changes to set KNI interfaces to 'up' in example/kni
>
> v2
> ====
>
> * Fix bug where "Fixed" and "AutoNeg" were transposed in the link
> status log message.
>
> * Add rte_kni_update_link() to rte_kni_version.map
>
> * Add rte_kni_update_link() tests to kni_autotest
>
> * Update examples/kni to continuously monitor link status and
> update the corresponding kernel interface with
> rte_kni_update_link().
>
> * Minor improvements to examples/kni: Add log message showing how
> to show/zero stats. Improve zeroing statistics.
>
> Note that checkpatches.sh compains about patch 1/5, but this appears
> to be a bug with check-symbol-change or something. If I move the
> fragment of the patch modifying rte_kni_version.map to the bottom of
> the patch file, it doesn't complain any more... I just don't really
> have time to investigate this right now.
thanks
dan
Dan Gora (5):
kni: add API to set link status on kernel interface
kni: set default carrier state of interface
examples/kni: monitor and update link status continually
examples/kni: add log msgs to show and clear stats
examples/kni: improve zeroing statistics
.../prog_guide/kernel_nic_interface.rst | 203 ++++++++++----
.../sample_app_ug/kernel_nic_interface.rst | 249 +++++++++++-------
examples/kni/Makefile | 2 +
examples/kni/main.c | 92 ++++++-
kernel/linux/kni/kni_dev.h | 3 +
kernel/linux/kni/kni_misc.c | 57 +++-
kernel/linux/kni/kni_net.c | 5 +
lib/librte_kni/rte_kni.c | 41 +++
lib/librte_kni/rte_kni.h | 20 ++
lib/librte_kni/rte_kni_version.map | 6 +
test/test/test_kni.c | 77 ++++++
11 files changed, 598 insertions(+), 157 deletions(-)
--
2.19.0
More information about the dev
mailing list