The default of 16 is too low for larger systems.
Upper bound is the maximum number of fd's that can be passed to
secondary process (253) and the maximum number of queue's allowed
by Linux kernel (256).  Both these manifest constants, are not
exposed in visible kernel API.

Signed-off-by: Stephen Hemminger <step...@networkplumber.org>
---
 drivers/net/tap/meson.build | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/tap/meson.build b/drivers/net/tap/meson.build
index 5e5a3ad3c6..4853efb236 100644
--- a/drivers/net/tap/meson.build
+++ b/drivers/net/tap/meson.build
@@ -14,7 +14,8 @@ sources = files(
 
 deps = ['bus_vdev', 'gso', 'hash']
 
-max_queues = '-DTAP_MAX_QUEUES=16'
+# TAP device is limited by RTE_MP_MAX_FD_NUM
+max_queues = '-DTAP_MAX_QUEUES=253'
 cflags += max_queues
 
 require_iova_in_mbuf = false
-- 
2.45.2

Reply via email to