]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
pstore: Use dynamic spinlock initializer
authorKees Cook <keescook@chromium.org>
Mon, 6 Mar 2017 06:08:58 +0000 (22:08 -0800)
committerKees Cook <keescook@chromium.org>
Tue, 7 Mar 2017 16:21:38 +0000 (08:21 -0800)
The per-prz spinlock should be using the dynamic initializer so that
lockdep can correctly track it. Without this, under lockdep, we get a
warning at boot that the lock is in non-static memory.

Fixes: 109704492ef6 ("pstore: Make spinlock per zone instead of global")
Fixes: 76d5692a5803 ("pstore: Correctly initialize spinlock and flags")
Signed-off-by: Kees Cook <keescook@chromium.org>
Cc: stable@vger.kernel.org
fs/pstore/ram_core.c

index bc927e30bdccd4fe89fd39d673126ae68d4e0e8e..e11672aa457514b8d84695688edc342f80a57b20 100644 (file)
@@ -532,7 +532,7 @@ struct persistent_ram_zone *persistent_ram_new(phys_addr_t start, size_t size,
        }
 
        /* Initialize general buffer state. */
-       prz->buffer_lock = __RAW_SPIN_LOCK_UNLOCKED(buffer_lock);
+       raw_spin_lock_init(&prz->buffer_lock);
        prz->flags = flags;
 
        ret = persistent_ram_buffer_map(start, size, prz, memtype);