summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDi Zhu <zhudi21@huawei.com>2021-01-25 20:42:29 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-03-07 11:25:57 +0100
commit220871dbfc0fa260c9f22bd9ea90c65d2eea31c7 (patch)
treefe76b6e401cd45fcb5080a060b88558f12900614
parenteaafe14544ab20fbe81c51bc2f5763fca5b2d4b1 (diff)
downloadlinux-stable-220871dbfc0fa260c9f22bd9ea90c65d2eea31c7.tar.gz
linux-stable-220871dbfc0fa260c9f22bd9ea90c65d2eea31c7.tar.bz2
linux-stable-220871dbfc0fa260c9f22bd9ea90c65d2eea31c7.zip
pktgen: fix misuse of BUG_ON() in pktgen_thread_worker()
[ Upstream commit 275b1e88cabb34dbcbe99756b67e9939d34a99b6 ] pktgen create threads for all online cpus and bond these threads to relevant cpu repecivtily. when this thread firstly be woken up, it will compare cpu currently running with the cpu specified at the time of creation and if the two cpus are not equal, BUG_ON() will take effect causing panic on the system. Notice that these threads could be migrated to other cpus before start running because of the cpu hotplug after these threads have created. so the BUG_ON() used here seems unreasonable and we can replace it with WARN_ON() to just printf a warning other than panic the system. Signed-off-by: Di Zhu <zhudi21@huawei.com> Link: https://lore.kernel.org/r/20210125124229.19334-1-zhudi21@huawei.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--net/core/pktgen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/core/pktgen.c b/net/core/pktgen.c
index 433b26feb320..8a72b984267a 100644
--- a/net/core/pktgen.c
+++ b/net/core/pktgen.c
@@ -3555,7 +3555,7 @@ static int pktgen_thread_worker(void *arg)
struct pktgen_dev *pkt_dev = NULL;
int cpu = t->cpu;
- BUG_ON(smp_processor_id() != cpu);
+ WARN_ON(smp_processor_id() != cpu);
init_waitqueue_head(&t->queue);
complete(&t->start_done);