Hi all, And another respin, v5 this time: - Split out fixes into a separate series; - Added proper spinlock protection to the pstore/console interface (the bug I found when was adding ftrace interface); - And as I'm about to add ftrace support to pstore, to not touch the same lines of code twice, I reworked 'Factor ramoops_get_dump_prz() out of ramoops_pstore_read()' patch into 'Factor ramoops_get_next_prz() out of ramoops_pstore_read()'. This is just a more generic interface that will work for both console and ftrace przs. Since the patch changed drastically, it lost Kees' ack, so it needs a re-ack. - The same as above happened w/ 'Introduce ramoops_context.max_dump_count' patch, it turned into 'Give proper names to dump-related variables', it also needs a re-ack. - If anyone is willing to try the patches, for convenience they are now available in the git repository: git://git.infradead.org/users/cbou/linux-pstore.git or gitweb: http://git.infradead.org/users/cbou/linux-pstore.git In v4: - Per Kees Cook's comments, the patches no longer remove an automatic updates feature, but instead make the it configurable; plus disable it by default (in a separate patch); - Fixed some bugs noticed by Colin Cross; - Documented new continuous ramoops-console log behaviour (also noticed by Colin Cross). In v3: - Rebased on top of current staging-next; - The series are getting bigger. This is partly because we now support different persistent zone sizes for oops records and console log, per Colin Cross' request. And I believe the code is now more manageable for further enhancements (e.g. if we'd want to add other message types, e.g. tracing); - Addressed Kees Cook's comments on the unlinking matters; - Removed automatic updates support. Please see the last patch description for rationale; - A new fixup for pstore/inode, just getting rid of a sparse warning. In v2: - Updated documentation per Colin Cross' comments; - Corrected return value in ramoops_pstore_write() (noticed by Kees Cook); - Fixed large writes handling in pstore_console_write(), i.e. when log_buf write is larger than pstore bufsize. Also Noticed by Kees Cook. And a boilerplate for the series: Currently pstore doesn't support logging kernel messages in run-time, it only dumps dmesg when kernel oopses/panics. This makes pstore useless for debugging hangs caused by HW issues or improper use of HW (e.g. weird device inserted -> driver tried to write reserved bits -> SoC hanged. In that case we don't get any messages in the pstore. This series add a new message type for pstore, i.e. PSTORE_TYPE_CONSOLE, plus make pstore/ram.c handle the new messages. The old ram_console driver is removed. This might probably cause some pain for out-of-tree code, as it would need to be adjusted... but "no pain, no gain"? :-) Though, if there's some serious resistance, we can probably postpone the last two patches. Thanks! --- Documentation/ramoops.txt | 14 ++ drivers/staging/android/Kconfig | 5 - drivers/staging/android/Makefile | 1 - drivers/staging/android/ram_console.c | 179 ------------------------ fs/pstore/Kconfig | 7 + fs/pstore/inode.c | 3 + fs/pstore/platform.c | 54 +++++++- fs/pstore/ram.c | 246 ++++++++++++++++++++++++--------- fs/pstore/ram_core.c | 81 +---------- include/linux/pstore.h | 1 + include/linux/pstore_ram.h | 20 +-- 11 files changed, 261 insertions(+), 350 deletions(-) -- Anton Vorontsov Email: cbouatmailru@xxxxxxxxx _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel