diff options
| author | Dima Chumak <[email protected]> | 2021-04-26 12:16:26 +0000 |
|---|---|---|
| committer | Saeed Mahameed <[email protected]> | 2021-07-27 23:10:05 +0000 |
| commit | b1c2f6312c5005c928a72e668bf305a589d828d4 (patch) | |
| tree | 71d020e7f0b7ab43a3b2ab48ffd33444180db945 /drivers/fpga/xilinx-spi.c | |
| parent | net/mlx5: Unload device upon firmware fatal error (diff) | |
| download | kernel-b1c2f6312c5005c928a72e668bf305a589d828d4.tar.gz kernel-b1c2f6312c5005c928a72e668bf305a589d828d4.zip | |
net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev()
The result of __dev_get_by_index() is not checked for NULL and then gets
dereferenced immediately.
Also, __dev_get_by_index() must be called while holding either RTNL lock
or @dev_base_lock, which isn't satisfied by mlx5e_hairpin_get_mdev() or
its callers. This makes the underlying hlist_for_each_entry() loop not
safe, and can have adverse effects in itself.
Fix by using dev_get_by_index() and handling nullptr return value when
ifindex device is not found. Update mlx5e_hairpin_get_mdev() callers to
check for possible PTR_ERR() result.
Fixes: 77ab67b7f0f9 ("net/mlx5e: Basic setup of hairpin object")
Addresses-Coverity: ("Dereference null return value")
Signed-off-by: Dima Chumak <[email protected]>
Reviewed-by: Vlad Buslov <[email protected]>
Reviewed-by: Roi Dayan <[email protected]>
Signed-off-by: Saeed Mahameed <[email protected]>
Diffstat (limited to 'drivers/fpga/xilinx-spi.c')
0 files changed, 0 insertions, 0 deletions
