Re: [PATCH 2/3] btrfs: use PAGE_ALIGNED instead of open-coding it

2018-12-05 Thread Nikolay Borisov



On 5.12.18 г. 16:23 ч., Johannes Thumshirn wrote:
> When using a 'var & (PAGE_SIZE - 1)' construct one is checking for a page
> alignment and thus should use the PAGE_ALIGNED() macro instead of
> open-coding it.
> 
> Convert all open-coded occurrences of PAGE_ALIGNED().
> 
> Signed-off-by: Johannes Thumshirn 

Reviewed-by: Nikolay Borisov 

> ---
>  fs/btrfs/check-integrity.c | 8 
>  fs/btrfs/compression.c | 2 +-
>  fs/btrfs/inode.c   | 2 +-
>  3 files changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/fs/btrfs/check-integrity.c b/fs/btrfs/check-integrity.c
> index d319c3020c09..84e9729badaa 100644
> --- a/fs/btrfs/check-integrity.c
> +++ b/fs/btrfs/check-integrity.c
> @@ -1601,7 +1601,7 @@ static int btrfsic_read_block(struct btrfsic_state 
> *state,
>   BUG_ON(block_ctx->datav);
>   BUG_ON(block_ctx->pagev);
>   BUG_ON(block_ctx->mem_to_free);
> - if (block_ctx->dev_bytenr & ((u64)PAGE_SIZE - 1)) {
> + if (!PAGE_ALIGNED(block_ctx->dev_bytenr)) {
>   pr_info("btrfsic: read_block() with unaligned bytenr %llu\n",
>  block_ctx->dev_bytenr);
>   return -1;
> @@ -1778,7 +1778,7 @@ static void btrfsic_process_written_block(struct 
> btrfsic_dev_state *dev_state,
>   return;
>   }
>   is_metadata = 1;
> - BUG_ON(BTRFS_SUPER_INFO_SIZE & (PAGE_SIZE - 1));
> + BUG_ON(!PAGE_ALIGNED(BTRFS_SUPER_INFO_SIZE));
>   processed_len = BTRFS_SUPER_INFO_SIZE;
>   if (state->print_mask &
>   BTRFSIC_PRINT_MASK_TREE_BEFORE_SB_WRITE) {
> @@ -2892,12 +2892,12 @@ int btrfsic_mount(struct btrfs_fs_info *fs_info,
>   struct list_head *dev_head = _devices->devices;
>   struct btrfs_device *device;
>  
> - if (fs_info->nodesize & ((u64)PAGE_SIZE - 1)) {
> + if (!PAGE_ALIGNED(fs_info->nodesize)) {
>   pr_info("btrfsic: cannot handle nodesize %d not being a 
> multiple of PAGE_SIZE %ld!\n",
>  fs_info->nodesize, PAGE_SIZE);
>   return -1;
>   }
> - if (fs_info->sectorsize & ((u64)PAGE_SIZE - 1)) {
> + if (!PAGE_ALIGNED(fs_info->sectorsize)) {
>   pr_info("btrfsic: cannot handle sectorsize %d not being a 
> multiple of PAGE_SIZE %ld!\n",
>  fs_info->sectorsize, PAGE_SIZE);
>   return -1;
> diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c
> index 2ab5591449f2..d5381f39a9e8 100644
> --- a/fs/btrfs/compression.c
> +++ b/fs/btrfs/compression.c
> @@ -301,7 +301,7 @@ blk_status_t btrfs_submit_compressed_write(struct inode 
> *inode, u64 start,
>   blk_status_t ret;
>   int skip_sum = BTRFS_I(inode)->flags & BTRFS_INODE_NODATASUM;
>  
> - WARN_ON(start & ((u64)PAGE_SIZE - 1));
> + WARN_ON(!PAGE_ALIGNED(start));
>   cb = kmalloc(compressed_bio_size(fs_info, compressed_len), GFP_NOFS);
>   if (!cb)
>   return BLK_STS_RESOURCE;
> diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
> index bc0564c384de..5c52e91b01e8 100644
> --- a/fs/btrfs/inode.c
> +++ b/fs/btrfs/inode.c
> @@ -2027,7 +2027,7 @@ int btrfs_set_extent_delalloc(struct inode *inode, u64 
> start, u64 end,
> unsigned int extra_bits,
> struct extent_state **cached_state, int dedupe)
>  {
> - WARN_ON((end & (PAGE_SIZE - 1)) == 0);
> + WARN_ON(PAGE_ALIGNED(end));
>   return set_extent_delalloc(_I(inode)->io_tree, start, end,
>  extra_bits, cached_state);
>  }
> 


[PATCH 2/3] btrfs: use PAGE_ALIGNED instead of open-coding it

2018-12-05 Thread Johannes Thumshirn
When using a 'var & (PAGE_SIZE - 1)' construct one is checking for a page
alignment and thus should use the PAGE_ALIGNED() macro instead of
open-coding it.

Convert all open-coded occurrences of PAGE_ALIGNED().

Signed-off-by: Johannes Thumshirn 
---
 fs/btrfs/check-integrity.c | 8 
 fs/btrfs/compression.c | 2 +-
 fs/btrfs/inode.c   | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/fs/btrfs/check-integrity.c b/fs/btrfs/check-integrity.c
index d319c3020c09..84e9729badaa 100644
--- a/fs/btrfs/check-integrity.c
+++ b/fs/btrfs/check-integrity.c
@@ -1601,7 +1601,7 @@ static int btrfsic_read_block(struct btrfsic_state *state,
BUG_ON(block_ctx->datav);
BUG_ON(block_ctx->pagev);
BUG_ON(block_ctx->mem_to_free);
-   if (block_ctx->dev_bytenr & ((u64)PAGE_SIZE - 1)) {
+   if (!PAGE_ALIGNED(block_ctx->dev_bytenr)) {
pr_info("btrfsic: read_block() with unaligned bytenr %llu\n",
   block_ctx->dev_bytenr);
return -1;
@@ -1778,7 +1778,7 @@ static void btrfsic_process_written_block(struct 
btrfsic_dev_state *dev_state,
return;
}
is_metadata = 1;
-   BUG_ON(BTRFS_SUPER_INFO_SIZE & (PAGE_SIZE - 1));
+   BUG_ON(!PAGE_ALIGNED(BTRFS_SUPER_INFO_SIZE));
processed_len = BTRFS_SUPER_INFO_SIZE;
if (state->print_mask &
BTRFSIC_PRINT_MASK_TREE_BEFORE_SB_WRITE) {
@@ -2892,12 +2892,12 @@ int btrfsic_mount(struct btrfs_fs_info *fs_info,
struct list_head *dev_head = _devices->devices;
struct btrfs_device *device;
 
-   if (fs_info->nodesize & ((u64)PAGE_SIZE - 1)) {
+   if (!PAGE_ALIGNED(fs_info->nodesize)) {
pr_info("btrfsic: cannot handle nodesize %d not being a 
multiple of PAGE_SIZE %ld!\n",
   fs_info->nodesize, PAGE_SIZE);
return -1;
}
-   if (fs_info->sectorsize & ((u64)PAGE_SIZE - 1)) {
+   if (!PAGE_ALIGNED(fs_info->sectorsize)) {
pr_info("btrfsic: cannot handle sectorsize %d not being a 
multiple of PAGE_SIZE %ld!\n",
   fs_info->sectorsize, PAGE_SIZE);
return -1;
diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c
index 2ab5591449f2..d5381f39a9e8 100644
--- a/fs/btrfs/compression.c
+++ b/fs/btrfs/compression.c
@@ -301,7 +301,7 @@ blk_status_t btrfs_submit_compressed_write(struct inode 
*inode, u64 start,
blk_status_t ret;
int skip_sum = BTRFS_I(inode)->flags & BTRFS_INODE_NODATASUM;
 
-   WARN_ON(start & ((u64)PAGE_SIZE - 1));
+   WARN_ON(!PAGE_ALIGNED(start));
cb = kmalloc(compressed_bio_size(fs_info, compressed_len), GFP_NOFS);
if (!cb)
return BLK_STS_RESOURCE;
diff --git a/fs/btrfs/inode.c b/fs/btrfs/inode.c
index bc0564c384de..5c52e91b01e8 100644
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -2027,7 +2027,7 @@ int btrfs_set_extent_delalloc(struct inode *inode, u64 
start, u64 end,
  unsigned int extra_bits,
  struct extent_state **cached_state, int dedupe)
 {
-   WARN_ON((end & (PAGE_SIZE - 1)) == 0);
+   WARN_ON(PAGE_ALIGNED(end));
return set_extent_delalloc(_I(inode)->io_tree, start, end,
   extra_bits, cached_state);
 }
-- 
2.16.4