Re: [PATCH 7/7] jbd2: remove unneeded check of ret in jbd2_fc_get_buf

From: Kemeng Shi
Date: Wed Jul 31 2024 - 04:37:32 EST




on 7/31/2024 2:17 PM, Zhang Yi wrote:
> On 2024/7/30 19:33, Kemeng Shi wrote:
>> Simply return -EINVAL if j_fc_off is invalid to avoid repeated check of
>> ret.
>>
>> Signed-off-by: Kemeng Shi <shikemeng@xxxxxxxxxxxxxxx>
>> ---
>> fs/jbd2/journal.c | 8 ++------
>> 1 file changed, 2 insertions(+), 6 deletions(-)
>>
>> diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c
>> index dc18b9f7c999..6f90f7b8e9e5 100644
>> --- a/fs/jbd2/journal.c
>> +++ b/fs/jbd2/journal.c
>> @@ -842,12 +842,8 @@ int jbd2_fc_get_buf(journal_t *journal, struct buffer_head **bh_out)
>> fc_off = journal->j_fc_off;
>> blocknr = journal->j_fc_first + fc_off;
>> journal->j_fc_off++;
>> - } else {
>> - ret = -EINVAL;
>> - }
>> -
>> - if (ret)
>> - return ret;
>> + } else
>> + return -EINVAL;
>>
>
> I'd like this style, just a suggestion.
>
> if (journal->j_fc_off + journal->j_fc_first >= journal->j_fc_last)
> return -EINVAL;
>
> fc_off = journal->j_fc_off;
> blocknr = journal->j_fc_first + fc_off;
> journal->j_fc_off++;
>
> ...
>
Sorry, I miss this. I also think code looks better in this way. I will do
it in next version. Thanks.
> Thanks,
> Yi.
>
>
>> ret = jbd2_journal_bmap(journal, blocknr, &pblock);
>> if (ret)
>>
>