fs/buffer.c: Remove the unnecessary init operation after allocating buffer_head.
Subsystems (2)
PATCH 1/1 fs/buffer.c: Remove the unnecessary init operation after allocating buffer_head.
Because alloc struct buffer_head using kmem_cache_zalloc,so it's not need to call 'init_buffer(bh, NULL, NULL)'.
--- fs/buffer.c | 2 -- fs/jbd/journal.c | 1 - fs/jbd2/journal.c | 1 - 3 files changed, 4 deletions(-)
fs/buffer.c +0 -2
@@ -865,8 +865,6 @@ try_again:/* Link the buffer to its page */ set_bh_page (bh, page, offset); - -init_buffer (bh,NULL ,NULL ); }return head;/*
fs/jbd/journal.c +0 -1
@@ -311,7 +311,6 @@ int journal_write_metadata_buffer(transaction_t *transaction, new_bh =alloc_buffer_head (GFP_NOFS |__GFP_NOFAIL);/* keep subsequent assertions sane */ new_bh->b_state =0 ; -init_buffer (new_bh,NULL ,NULL );atomic_set (&new_bh->b_count,1 ); new_jh =journal_add_journal_head (new_bh);/* This sleeps */
fs/jbd2/journal.c +0 -1
@@ -368,7 +368,6 @@ retry_alloc:/* keep subsequent assertions sane */ new_bh->b_state =0 ; -init_buffer (new_bh,NULL ,NULL );atomic_set (&new_bh->b_count,1 ); new_jh =jbd2_journal_add_journal_head (new_bh);/* This sleeps */
Signature · 1 line
1.8.2.rc2.4.g7799588
Jan Kara
reviewerQuoted 28 lines · majianpeng
Because alloc struct
buffer_headusing kmem_cache_zalloc,so it's not need to call 'init_buffer(bh, NULL, NULL)'.Signed-off-by Jianpeng Ma <[email protected]>--- fs/buffer.c | 2 -- fs/jbd/journal.c | 1 - fs/jbd2/journal.c | 1 - 3 files changed, 4 deletions(-)fs/buffer.c +0
-2@@ -865,8 +865,6 @@ try_again:/* Link the buffer to its page */ set_bh_page (bh, page, offset); - -init_buffer (bh,NULL ,NULL ); }return head;/* fs/jbd/journal.c +0
-0
fs/jbd/journal.c int journal_write_metadata_buffer(transaction_t *transaction, · line 314
Quoted 4 lines
fs/jbd/journal.c +0
-1@@ -311,7 +311,6 @@ int journal_write_metadata_buffer(transaction_t *transaction, new_bh =alloc_buffer_head (GFP_NOFS |__GFP_NOFAIL);/* keep subsequent assertions sane */ new_bh->b_state =0 ; -init_buffer (new_bh,NULL ,NULL );
You can also remove b_state = 0 , can't you?
fs/jbd2/journal.c retry_alloc: · line 371
Quoted 12 lines
fs/jbd/journal.c +0
-0atomic_set (&new_bh->b_count,1 ); new_jh =journal_add_journal_head (new_bh);/* This sleeps */ fs/jbd2/journal.c +0
-1@@ -368,7 +368,6 @@ retry_alloc:/* keep subsequent assertions sane */ new_bh->b_state =0 ; -init_buffer (new_bh,NULL ,NULL );
And the same here. Otherwise the patch looks OK.
Honza
Signature · 2 lines
Jan Kara <[email protected]> SUSE Labs, CR
Quoted 44 lines · Jan Kara
Quoted 28 lines · majianpeng
Because alloc struct
buffer_headusing kmem_cache_zalloc,so it's not need to call 'init_buffer(bh, NULL, NULL)'.Signed-off-by Jianpeng Ma <[email protected]>--- fs/buffer.c | 2 -- fs/jbd/journal.c | 1 - fs/jbd2/journal.c | 1 - 3 files changed, 4 deletions(-)fs/buffer.c +0
-2@@ -865,8 +865,6 @@ try_again:/* Link the buffer to its page */ set_bh_page (bh, page, offset); - -init_buffer (bh,NULL ,NULL ); }return head;/* fs/jbd/journal.c +0
-0fs/jbd/journal.c int journal_write_metadata_buffer(transaction_t *transaction, · line 314
Quoted 4 lines
fs/jbd/journal.c +0
-1@@ -311,7 +311,6 @@ int journal_write_metadata_buffer(transaction_t *transaction, new_bh =alloc_buffer_head (GFP_NOFS |__GFP_NOFAIL);/* keep subsequent assertions sane */ new_bh->b_state =0 ; -init_buffer (new_bh,NULL ,NULL );You can also remove
b_state= 0 , can't you?Quoted 9 lines
fs/jbd/journal.c +0
-0atomic_set (&new_bh->b_count,1 ); new_jh =journal_add_journal_head (new_bh);/* This sleeps */ fs/jbd2/journal.c +0
-0@@ -368,7 +368,6 @@ retry_alloc:
Quoted 6 lines
fs/jbd2/journal.c retry_alloc: · line 371
Quoted 3 lines
fs/jbd2/journal.c +0
-1/* keep subsequent assertions sane */ new_bh->b_state =0 ; -init_buffer (new_bh,NULL ,NULL );And the same here. Otherwise the patch looks OK.
Honza
Thanks your suggestions.I'll resend .
Thanks!
Jianpeng