[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d65650b2-05b2-1fd0-54d6-76e9e1e40786@huawei.com>
Date: Thu, 28 May 2020 21:23:16 +0800
From: "zhangyi (F)" <yi.zhang@...wei.com>
To: Christoph Hellwig <hch@...radead.org>
CC: <linux-ext4@...r.kernel.org>, <tytso@....edu>, <jack@...e.cz>,
<adilger.kernel@...ger.ca>, <zhangxiaoxu5@...wei.com>
Subject: Re: [PATCH 02/10] fs: pick out ll_rw_one_block() helper function
Hi, Christoph
On 2020/5/28 13:07, Christoph Hellwig wrote:
> On Tue, May 26, 2020 at 03:17:46PM +0800, zhangyi (F) wrote:
>> Pick out ll_rw_one_block() helper function from ll_rw_block() for
>> submitting one locked buffer for reading/writing.
>
> That should probably read factor out instead of pick out.
>
>>
>> Signed-off-by: zhangyi (F) <yi.zhang@...wei.com>
>> ---
>> fs/buffer.c | 41 ++++++++++++++++++++++---------------
>> include/linux/buffer_head.h | 1 +
>> 2 files changed, 26 insertions(+), 16 deletions(-)
>>
>> diff --git a/fs/buffer.c b/fs/buffer.c
>> index a60f60396cfa..3a2226f88b2d 100644
>> --- a/fs/buffer.c
>> +++ b/fs/buffer.c
>> @@ -3081,6 +3081,29 @@ int submit_bh(int op, int op_flags, struct buffer_head *bh)
>> }
>> EXPORT_SYMBOL(submit_bh);
>>
>> +void ll_rw_one_block(int op, int op_flags, struct buffer_head *bh)
>> +{
>> + BUG_ON(!buffer_locked(bh));
>> +
>> + if (op == WRITE) {
>> + if (test_clear_buffer_dirty(bh)) {
>> + bh->b_end_io = end_buffer_write_sync;
>> + get_bh(bh);
>> + submit_bh(op, op_flags, bh);
>> + return;
>> + }
>> + } else {
>> + if (!buffer_uptodate(bh)) {
>> + bh->b_end_io = end_buffer_read_sync;
>> + get_bh(bh);
>> + submit_bh(op, op_flags, bh);
>> + return;
>> + }
>> + }
>> + unlock_buffer(bh);
>> +}
>> +EXPORT_SYMBOL(ll_rw_one_block);
>
> I don't think you want separate read and write sides. In fact I'm not
> sure you want the helper at all. At this point just open coding it
> rather than adding more overhead to core code might be a better idea.
>
Yeah, what I want is only the read side, it's fine by me to open coding it.
Thanks,
Yi.
Powered by blists - more mailing lists