On Thu, 2013-02-28 at 15:02 +0800, xunleer wrote: > This patch fix an oops issue caused by NULL pointer. The call stack > may be like this: > [<ffffffffa04dae0b>] ixgbevf_down+0x10b/0x300 [ixgbevf] > [<ffffffffa04dc6bd>] ixgbevf_open+0x27d/0x2b0 [ixgbevf] > [<ffffffff813866b7>] __dev_open+0xa7/0x100 > [<ffffffff81386745>] dev_open+0x35/0x60 > > When opening the net device, we are trying to request msix irqs, > if failed, the error procedure released the msix entries and disabled > the MSI-X interrupts in pci level. However, if the request is not > succeeded, the ixgbevf_down is called, it synchronizes the irq by > referring to the msix_entries, it may cause oops as to NULL pointer > references. > > The msix_entries may be allocated in probe procedure and be released > in remove routine may be the best way. So we removed this error > processing action. Then we may try to reopen the device, all we must > reload the driver. > > Signed-off-by: Li Xun <xunleer.li@xxxxxxxxxx> > --- > drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 3 --- > 1 file changed, 3 deletions(-) Thanks, I have applied this to my ixgbevf queue of patches and will push upstream once validation looks it over. I see you added stable to the CC, how far back in the stable tree's does this patch apply?
Attachment:
signature.asc
Description: This is a digitally signed message part