Re: [PATCH] igb: Fix null pointer dereference

From: Jeff Kirsher
Date: Wed Mar 13 2013 - 03:51:46 EST


On Tue, 2013-03-12 at 14:09 -0600, Alex Williamson wrote:
> The max_vfs= option has always been self limiting to the number of VFs
> supported by the device. fa44f2f1 added SR-IOV configuration via
> sysfs, but in the process broke this self correction factor. The
> failing path is:
>
> igb_probe
> igb_sw_init
> if (max_vfs > 7) {
> adapter->vfs_allocated_count = 7;
> ...
> igb_probe_vfs
> igb_enable_sriov(, max_vfs)
> if (num_vfs > 7) {
> err = -EPERM;
> ...
>
> This leaves vfs_allocated_count = 7 and vf_data = NULL, so we bomb out
> when igb_probe finally calls igb_reset. It seems like a really bad
> idea, and somewhat pointless, to set vfs_allocated_count separate from
> vf_data, but limiting max_vfs is enough to avoid the null pointer.
>
> Signed-off-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
> ---
> drivers/net/ethernet/intel/igb/igb_main.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)

I have added the patch to my igb queue, thanks!

Attachment: signature.asc
Description: This is a digitally signed message part