[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <76da9920-caa1-5f80-549f-ae07ada34fa9@huaweicloud.com>
Date: Wed, 8 May 2024 09:45:59 +0800
From: Kemeng Shi <shikemeng@...weicloud.com>
To: Zhang Yi <yi.zhang@...weicloud.com>
Cc: linux-ext4@...r.kernel.org, linux-kernel@...r.kernel.org, tytso@....edu,
jack@...e.com
Subject: Re: [PATCH 4/9] jbd2: move repeat tag around to remove a repeat check
of b_frozen_data
on 5/7/2024 8:41 PM, Zhang Yi wrote:
> On 2024/5/6 22:17, Kemeng Shi wrote:
>> We make sure b_frozen_data is not NULL before jump to "repeat" tag, move
>> "repeat" tag around to remove repeat check of b_frozen_data.
>>
>> Signed-off-by: Kemeng Shi <shikemeng@...weicloud.com>
>> ---
>> fs/jbd2/journal.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c
>> index 9a35d0c5b38c..77fcdc76fdfd 100644
>> --- a/fs/jbd2/journal.c
>> +++ b/fs/jbd2/journal.c
>> @@ -353,12 +353,12 @@ int jbd2_journal_write_metadata_buffer(transaction_t *transaction,
>> atomic_set(&new_bh->b_count, 1);
>>
>> spin_lock(&jh_in->b_state_lock);
>> -repeat:
>> /*
>> * If a new transaction has already done a buffer copy-out, then
>> * we use that version of the data for the commit.
>> */
>> if (jh_in->b_frozen_data) {
>> +repeat:
>> done_copy_out = 1;
>> new_folio = virt_to_folio(jh_in->b_frozen_data);
>> new_offset = offset_in_folio(new_folio, jh_in->b_frozen_data);
>>
>
> I suppose we could drop the repeat tag entirely, just set the new_folio and
> new_offset, and then goto handle do_escape. We don't need to call
> jbd2_buffer_frozen_trigger() and check for escaping again, is that right?
Sure, sounds reasonable to me. Will do it in next version. Thanks
>
> Thanks,
> Yi.
>
Powered by blists - more mailing lists