fscrypt: optimize fscrypt_initialize()
authorEric Biggers <ebiggers@google.com>
Thu, 6 Apr 2023 18:12:45 +0000 (11:12 -0700)
committerEric Biggers <ebiggers@google.com>
Thu, 6 Apr 2023 18:16:39 +0000 (11:16 -0700)
commit83e57e47906ce0e99bd61c70fae514e69960d274
tree3b242cfea96fa9f37838c357109d9884ad0b65ec
parent41b2ad80fdcaafd42fce173cb95847d0cd8614c2
fscrypt: optimize fscrypt_initialize()

fscrypt_initialize() is a "one-time init" function that is called
whenever the key is set up for any inode on any filesystem.  Make it
implement "one-time init" more efficiently by not taking a global mutex
in the "already initialized case" and doing fewer pointer dereferences.

Link: https://lore.kernel.org/r/20230406181245.36091-1-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@google.com>
fs/crypto/crypto.c
fs/crypto/fscrypt_private.h
fs/crypto/keysetup.c