mirror of
https://github.com/torvalds/linux.git
synced 2024-11-01 13:03:25 +01:00
ceph: always set initial i_blkbits to CEPH_FSCRYPT_BLOCK_SHIFT
The fscrypt code will use i_blkbits to setup ci_data_unit_bits when
allocating the new inode, but ceph will initiate i_blkbits ater when
filling the inode, which is too late. Since ci_data_unit_bits will only
be used by the fscrypt framework so initiating i_blkbits with
CEPH_FSCRYPT_BLOCK_SHIFT is safe.
Link: https://tracker.ceph.com/issues/64035
Fixes: 5b11888471
("fscrypt: support crypto data unit size less than filesystem block size")
Signed-off-by: Xiubo Li <xiubli@redhat.com>
Reviewed-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
This commit is contained in:
parent
8e46a2d068
commit
bbb20ea993
1 changed files with 2 additions and 0 deletions
|
@ -78,6 +78,8 @@ struct inode *ceph_new_inode(struct inode *dir, struct dentry *dentry,
|
|||
if (!inode)
|
||||
return ERR_PTR(-ENOMEM);
|
||||
|
||||
inode->i_blkbits = CEPH_FSCRYPT_BLOCK_SHIFT;
|
||||
|
||||
if (!S_ISLNK(*mode)) {
|
||||
err = ceph_pre_init_acls(dir, mode, as_ctx);
|
||||
if (err < 0)
|
||||
|
|
Loading…
Reference in a new issue