From d3e4a2c2e6c897b944c459c8b09e9f4ceab4e956 Mon Sep 17 00:00:00 2001 From: Madhuker Mythri Date: Mon, 14 Feb 2022 22:38:11 +0530 Subject: [PATCH] devargs: fix crash with uninitialized parsing [ upstream commit 356a2aa054a9e803782ee8380a7ab1a53aecd1e3 ] The function rte_devargs_parse() previously was safe to call with non-initialized devargs structure as parameter. When adding the support for the global device syntax, this assumption was broken. Restore it by forcing memset as part of the call itself. Bugzilla ID: 933 Fixes: b344eb5d941a ("devargs: parse global device syntax") Signed-off-by: Madhuker Mythri Signed-off-by: Gaetan Rivet --- lib/eal/common/eal_common_devargs.c | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/eal/common/eal_common_devargs.c b/lib/eal/common/eal_common_devargs.c index 8c7650cf6c..184fe676aa 100644 --- a/lib/eal/common/eal_common_devargs.c +++ b/lib/eal/common/eal_common_devargs.c @@ -191,6 +191,7 @@ rte_devargs_parse(struct rte_devargs *da, const char *dev) if (da == NULL) return -EINVAL; + memset(da, 0, sizeof(*da)); /* First parse according global device syntax. */ if (rte_devargs_layers_parse(da, dev) == 0) {