From: Jiawei Wang Date: Tue, 26 Jan 2021 03:49:42 +0000 (+0200) Subject: app/testpmd: fix sample action for RSS with no key X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=b665487e0b3e0640b8c075a339c745acdf8ef2af;p=dpdk.git app/testpmd: fix sample action for RSS with no key When the RSS with null key was set in sample actions list, it caused the segmentation fault since the RSS key pointer was NULL while did the memory copy. This patch adds the RSS key NULL pointer checking before copying to fix the segmentation fault issue. Fixes: 11b1b0eddade ("app/testpmd: support RSS in sample action") Signed-off-by: Jiawei Wang Acked-by: Viacheslav Ovsiienko Reviewed-by: Ferruh Yigit --- diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c index f7d58b1f16..1d962785b3 100644 --- a/app/test-pmd/cmdline_flow.c +++ b/app/test-pmd/cmdline_flow.c @@ -7888,7 +7888,7 @@ cmd_set_raw_parsed_sample(const struct buffer *in) rss = action->conf; rte_memcpy(&sample_rss_data[idx].conf, (const void *)rss, size); - if (rss->key_len) { + if (rss->key_len && rss->key) { sample_rss_data[idx].conf.key = sample_rss_data[idx].key; rte_memcpy((void *)((uintptr_t) @@ -7896,7 +7896,7 @@ cmd_set_raw_parsed_sample(const struct buffer *in) (const void *)rss->key, sizeof(uint8_t) * rss->key_len); } - if (rss->queue_num) { + if (rss->queue_num && rss->queue) { sample_rss_data[idx].conf.queue = sample_rss_data[idx].queue; rte_memcpy((void *)((uintptr_t)