Reviewed-by: Wen Xiong<wenxiong at linux.vnet.ibm.com> Thanks, Wendy Quoting Brian King <brking at linux.vnet.ibm.com>: > A kexec boot for some ipr SAS adapters was seen to take ~20 seconds > just doing ipr adapter initialization. This is due to the fact that > a kexec invokes the driver's shutdown handler which places the adapter > into a state that requires a hard reset and resulting firmware initialization > to be usable again, which takes significant time. By exporting > kexec_in_progress, > this process can be optimized significantly in the driver by essentially > placing the adapter into a state where this hardware reset and > re-initialization > can be bypassed, eliminating this delay in kexec boot. > > Cc: Eric Biederman <ebiederm at xmission.com> > Cc: kexec <kexec at lists.infradead.org> > Signed-off-by: Brian King <brking at linux.vnet.ibm.com> > --- > > kernel/kexec.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff -puN kernel/kexec.c~kexec_export_in_prog kernel/kexec.c > --- scsi-queue/kernel/kexec.c~kexec_export_in_prog 2014-12-02 > 12:13:22.820325731 -0600 > +++ scsi-queue-bjking1/kernel/kexec.c 2014-12-02 12:13:22.825325687 -0600 > @@ -2768,3 +2768,5 @@ int kernel_kexec(void) > mutex_unlock(&kexec_mutex); > return error; > } > + > +EXPORT_SYMBOL_GPL(kexec_in_progress); > _