btrfs: extent_buffer_uptodate() make it static and inline
diff mbox

Message ID 20180213043544.25225-1-anand.jain@oracle.com
State New
Headers show

Commit Message

Anand Jain Feb. 13, 2018, 4:35 a.m. UTC
extent_buffer_uptodate() is a trivial wrapper around test_bit()
and nothing else. So make it static and inline, save on code
space and call indirection.

Before:
   text	   data	    bss	    dec	    hex	filename
1131257	  82898	  18992	1233147	 12d0fb	fs/btrfs/btrfs.ko

After:
   text	   data	    bss	    dec	    hex	filename
1131090	  82898	  18992	1232980	 12d054	fs/btrfs/btrfs.ko

Signed-off-by: Anand Jain <anand.jain@oracle.com>
---
 fs/btrfs/extent_io.c | 5 -----
 fs/btrfs/extent_io.h | 5 ++++-
 2 files changed, 4 insertions(+), 6 deletions(-)

Comments

Nikolay Borisov Feb. 13, 2018, 7:18 a.m. UTC | #1
On 13.02.2018 06:35, Anand Jain wrote:
> extent_buffer_uptodate() is a trivial wrapper around test_bit()
> and nothing else. So make it static and inline, save on code
> space and call indirection.
> 
> Before:
>    text	   data	    bss	    dec	    hex	filename
> 1131257	  82898	  18992	1233147	 12d0fb	fs/btrfs/btrfs.ko
> 
> After:
>    text	   data	    bss	    dec	    hex	filename
> 1131090	  82898	  18992	1232980	 12d054	fs/btrfs/btrfs.ko
> 
> Signed-off-by: Anand Jain <anand.jain@oracle.com>

Reviewed-by: Nikolay Borisov <nborisov@suse.com> although there is one
nit below

> ---
>  fs/btrfs/extent_io.c | 5 -----
>  fs/btrfs/extent_io.h | 5 ++++-
>  2 files changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
> index bae57b408901..f300edae044b 100644
> --- a/fs/btrfs/extent_io.c
> +++ b/fs/btrfs/extent_io.c
> @@ -5229,11 +5229,6 @@ void set_extent_buffer_uptodate(struct extent_buffer *eb)
>  	}
>  }
>  
> -int extent_buffer_uptodate(struct extent_buffer *eb)
> -{
> -	return test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags);
> -}
> -
>  int read_extent_buffer_pages(struct extent_io_tree *tree,
>  			     struct extent_buffer *eb, int wait, int mirror_num)
>  {
> diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h
> index 72e5af2965a8..953d94662b8e 100644
> --- a/fs/btrfs/extent_io.h
> +++ b/fs/btrfs/extent_io.h
> @@ -489,7 +489,10 @@ void clear_extent_buffer_dirty(struct extent_buffer *eb);
>  int set_extent_buffer_dirty(struct extent_buffer *eb);
>  void set_extent_buffer_uptodate(struct extent_buffer *eb);
>  void clear_extent_buffer_uptodate(struct extent_buffer *eb);
> -int extent_buffer_uptodate(struct extent_buffer *eb);
> +static inline int extent_buffer_uptodate(struct extent_buffer *eb)
> +{
> +	return test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags);
> +}

nit: It just doesn't look good to have a static inline function
definition among a list of function declarations. A quick look at
extent_io.h shows that this function could have been put below the
inline def of extent_buffer_get.


