Hi Ben, On Mon, 13 Feb 2017 10:14:54 +1100 Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> wrote: > On Mon, 2017-02-13 at 08:49 +1100, Anton Blanchard wrote: > > From: Anton Blanchard <anton@xxxxxxxxx> > > > > We see lpfc devices regularly fail during kexec. Fix this by adding > > a shutdown method which mirrors the remove method. > > Or instead finally do what I've been advocating for years (and even > sent patches for) which is to have kexec call remove instead of > shutdown. > > Shutdown is and has *always* been the wrong thing to do. Good point, at the very least we should call remove if shutdown doesn't exist. Eric: could we make the changes Ben suggests? Anton > > Signed-off-by: Anton Blanchard <anton@xxxxxxxxx> > > --- > > drivers/scsi/lpfc/lpfc_init.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/drivers/scsi/lpfc/lpfc_init.c > > b/drivers/scsi/lpfc/lpfc_init.c > > index 4776fd8..10f75ad 100644 > > --- a/drivers/scsi/lpfc/lpfc_init.c > > +++ b/drivers/scsi/lpfc/lpfc_init.c > > @@ -11447,6 +11447,7 @@ static struct pci_driver lpfc_driver = { > > .id_table = lpfc_id_table, > > .probe = lpfc_pci_probe_one, > > .remove = lpfc_pci_remove_one, > > + .shutdown = lpfc_pci_remove_one, > > .suspend = lpfc_pci_suspend_one, > > .resume = lpfc_pci_resume_one, > > .err_handler = &lpfc_err_handler, >