| To: | Jan Kara <jack@xxxxxxx> |
|---|---|
| Subject: | Re: [PATCH v3 6/6] block: use dax_do_io() if blkdev_dax_capable() |
| From: | Dan Williams <dan.j.williams@xxxxxxxxx> |
| Date: | Wed, 17 Feb 2016 14:18:13 -0800 |
| Cc: | Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>, "linux-kernel@xxxxxxxxxxxxxxx" <linux-kernel@xxxxxxxxxxxxxxx>, "J. Bruce Fields" <bfields@xxxxxxxxxxxx>, "Theodore Ts'o" <tytso@xxxxxxx>, Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>, Andreas Dilger <adilger.kernel@xxxxxxxxx>, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>, Dave Chinner <david@xxxxxxxxxxxxx>, Jan Kara <jack@xxxxxxxx>, Jeff Layton <jlayton@xxxxxxxxxxxxxxx>, Jens Axboe <axboe@xxxxxxxxx>, Matthew Wilcox <willy@xxxxxxxxxxxxxxx>, linux-block@xxxxxxxxxxxxxxx, linux-ext4 <linux-ext4@xxxxxxxxxxxxxxx>, linux-fsdevel <linux-fsdevel@xxxxxxxxxxxxxxx>, Linux MM <linux-mm@xxxxxxxxx>, "linux-nvdimm@xxxxxxxxxxxx" <linux-nvdimm@xxxxxxxxxxxx>, XFS Developers <xfs@xxxxxxxxxxx>, Jens Axboe <axboe@xxxxxx>, Al Viro <viro@xxxxxxxxxxxxxxxx>, Matthew Wilcox <matthew.r.wilcox@xxxxxxxxx> |
| Delivered-to: | xfs@xxxxxxxxxxx |
| Dkim-signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=C+0uSI3cB9KmmmSg1+NAceAELfr1b7ISWHbGssuO+ZQ=; b=E859VOzcTOTsIB6IHVMMkyHoTcIwTVCDQ+3b5RWFVqINIVUqGVg1Vp/IucETOJhS1O kGgZas1Xn3JbcCaNVxD9WOZ46sNUT7WamIMLgsA1mR1of4FwImvqvPoUjKCD+Zz4Yz30 TzEdOVi1PJ/KlJu/o3iyUY+uea0WeLV5fgrZew6Oyuw5M5JZ2v9PSX0p3UcJEAkJ2Lo2 0MfBBgxY/nLlR6ZrccdNtEvW1uXe7fiuhAmjldY3tvpG40PbP3jdhYwPDvfZRY3nWLQW EFX0M8cRMa6/Cq4I2Q2Q67zLvYcZW9MMw+xhph1eQ6587r4qD3TH6dCsS04yTWJR1s6O wglg== |
| In-reply-to: | <20160217215420.GK14140@xxxxxxxxxxxxx> |
| References: | <1455680059-20126-1-git-send-email-ross.zwisler@xxxxxxxxxxxxxxx> <1455680059-20126-7-git-send-email-ross.zwisler@xxxxxxxxxxxxxxx> <20160217215420.GK14140@xxxxxxxxxxxxx> |
On Wed, Feb 17, 2016 at 1:54 PM, Jan Kara <jack@xxxxxxx> wrote: > On Tue 16-02-16 20:34:19, Ross Zwisler wrote: >> From: Dan Williams <dan.j.williams@xxxxxxxxx> >> >> Setting S_DAX on an inode requires that the inode participate in the >> DAX-fsync mechanism which expects to use the pagecache for tracking >> potentially dirty cpu cachelines. However, dax_do_io() participates in >> the standard pagecache sync semantics and arranges for dirty pages to be >> flushed through the driver when a direct-IO operation accesses the same >> ranges. >> >> It should always be valid to use the dax_do_io() path regardless of >> whether the block_device inode has S_DAX set. In either case dirty >> pages or dirty cachelines are made durable before the direct-IO >> operation proceeds. > > Please no. I agree that going via DAX path for normal likely won't > introduce new data corruption issues. But I dislike having a special > case for block devices. Also you have no way of turning DAX off for block > devices AFAIU and as Dave said, DAX should be opt-in, not opt-out. Note > that you may actually want to go through the block layer for normal IO e.g. > because you use IO cgroups to limit processes so using DAX regresses some > functionality. > Sounds good. As Ross mentioned in the cover letter, I'm fine with dropping this one for now as we think through how to restore raw device DAX support. In the meantime we can still force CONFIG_BLK_DEV_DAX=y for testing. |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: [PATCH v3 3/6] ext4: Online defrag not supported with DAX, Jan Kara |
|---|---|
| Next by Date: | i have a benuiness with you response so that we will starts immediately. Thanks,, Mr Tony koon |
| Previous by Thread: | Re: [PATCH v3 6/6] block: use dax_do_io() if blkdev_dax_capable(), Jan Kara |
| Next by Thread: | [PATCH] xfs: test inode32/inode64 options w/ remount & growfs, Eric Sandeen |
| Indexes: | [Date] [Thread] [Top] [All Lists] |