[dpdk-dev] [RFC PATCH 3/5] kni: init and change request for mtu
Hemant Agrawal
hemant.agrawal at nxp.com
Wed May 3 13:21:10 CEST 2017
1. Configure initial mtu.
2. Message to userspace for mtu change
Signed-off-by: Hemant Agrawal <hemant.agrawal at nxp.com>
---
lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h | 1 +
lib/librte_eal/linuxapp/kni/kni_misc.c | 2 ++
lib/librte_kni/rte_kni.c | 1 +
lib/librte_kni/rte_kni.h | 1 +
4 files changed, 5 insertions(+)
diff --git a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h
index c04fefd..2cd7d9a 100644
--- a/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h
+++ b/lib/librte_eal/linuxapp/eal/include/exec-env/rte_kni_common.h
@@ -172,6 +172,7 @@ struct rte_kni_device_info {
/* mbuf size */
unsigned mbuf_size;
+ unsigned int mtu; /**< MTU */
char macaddr[6]; /**< Mac Address */
};
diff --git a/lib/librte_eal/linuxapp/kni/kni_misc.c b/lib/librte_eal/linuxapp/kni/kni_misc.c
index 90879fa..4f99a5e 100644
--- a/lib/librte_eal/linuxapp/kni/kni_misc.c
+++ b/lib/librte_eal/linuxapp/kni/kni_misc.c
@@ -469,6 +469,8 @@ struct kni_net {
memcpy(net_dev->dev_addr, dev_info.macaddr, ETH_ALEN);
}
+ net_dev->mtu = dev_info.mtu;
+
ret = register_netdev(net_dev);
if (ret) {
pr_err("error %i registering device \"%s\"\n",
diff --git a/lib/librte_kni/rte_kni.c b/lib/librte_kni/rte_kni.c
index 8ae632f..a3aab9d 100644
--- a/lib/librte_kni/rte_kni.c
+++ b/lib/librte_kni/rte_kni.c
@@ -373,6 +373,7 @@ struct rte_kni *
dev_info.mbuf_size = conf->mbuf_size;
memcpy(dev_info.macaddr, conf->macaddr, ETH_ADDR_LEN);
+ dev_info.mtu = conf->mtu;
snprintf(ctx->name, RTE_KNI_NAMESIZE, "%s", intf_name);
snprintf(dev_info.name, RTE_KNI_NAMESIZE, "%s", intf_name);
diff --git a/lib/librte_kni/rte_kni.h b/lib/librte_kni/rte_kni.h
index 488db4b..3156e33 100644
--- a/lib/librte_kni/rte_kni.h
+++ b/lib/librte_kni/rte_kni.h
@@ -98,6 +98,7 @@ struct rte_kni_conf {
struct rte_pci_addr addr;
struct rte_pci_id id;
char macaddr[ETH_ADDR_LEN]; /* MAC address assigned to KNI */
+ uint16_t mtu; /* Maximum transmission Unit of KNI*/
__extension__
uint8_t force_bind : 1; /* Flag to bind kernel thread */
--
1.9.1
More information about the dev
mailing list