Lines Matching refs:mk

157 				  struct fscrypt_master_key *mk,  in setup_per_mode_enc_key()  argument
194 err = fscrypt_hkdf_expand(&mk->mk_secret.hkdf, in setup_per_mode_enc_key()
212 const struct fscrypt_master_key *mk) in fscrypt_derive_dirhash_key() argument
216 err = fscrypt_hkdf_expand(&mk->mk_secret.hkdf, HKDF_CONTEXT_DIRHASH_KEY, in fscrypt_derive_dirhash_key()
227 const struct fscrypt_master_key *mk) in fscrypt_hash_inode_number() argument
230 WARN_ON(!mk->mk_ino_hash_key_initialized); in fscrypt_hash_inode_number()
233 &mk->mk_ino_hash_key); in fscrypt_hash_inode_number()
237 struct fscrypt_master_key *mk) in fscrypt_setup_iv_ino_lblk_32_key() argument
241 err = setup_per_mode_enc_key(ci, mk, mk->mk_iv_ino_lblk_32_keys, in fscrypt_setup_iv_ino_lblk_32_key()
247 if (!smp_load_acquire(&mk->mk_ino_hash_key_initialized)) { in fscrypt_setup_iv_ino_lblk_32_key()
251 if (mk->mk_ino_hash_key_initialized) in fscrypt_setup_iv_ino_lblk_32_key()
254 err = fscrypt_hkdf_expand(&mk->mk_secret.hkdf, in fscrypt_setup_iv_ino_lblk_32_key()
256 (u8 *)&mk->mk_ino_hash_key, in fscrypt_setup_iv_ino_lblk_32_key()
257 sizeof(mk->mk_ino_hash_key)); in fscrypt_setup_iv_ino_lblk_32_key()
261 smp_store_release(&mk->mk_ino_hash_key_initialized, true); in fscrypt_setup_iv_ino_lblk_32_key()
273 fscrypt_hash_inode_number(ci, mk); in fscrypt_setup_iv_ino_lblk_32_key()
278 struct fscrypt_master_key *mk, in fscrypt_setup_v2_file_key() argument
292 err = setup_per_mode_enc_key(ci, mk, mk->mk_direct_keys, in fscrypt_setup_v2_file_key()
302 err = setup_per_mode_enc_key(ci, mk, mk->mk_iv_ino_lblk_64_keys, in fscrypt_setup_v2_file_key()
307 err = fscrypt_setup_iv_ino_lblk_32_key(ci, mk); in fscrypt_setup_v2_file_key()
311 err = fscrypt_hkdf_expand(&mk->mk_secret.hkdf, in fscrypt_setup_v2_file_key()
326 err = fscrypt_derive_dirhash_key(ci, mk); in fscrypt_setup_v2_file_key()
349 struct fscrypt_master_key *mk = NULL; in setup_file_encryption_key() local
390 mk = key->payload.data[0]; in setup_file_encryption_key()
391 down_read(&mk->mk_secret_sem); in setup_file_encryption_key()
394 if (!is_master_key_secret_present(&mk->mk_secret)) { in setup_file_encryption_key()
405 if (mk->mk_secret.size < ci->ci_mode->keysize) { in setup_file_encryption_key()
410 mk->mk_secret.size, ci->ci_mode->keysize); in setup_file_encryption_key()
417 err = fscrypt_setup_v1_file_key(ci, mk->mk_secret.raw); in setup_file_encryption_key()
420 err = fscrypt_setup_v2_file_key(ci, mk, need_dirhash_key); in setup_file_encryption_key()
434 up_read(&mk->mk_secret_sem); in setup_file_encryption_key()
453 struct fscrypt_master_key *mk = key->payload.data[0]; in put_crypt_info() local
463 spin_lock(&mk->mk_decrypted_inodes_lock); in put_crypt_info()
465 spin_unlock(&mk->mk_decrypted_inodes_lock); in put_crypt_info()
466 if (refcount_dec_and_test(&mk->mk_refcount)) in put_crypt_info()
522 struct fscrypt_master_key *mk = in fscrypt_setup_encryption_info() local
525 refcount_inc(&mk->mk_refcount); in fscrypt_setup_encryption_info()
527 spin_lock(&mk->mk_decrypted_inodes_lock); in fscrypt_setup_encryption_info()
529 &mk->mk_decrypted_inodes); in fscrypt_setup_encryption_info()
530 spin_unlock(&mk->mk_decrypted_inodes_lock); in fscrypt_setup_encryption_info()
537 struct fscrypt_master_key *mk = master_key->payload.data[0]; in fscrypt_setup_encryption_info() local
539 up_read(&mk->mk_secret_sem); in fscrypt_setup_encryption_info()
691 const struct fscrypt_master_key *mk; in fscrypt_drop_inode() local
701 mk = ci->ci_master_key->payload.data[0]; in fscrypt_drop_inode()
720 return !is_master_key_secret_present(&mk->mk_secret); in fscrypt_drop_inode()