[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4F91862F.2030502@zabbo.net>
Date: Fri, 20 Apr 2012 11:52:15 -0400
From: Zach Brown <zab@...bo.net>
To: Jeff Moyer <jmoyer@...hat.com>
CC: Dave Kleikamp <dave.kleikamp@...cle.com>,
"Maxim V. Patlasov" <mpatlasov@...allels.com>,
"linux-fsdevel@...r.kernel.org" <linux-fsdevel@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [RFC PATCH v2 15/21] loop: use aio to perform io on the underlying
file
On 04/20/2012 11:20 AM, Jeff Moyer wrote:
> Dave Kleikamp<dave.kleikamp@...cle.com> writes:
>
>> On 04/20/2012 09:48 AM, Maxim V. Patlasov wrote:
>>> On 03/30/2012 07:43 PM, Dave Kleikamp wrote:
>>>> From: Zach Brown<zab@...bo.net>
>>>>
>>>> This uses the new kernel aio interface to process loopback IO by
>>>> submitting concurrent direct aio. Previously loop's IO was serialized
>>>> by synchronous processing in a thread.
>>>>
>>>
>>> The patch ignores REQ_FLUSH bit of bi_rw. Is it simply overlook?
>>
>> Good question. Since the loop device is sending only direct IO requests,
>> it shouldn't be necessary to explicitly flush page cache, but REQ_FLUSH
>
> REQ_FLUSH isn't about the page cache, it's about flushing the volatile
> disk write cache. You need to handle that.
I guess O_DIRECT doesn't routinely issue flushes simply because it's too
expensive? Apps that care about consistent IO and O_DIRECT are expected
to not have writeback caching enabled? 'cause there's no way they're
issuing syncs themselves.
So yeah, I'd agree that the loop code should be reworked a bit so that
both the filebacked and aio methods call vfs_sync() when they see
REQ_FLUSH.
Bleh.
- z
(Sorry, no real time to dig into this now. Lots more time in two months!)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists