When PSTORE_FLAGS_FRAGILE flag is set, only kmsg is registered in pstore_register. So, under these circumstances, only kmsg needs to be unregistered in pstore_unregister.
Signed-off-by: Geliang Tang <[email protected]> --- fs/pstore/platform.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c index 588461b..5b8f1eb 100644 --- a/fs/pstore/platform.c +++ b/fs/pstore/platform.c @@ -497,9 +497,12 @@ EXPORT_SYMBOL_GPL(pstore_register); void pstore_unregister(struct pstore_info *psi) { - pstore_unregister_pmsg(); - pstore_unregister_ftrace(); - pstore_unregister_console(); + if ((psi->flags & PSTORE_FLAGS_FRAGILE) == 0) { + pstore_unregister_pmsg(); + pstore_unregister_ftrace(); + pstore_unregister_console(); + } + pstore_unregister_kmsg(); free_buf_for_compression(); -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

