diff options
-rw-r--r-- | src/plugins/dpdk/device/dpdk_priv.h | 1 | ||||
-rw-r--r-- | src/plugins/dpdk/device/init.c | 11 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/plugins/dpdk/device/dpdk_priv.h b/src/plugins/dpdk/device/dpdk_priv.h index a86a1aba7ec..64cd10dc23d 100644 --- a/src/plugins/dpdk/device/dpdk_priv.h +++ b/src/plugins/dpdk/device/dpdk_priv.h @@ -37,7 +37,6 @@ _(coremask, c) \ _(nchannels, n) \ #define foreach_eal_single_hyphen_arg \ -_(blacklist, b) \ _(mem-alloc-request, m) \ _(force-ranks, r) diff --git a/src/plugins/dpdk/device/init.c b/src/plugins/dpdk/device/init.c index f1d1b008279..9d4aeed6924 100644 --- a/src/plugins/dpdk/device/init.c +++ b/src/plugins/dpdk/device/init.c @@ -1168,7 +1168,7 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input) u8 file_prefix = 0; u8 *socket_mem = 0; u8 *huge_dir_path = 0; - u32 vendor, device; + u32 vendor, device, domain, bus, func; huge_dir_path = format (0, "%s/hugepages%c", vlib_unix_get_runtime_dir (), 0); @@ -1241,6 +1241,15 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input) tmp = format (0, "--no-pci%c", 0); vec_add1 (conf->eal_init_args, tmp); } + else + if (unformat + (input, "blacklist %x:%x:%x.%x", &domain, &bus, &device, &func)) + { + tmp = + format (0, "-b %04x:%02x:%02x.%x%c", domain, bus, device, func, + 0); + vec_add1 (conf->eal_init_args, tmp); + } else if (unformat (input, "blacklist %x:%x", &vendor, &device)) { u32 blacklist_entry; |