| From 89b332022aea7a0ff40a2ed07886e4f7faf56cfd Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 10 Jul 2020 16:41:38 +0300 |
| Subject: mlxsw: spectrum_router: Remove inappropriate usage of WARN_ON() |
| |
| From: Ido Schimmel <idosch@mellanox.com> |
| |
| [ Upstream commit d9d5420273997664a1c09151ca86ac993f2f89c1 ] |
| |
| We should not trigger a warning when a memory allocation fails. Remove |
| the WARN_ON(). |
| |
| The warning is constantly triggered by syzkaller when it is injecting |
| faults: |
| |
| [ 2230.758664] FAULT_INJECTION: forcing a failure. |
| [ 2230.758664] name failslab, interval 1, probability 0, space 0, times 0 |
| [ 2230.762329] CPU: 3 PID: 1407 Comm: syz-executor.0 Not tainted 5.8.0-rc2+ #28 |
| ... |
| [ 2230.898175] WARNING: CPU: 3 PID: 1407 at drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:6265 mlxsw_sp_router_fib_event+0xfad/0x13e0 |
| [ 2230.898179] Kernel panic - not syncing: panic_on_warn set ... |
| [ 2230.898183] CPU: 3 PID: 1407 Comm: syz-executor.0 Not tainted 5.8.0-rc2+ #28 |
| [ 2230.898190] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.1-0-ga5cab58e9a3f-prebuilt.qemu.org 04/01/2014 |
| |
| Fixes: 3057224e014c ("mlxsw: spectrum_router: Implement FIB offload in deferred work") |
| Signed-off-by: Ido Schimmel <idosch@mellanox.com> |
| Reviewed-by: Jiri Pirko <jiri@mellanox.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c |
| index efdf8cb5114c2..2f013fc716985 100644 |
| --- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c |
| +++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c |
| @@ -6287,7 +6287,7 @@ static int mlxsw_sp_router_fib_event(struct notifier_block *nb, |
| } |
| |
| fib_work = kzalloc(sizeof(*fib_work), GFP_ATOMIC); |
| - if (WARN_ON(!fib_work)) |
| + if (!fib_work) |
| return NOTIFY_BAD; |
| |
| fib_work->mlxsw_sp = router->mlxsw_sp; |
| -- |
| 2.25.1 |
| |