mirror of
https://github.com/torvalds/linux.git
synced 2024-11-16 17:12:06 +00:00
Btrfs: use existing align macros in btrfs_allocate()
The kernel developers have implemented some often-used align macros, we should use them instead of the complex code. Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> Signed-off-by: Chris Mason <chris.mason@fusionio.com>
This commit is contained in:
parent
af1be4f851
commit
797f427711
@ -2054,12 +2054,12 @@ static long btrfs_fallocate(struct file *file, int mode,
|
|||||||
u64 alloc_end;
|
u64 alloc_end;
|
||||||
u64 alloc_hint = 0;
|
u64 alloc_hint = 0;
|
||||||
u64 locked_end;
|
u64 locked_end;
|
||||||
u64 mask = BTRFS_I(inode)->root->sectorsize - 1;
|
|
||||||
struct extent_map *em;
|
struct extent_map *em;
|
||||||
|
int blocksize = BTRFS_I(inode)->root->sectorsize;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
alloc_start = offset & ~mask;
|
alloc_start = round_down(offset, blocksize);
|
||||||
alloc_end = (offset + len + mask) & ~mask;
|
alloc_end = round_up(offset + len, blocksize);
|
||||||
|
|
||||||
/* Make sure we aren't being give some crap mode */
|
/* Make sure we aren't being give some crap mode */
|
||||||
if (mode & ~(FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE))
|
if (mode & ~(FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE))
|
||||||
@ -2140,7 +2140,7 @@ static long btrfs_fallocate(struct file *file, int mode,
|
|||||||
}
|
}
|
||||||
last_byte = min(extent_map_end(em), alloc_end);
|
last_byte = min(extent_map_end(em), alloc_end);
|
||||||
actual_end = min_t(u64, extent_map_end(em), offset + len);
|
actual_end = min_t(u64, extent_map_end(em), offset + len);
|
||||||
last_byte = (last_byte + mask) & ~mask;
|
last_byte = ALIGN(last_byte, blocksize);
|
||||||
|
|
||||||
if (em->block_start == EXTENT_MAP_HOLE ||
|
if (em->block_start == EXTENT_MAP_HOLE ||
|
||||||
(cur_offset >= inode->i_size &&
|
(cur_offset >= inode->i_size &&
|
||||||
|
Loading…
Reference in New Issue
Block a user