diff options
Diffstat (limited to 'fs/btrfs/inode.c')
| -rw-r--r-- | fs/btrfs/inode.c | 6 | 
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c index 116ab67a06d..526dd51a196 100644 --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -6794,11 +6794,13 @@ static int btrfs_getattr(struct vfsmount *mnt,  			 struct dentry *dentry, struct kstat *stat)  {  	struct inode *inode = dentry->d_inode; +	u32 blocksize = inode->i_sb->s_blocksize; +  	generic_fillattr(inode, stat);  	stat->dev = BTRFS_I(inode)->root->anon_dev;  	stat->blksize = PAGE_CACHE_SIZE; -	stat->blocks = (inode_get_bytes(inode) + -			BTRFS_I(inode)->delalloc_bytes) >> 9; +	stat->blocks = (ALIGN(inode_get_bytes(inode), blocksize) + +		ALIGN(BTRFS_I(inode)->delalloc_bytes, blocksize)) >> 9;  	return 0;  }  |