]> git.baikalelectronics.ru Git - kernel.git/commit
qlcnic: potential dereference null pointer of rx_queue->page_ring
authorJiasheng Jiang <jiasheng@iscas.ac.cn>
Fri, 17 Dec 2021 09:39:11 +0000 (17:39 +0800)
committerDavid S. Miller <davem@davemloft.net>
Sat, 18 Dec 2021 12:37:12 +0000 (12:37 +0000)
commit43c4d5ef6fe44ee9d23d19c50b95f5c8aa6ba5d6
treec7af9aac54119c897a11cae7ffd96820cb9584fd
parentf21ee8eb298e8374f59baadc22c8edb3677a2cb5
qlcnic: potential dereference null pointer of rx_queue->page_ring

The return value of kcalloc() needs to be checked.
To avoid dereference of null pointer in case of the failure of alloc.
Therefore, it might be better to change the return type of
qlcnic_sriov_alloc_vlans() and return -ENOMEM when alloc fails and
return 0 the others.
Also, qlcnic_sriov_set_guest_vlan_mode() and __qlcnic_pci_sriov_enable()
should deal with the return value of qlcnic_sriov_alloc_vlans().

Fixes: 9fac6b7876e9 ("qlcnic: VLAN enhancement for 84XX adapters")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov.h
drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_common.c
drivers/net/ethernet/qlogic/qlcnic/qlcnic_sriov_pf.c