diff options
| author | Christophe JAILLET <[email protected]> | 2017-08-27 08:39:51 +0200 |
|---|---|---|
| committer | Jeff Kirsher <[email protected]> | 2017-10-10 09:01:11 -0700 |
| commit | 18eb86362a52f0af933cc0fd5e37027317eb2d1c (patch) | |
| tree | f88cb96d41757aee633407a59c4c5b3196719f7f /drivers/net/ethernet/intel/igb/igb_main.c | |
| parent | 377b62736c01f14309141c69caa6d84363c12e12 (diff) | |
igb: check memory allocation failure
Check memory allocation failures and return -ENOMEM in such cases, as
already done for other memory allocations in this function.
This avoids NULL pointers dereference.
Signed-off-by: Christophe JAILLET <[email protected]>
Tested-by: Aaron Brown <[email protected]
Acked-by: PJ Waskiewicz <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
Diffstat (limited to 'drivers/net/ethernet/intel/igb/igb_main.c')
| -rw-r--r-- | drivers/net/ethernet/intel/igb/igb_main.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c index fd4a46b03cc8..837d9b46a390 100644 --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c @@ -3162,6 +3162,8 @@ static int igb_sw_init(struct igb_adapter *adapter) /* Setup and initialize a copy of the hw vlan table array */ adapter->shadow_vfta = kcalloc(E1000_VLAN_FILTER_TBL_SIZE, sizeof(u32), GFP_ATOMIC); + if (!adapter->shadow_vfta) + return -ENOMEM; /* This call may decrease the number of queues */ if (igb_init_interrupt_scheme(adapter, true)) { |