From: Jan Kara Subject: Re: [PATCH] jbd2: remove the conditional test Date: Tue, 6 Feb 2018 11:22:34 +0100 Message-ID: <20180206102234.s3yjrtjkfaup5vas@quack2.suse.cz> References: <1517840679-5902-1-git-send-email-wanglong19@meituan.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: darrick.wong@oracle.com, tytso@mit.edu, jack@suse.com, linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org To: Wang Long Return-path: Received: from mx2.suse.de ([195.135.220.15]:58148 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752187AbeBFKWi (ORCPT ); Tue, 6 Feb 2018 05:22:38 -0500 Content-Disposition: inline In-Reply-To: <1517840679-5902-1-git-send-email-wanglong19@meituan.com> Sender: linux-ext4-owner@vger.kernel.org List-ID: On Mon 05-02-18 22:24:39, Wang Long wrote: > kmem_cache_destroy already handles null pointers, so we can remove the > conditional test entirely. > > This patch also set NULL after the kmem_cache_destroy in function > jbd2_journal_destroy_handle_cache. > > Signed-off-by: Wang Long Looks good. You can add: Reviewed-by: Jan Kara Honza > --- > fs/jbd2/journal.c | 18 +++++++----------- > fs/jbd2/revoke.c | 12 ++++-------- > fs/jbd2/transaction.c | 6 ++---- > 3 files changed, 13 insertions(+), 23 deletions(-) > > diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c > index 93016bb..3c27a61a 100644 > --- a/fs/jbd2/journal.c > +++ b/fs/jbd2/journal.c > @@ -2286,8 +2286,7 @@ static void jbd2_journal_destroy_slabs(void) > int i; > > for (i = 0; i < JBD2_MAX_SLABS; i++) { > - if (jbd2_slab[i]) > - kmem_cache_destroy(jbd2_slab[i]); > + kmem_cache_destroy(jbd2_slab[i]); > jbd2_slab[i] = NULL; > } > } > @@ -2388,10 +2387,8 @@ static int jbd2_journal_init_journal_head_cache(void) > > static void jbd2_journal_destroy_journal_head_cache(void) > { > - if (jbd2_journal_head_cache) { > - kmem_cache_destroy(jbd2_journal_head_cache); > - jbd2_journal_head_cache = NULL; > - } > + kmem_cache_destroy(jbd2_journal_head_cache); > + jbd2_journal_head_cache = NULL; > } > > /* > @@ -2649,11 +2646,10 @@ static int __init jbd2_journal_init_handle_cache(void) > > static void jbd2_journal_destroy_handle_cache(void) > { > - if (jbd2_handle_cache) > - kmem_cache_destroy(jbd2_handle_cache); > - if (jbd2_inode_cache) > - kmem_cache_destroy(jbd2_inode_cache); > - > + kmem_cache_destroy(jbd2_handle_cache); > + jbd2_handle_cache = NULL; > + kmem_cache_destroy(jbd2_inode_cache); > + jbd2_inode_cache = NULL; > } > > /* > diff --git a/fs/jbd2/revoke.c b/fs/jbd2/revoke.c > index 696ef15..240779e 100644 > --- a/fs/jbd2/revoke.c > +++ b/fs/jbd2/revoke.c > @@ -180,14 +180,10 @@ static struct jbd2_revoke_record_s *find_revoke_record(journal_t *journal, > > void jbd2_journal_destroy_revoke_caches(void) > { > - if (jbd2_revoke_record_cache) { > - kmem_cache_destroy(jbd2_revoke_record_cache); > - jbd2_revoke_record_cache = NULL; > - } > - if (jbd2_revoke_table_cache) { > - kmem_cache_destroy(jbd2_revoke_table_cache); > - jbd2_revoke_table_cache = NULL; > - } > + kmem_cache_destroy(jbd2_revoke_record_cache); > + jbd2_revoke_record_cache = NULL; > + kmem_cache_destroy(jbd2_revoke_table_cache); > + jbd2_revoke_table_cache = NULL; > } > > int __init jbd2_journal_init_revoke_caches(void) > diff --git a/fs/jbd2/transaction.c b/fs/jbd2/transaction.c > index ac31103..3b642e0 100644 > --- a/fs/jbd2/transaction.c > +++ b/fs/jbd2/transaction.c > @@ -49,10 +49,8 @@ int __init jbd2_journal_init_transaction_cache(void) > > void jbd2_journal_destroy_transaction_cache(void) > { > - if (transaction_cache) { > - kmem_cache_destroy(transaction_cache); > - transaction_cache = NULL; > - } > + kmem_cache_destroy(transaction_cache); > + transaction_cache = NULL; > } > > void jbd2_journal_free_transaction(transaction_t *transaction) > -- > 1.8.3.1 > > -- Jan Kara SUSE Labs, CR