kni: reduce interface name size
authorMichael Pfeiffer <michael.pfeiffer@tu-ilmenau.de>
Fri, 15 Nov 2019 13:03:28 +0000 (14:03 +0100)
committerDavid Marchand <david.marchand@redhat.com>
Tue, 19 Nov 2019 21:00:32 +0000 (22:00 +0100)
The name in rte_kni_device_info is passed to the kernel, which allows
interface names with at most 16 bytes (IFNAMSIZ). rte_kni_alloc with a
longer name currently trigger a kernel BUG in alloc_netdev_mqs in
net/core/dev.c. Reduce RTE_KNI_NAMESIZE to prevent this situation.

Signed-off-by: Michael Pfeiffer <michael.pfeiffer@tu-ilmenau.de>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
lib/librte_eal/linux/eal/include/rte_kni_common.h

index 2427a96..7313ef5 100644 (file)
 #include <rte_config.h>
 #endif
 
-/**
- * KNI name is part of memzone name.
+/*
+ * KNI name is part of memzone name. Must not exceed IFNAMSIZ.
  */
-#define RTE_KNI_NAMESIZE 32
+#define RTE_KNI_NAMESIZE 16
 
 #define RTE_CACHE_LINE_MIN_SIZE 64