[GIT PULL] pstore updates for v4.12-rc1

From: Kees Cook
Date: Mon May 01 2017 - 14:23:26 EST


Please pull these pstore changes for v4.12-rc1. This has a large internal
refactoring along with several smaller fixes.



The following changes since commit c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201:

Linux 4.11-rc1 (2017-03-05 12:59:56 -0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git tags/pstore-v4.12-rc1

for you to fetch changes up to 3a7d2fd16c57a1ef47dc2891171514231c9c7c6e:

pstore: Solve lockdep warning by moving inode locks (2017-04-27 20:35:34 -0700)

- constify compression structures; Bhumika Goyal
- restore powerpc dumping; Ankit Kumar
- fix more bugs in the rarely exercises module unloading logic
- reorganize filesystem locking to fix problems noticed by lockdep
- refactor internal pstore APIs to make development and review easier:
- improve error reporting
- add kernel-doc structure and function comments
- avoid insane argument passing by using a common record structure

Ankit Kumar (1):
pstore: Fix flags to enable dumps on powerpc

Bhumika Goyal (1):
pstore: constify pstore_zbackend structures

Geliang Tang (1):
pstore: Remove unused vmalloc.h in pmsg

Kees Cook (20):
pstore: Use dynamic spinlock initializer
pstore: Shut down worker when unregistering
pstore: Avoid race in module unloading
pstore: Improve register_pstore() error reporting
pstore: Add kernel-doc for struct pstore_info
pstore: Extract common arguments into structure
pstore: Move record decompression to function
pstore: Switch pstore_mkfile to pass record
pstore: Replace arguments for read() API
pstore: Replace arguments for write() API
pstore: Always allocate buffer for decompression
pstore: Pass record contents instead of copying
pstore: Allocate records on heap instead of stack
pstore: Do not duplicate record metadata
pstore: Replace arguments for erase() API
pstore: Replace arguments for write_buf() API
pstore: Replace arguments for write_buf_user() API
pstore: Remove write_buf() callback
pstore: simplify write_user_compat()
pstore: Solve lockdep warning by moving inode locks

arch/powerpc/kernel/nvram_64.c | 89 +++++------
drivers/acpi/apei/erst.c | 64 ++++----
drivers/firmware/efi/efi-pstore.c | 148 ++++++++-----------
fs/pstore/ftrace.c | 11 +-
fs/pstore/inode.c | 147 +++++++++++--------
fs/pstore/internal.h | 8 +-
fs/pstore/platform.c | 301 ++++++++++++++++++++++----------------
fs/pstore/pmsg.c | 12 +-
fs/pstore/ram.c | 130 ++++++++--------
fs/pstore/ram_core.c | 2 +-
include/linux/pstore.h | 156 ++++++++++++++++----
11 files changed, 607 insertions(+), 461 deletions(-)

Kees Cook
Pixel Security