[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKLKtzezhmb0ydaWko_r=QZxKfnHx-15pg6tPuw50nbds_tA7g@mail.gmail.com>
Date: Sun, 4 Mar 2012 13:32:51 +0530
From: Saugata Das <saugata.das@...aro.org>
To: Christoph Hellwig <hch@...radead.org>
Cc: Saugata Das <saugata.das@...ricsson.com>,
linux-ext4@...r.kernel.org, linux-fsdevel@...r.kernel.org,
arnd.bergmann@...aro.org, tytso@....edu, adilger@...mcloud.com,
venkat@...aro.org
Subject: Re: [PATCH v2] REQ_META set during meta data write
On 3 March 2012 15:04, Christoph Hellwig <hch@...radead.org> wrote:
> On Fri, Mar 02, 2012 at 06:15:09PM +0530, Saugata Das wrote:
>> --- a/fs/buffer.c
>> +++ b/fs/buffer.c
>> @@ -2926,6 +2926,9 @@ int submit_bh(int rw, struct buffer_head * bh)
>> if (test_set_buffer_req(bh) && (rw & WRITE))
>> clear_buffer_write_io_error(bh);
>>
>> + if (buffer_meta(bh))
>> + rw |= REQ_META;
>> +
>
> submit_bh has a perfectly valid rw argument where you can pass REQ_META.
> Please use that instead of abusing a buffer state bit for an I/O
> submission flag.
>
Typically, during meta-data writes, the buffer is only marked dirty
(__ext4_handle_dirty_metadata). The submit_bh of the dirty meta-data
buffer happens later from writeback thread which in general flushes
out all the buffers. From this generic handling of dirty buffers from
writeback thread via generic writepage functions till submit_bh, it is
not possible to identify whether the buffer was corresponding to any
meta-data without having an extra information in the buffer itself.
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists