diff options
Diffstat (limited to 'debian/patches')
4 files changed, 138 insertions, 8 deletions
diff --git a/debian/patches/dpdk-dev-examples-ip_pipeline-fix-pmd-driver-parameter.patch b/debian/patches/dpdk-dev-examples-ip_pipeline-fix-pmd-driver-parameter.patch new file mode 100644 index 00000000..6ee2a7ef --- /dev/null +++ b/debian/patches/dpdk-dev-examples-ip_pipeline-fix-pmd-driver-parameter.patch @@ -0,0 +1,39 @@ +From: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com> +Date: Wed, 21 Sep 2016 13:56:31 +0530 +Subject: [PATCH] examples: fix ip_pipeline to load PMD driver correctly + +There is typo in init.c of ip_pipeline example due to which, +invalid file path is added to -d option of EAL i.e path starting +with =. + +*Update* +There was an issue identified in http://dpdk.org/dev/patchwork/patch/16363/ +which is folded in here to stay at just one patch. + +Signed-off-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com> +Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com> + +Origin: Upstream, http://dpdk.org/dev/patchwork/patch/15995/ +Author: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com> +Last-update: 2016-10-04 + +--- + examples/ip_pipeline/init.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/examples/ip_pipeline/init.c b/examples/ip_pipeline/init.c +index cd167f6..27b0aa7 100644 +--- a/examples/ip_pipeline/init.c ++++ b/examples/ip_pipeline/init.c +@@ -236,7 +236,7 @@ app_init_eal(struct app_params *app) + } + + if (p->add_driver) { +- snprintf(buffer, sizeof(buffer), "-d=%s", p->add_driver); ++ snprintf(buffer, sizeof(buffer), "-d%s", p->add_driver); + app->eal_argv[n_args++] = strdup(buffer); + } + +-- +1.9.1 + diff --git a/debian/patches/dpdk-dev-kni-fix-build-with-kernel-4.9.patch b/debian/patches/dpdk-dev-kni-fix-build-with-kernel-4.9.patch new file mode 100644 index 00000000..931965c3 --- /dev/null +++ b/debian/patches/dpdk-dev-kni-fix-build-with-kernel-4.9.patch @@ -0,0 +1,89 @@ +Description: compile error: + CC [M] .../lib/librte_eal/linuxapp/kni/igb_main.o +.../lib/librte_eal/linuxapp/kni/igb_main.c:2317:21: +error: initialization from incompatible pointer type + [-Werror=incompatible-pointer-types] + .ndo_set_vf_vlan = igb_ndo_set_vf_vlan, + ^~~~~~~~~~~~~~~~~~~ + +Linux kernel 4.9 updates API for ndo_set_vf_vlan: +Linux: 79aab093a0b5 ("net: Update API for VF vlan protocol 802.1ad support") + +Use new API for Linux kernels >= 4.9 + +Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> +Tested-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> + +Origin: Upstream, http://dpdk.org/dev/patchwork/patch/16651/ +Author: Luca Boccassi <luca.boccassi@gmail.com> +Last-Update: 2016-10-17 +--- + lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c | 19 +++++++++++++++++++ + lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h | 4 ++++ + 2 files changed, 23 insertions(+) + +--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c ++++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c +@@ -195,7 +195,11 @@ static void igb_process_mdd_event(struct + #ifdef IFLA_VF_MAX + static int igb_ndo_set_vf_mac( struct net_device *netdev, int vf, u8 *mac); + static int igb_ndo_set_vf_vlan(struct net_device *netdev, ++#ifdef HAVE_VF_VLAN_PROTO ++ int vf, u16 vlan, u8 qos, __be16 vlan_proto); ++#else + int vf, u16 vlan, u8 qos); ++#endif + #ifdef HAVE_VF_SPOOFCHK_CONFIGURE + static int igb_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, + bool setting); +@@ -6411,7 +6415,11 @@ static void igb_set_vmvir(struct igb_ada + } + + static int igb_ndo_set_vf_vlan(struct net_device *netdev, ++#ifdef HAVE_VF_VLAN_PROTO ++ int vf, u16 vlan, u8 qos, __be16 vlan_proto) ++#else + int vf, u16 vlan, u8 qos) ++#endif + { + int err = 0; + struct igb_adapter *adapter = netdev_priv(netdev); +@@ -6419,6 +6427,12 @@ static int igb_ndo_set_vf_vlan(struct ne + /* VLAN IDs accepted range 0-4094 */ + if ((vf >= adapter->vfs_allocated_count) || (vlan > VLAN_VID_MASK-1) || (qos > 7)) + return -EINVAL; ++ ++#ifdef HAVE_VF_VLAN_PROTO ++ if (vlan_proto != htons(ETH_P_8021Q)) ++ return -EPROTONOSUPPORT; ++#endif ++ + if (vlan || qos) { + err = igb_vlvf_set(adapter, vlan, !!vlan, vf); + if (err) +@@ -6579,7 +6593,12 @@ static inline void igb_vf_reset(struct i + if (adapter->vf_data[vf].pf_vlan) + igb_ndo_set_vf_vlan(adapter->netdev, vf, + adapter->vf_data[vf].pf_vlan, ++#ifdef HAVE_VF_VLAN_PROTO ++ adapter->vf_data[vf].pf_qos, ++ htons(ETH_P_8021Q)); ++#else + adapter->vf_data[vf].pf_qos); ++#endif + else + igb_clear_vf_vfta(adapter, vf); + #endif +--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h ++++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h +@@ -3906,6 +3906,10 @@ skb_set_hash(struct sk_buff *skb, __u32 + #endif /* !RHEL 7.2 */ + #endif /* 4.0.0 */ + ++#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) ) ++#define HAVE_VF_VLAN_PROTO ++#endif /* >= 4.9.0 */ ++ + #if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,1,0) ) + /* ndo_bridge_getlink adds new nlflags parameter */ + #define HAVE_NDO_BRIDGE_GETLINK_NLFLAGS diff --git a/debian/patches/fix-vhost-user-socket-permission.patch b/debian/patches/fix-vhost-user-socket-permission.patch index ab3d6322..e75cbc25 100644 --- a/debian/patches/fix-vhost-user-socket-permission.patch +++ b/debian/patches/fix-vhost-user-socket-permission.patch @@ -27,7 +27,7 @@ Fixes LP: #1546565 Forwarded: yes Author: Christian Ehrhardt <christian.ehrhardt@canonical.com> -Last-Update: 2016-07-25 +Last-Update: 2016-09-28 diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_ug/run_app.rst index 7712bd2..28776b9 100644 @@ -361,11 +361,11 @@ index b35594d..dbdb8ad 100644 #define MAX_VIRTIO_BACKLOG 128 static void vhost_user_server_new_connection(int fd, void *data, int *remove); -@@ -682,6 +684,7 @@ rte_vhost_driver_register(const char *path, uint64_t flags) - if (!vsocket) - goto out; - memset(vsocket, 0, sizeof(struct vhost_user_socket)); +@@ -699,6 +701,7 @@ + vsocket->is_server = true; + ret = vhost_user_create_server(vsocket); + } + rte_eal_set_socket_permissions(path); - vsocket->path = strdup(path); - vsocket->connfd = -1; - + if (ret < 0) { + free(vsocket->path); + free(vsocket); diff --git a/debian/patches/series b/debian/patches/series index 5c0a2991..0d8fd299 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -18,4 +18,6 @@ dpdk-dev-ppc-enable-4-7-sched-enable-on-ppc64le.patch dpdk-dev-ppc-enable-5-7-table-fix-verification-on-hash-bucket-header-alignme.patch dpdk-dev-ppc-enable-6-7-config-enable-packet-framework-on-ppc64le.patch dpdk-dev-ppc-enable-7-7-examples-ip_pipeline-fix-lcore-mapping-for-ppc64.patch +dpdk-dev-examples-ip_pipeline-fix-pmd-driver-parameter.patch +dpdk-dev-kni-fix-build-with-kernel-4.9.patch |