On Thu, 2013-01-24 at 00:41 +0000, Seiji Aguchi wrote: > [Problem] > efi_pstore creates sysfs entries, which enable users to access to NVRAM, > in a write callback. If a kernel panic happens in an interrupt context, > it may fail because it could sleep due to dynamic memory allocations during > creating sysfs entries. > > [Patch Description] > This patch removes sysfs operations from a write callback by introducing > a workqueue updating sysfs entries which is scheduled after the write > callback is called. > > Also, the workqueue is kicked in a just oops case. > A system will go down in other cases such as panic, clean shutdown and emergency > restart. And we don't need to create sysfs entries because there is no chance for > users to access to them. > > efi_pstore will be robust against a kernel panic in an interrupt context with this patch. > > Signed-off-by: Seiji Aguchi <seiji.aguchi@xxxxxxx> > --- > drivers/firmware/efivars.c | 85 +++++++++++++++++++++++++++++++++++++++++--- > include/linux/efi.h | 3 +- > 2 files changed, 82 insertions(+), 6 deletions(-) Acked-by: Matt Fleming <matt.fleming@xxxxxxxxx> -- Matt Fleming, Intel Open Source Technology Center -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html