>  int extent_buffer_under_io(struct extent_buffer *eb);
>  int map_private_extent_buffer(const struct extent_buffer *eb,
>  			      unsigned long offset, unsigned long min_len,
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Sterba Feb. 13, 2018, 4:31 p.m. UTC | #2
On Tue, Feb 13, 2018 at 09:18:51AM +0200, Nikolay Borisov wrote:
> 
> 
> On 13.02.2018 06:35, Anand Jain wrote:
> > extent_buffer_uptodate() is a trivial wrapper around test_bit()
> > and nothing else. So make it static and inline, save on code
> > space and call indirection.
> > 
> > Before:
> >    text	   data	    bss	    dec	    hex	filename
> > 1131257	  82898	  18992	1233147	 12d0fb	fs/btrfs/btrfs.ko
> > 
> > After:
> >    text	   data	    bss	    dec	    hex	filename
> > 1131090	  82898	  18992	1232980	 12d054	fs/btrfs/btrfs.ko
> > 
> > Signed-off-by: Anand Jain <anand.jain@oracle.com>
> 
> Reviewed-by: Nikolay Borisov <nborisov@suse.com> although there is one
> nit below
> 
> > ---
> >  fs/btrfs/extent_io.c | 5 -----
> >  fs/btrfs/extent_io.h | 5 ++++-
> >  2 files changed, 4 insertions(+), 6 deletions(-)
> > 
> > diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
> > index bae57b408901..f300edae044b 100644
> > --- a/fs/btrfs/extent_io.c
> > +++ b/fs/btrfs/extent_io.c
> > @@ -5229,11 +5229,6 @@ void set_extent_buffer_uptodate(struct extent_buffer *eb)
> >  	}
> >  }
> >  
> > -int extent_buffer_uptodate(struct extent_buffer *eb)
> > -{
> > -	return test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags);
> > -}
> > -
> >  int read_extent_buffer_pages(struct extent_io_tree *tree,
> >  			     struct extent_buffer *eb, int wait, int mirror_num)
> >  {
> > diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h
> > index 72e5af2965a8..953d94662b8e 100644
> > --- a/fs/btrfs/extent_io.h
> > +++ b/fs/btrfs/extent_io.h
> > @@ -489,7 +489,10 @@ void clear_extent_buffer_dirty(struct extent_buffer *eb);
> >  int set_extent_buffer_dirty(struct extent_buffer *eb);
> >  void set_extent_buffer_uptodate(struct extent_buffer *eb);
> >  void clear_extent_buffer_uptodate(struct extent_buffer *eb);
> > -int extent_buffer_uptodate(struct extent_buffer *eb);
> > +static inline int extent_buffer_uptodate(struct extent_buffer *eb)
> > +{
> > +	return test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags);
> > +}
> 
> nit: It just doesn't look good to have a static inline function
> definition among a list of function declarations. A quick look at
> extent_io.h shows that this function could have been put below the
> inline def of extent_buffer_get.

I will move it.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c
index bae57b408901..f300edae044b 100644
--- a/fs/btrfs/extent_io.c
+++ b/fs/btrfs/extent_io.c
@@ -5229,11 +5229,6 @@  void set_extent_buffer_uptodate(struct extent_buffer *eb)
 	}
 }
 
-int extent_buffer_uptodate(struct extent_buffer *eb)
-{
-	return test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags);
-}
-
 int read_extent_buffer_pages(struct extent_io_tree *tree,
 			     struct extent_buffer *eb, int wait, int mirror_num)
 {
diff --git a/fs/btrfs/extent_io.h b/fs/btrfs/extent_io.h
index 72e5af2965a8..953d94662b8e 100644
--- a/fs/btrfs/extent_io.h
+++ b/fs/btrfs/extent_io.h
@@ -489,7 +489,10 @@  void clear_extent_buffer_dirty(struct extent_buffer *eb);
 int set_extent_buffer_dirty(struct extent_buffer *eb);
 void set_extent_buffer_uptodate(struct extent_buffer *eb);
 void clear_extent_buffer_uptodate(struct extent_buffer *eb);
-int extent_buffer_uptodate(struct extent_buffer *eb);
+static inline int extent_buffer_uptodate(struct extent_buffer *eb)
+{
+	return test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags);
+}
 int extent_buffer_under_io(struct extent_buffer *eb);
 int map_private_extent_buffer(const struct extent_buffer *eb,
 			      unsigned long offset, unsigned long min_len,