net/bnxt: fix null pointer dereference in LED config
For VFs, bp->leds is uninitialized, check bp->leds is
not null before checking for bp->leds->num_leds.
segfault backtrace in trex program when use VF:
11: bnxt_hwrm_port_led_cfg (bp=0x23ffb2140, led_on=true)
10: bnxt_dev_led_on_op (dev=0x22d7780 <rte_eth_devices>)
9: rte_eth_led_on (port_id=0)
8: DpdkTRexPortAttr::set_led (this=0x23b6ce0, on=true)
7: DpdkTRexPortAttr::DpdkTRexPortAttr
6: CTRexExtendedDriverBnxt::create_port_attr
5: CPhyEthIF::Create
4: CGlobalTRex::device_start
3: CGlobalTRex::Create
2: main_test
1: main
Fixes: d4d5a04
("net/bnxt: fix unnecessary memory allocation")
Cc: stable@dpdk.org
Signed-off-by: Mao YingMing <maoyingming@baidu.com>
Acked-by: Somnath Kotur <somnath.kotur@broadcom.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
This commit is contained in:
parent
6277523c04
commit
4bfb499829
@ -4535,7 +4535,7 @@ int bnxt_hwrm_port_led_cfg(struct bnxt *bp, bool led_on)
|
||||
uint16_t duration = 0;
|
||||
int rc, i;
|
||||
|
||||
if (!bp->leds->num_leds || BNXT_VF(bp))
|
||||
if (BNXT_VF(bp) || !bp->leds || !bp->leds->num_leds)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
HWRM_PREP(&req, HWRM_PORT_LED_CFG, BNXT_USE_CHIMP_MB);
|
||||
|
Loading…
Reference in New Issue
Block a user