From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752482AbcFUQwV (ORCPT ); Tue, 21 Jun 2016 12:52:21 -0400 Received: from mail-by2on0129.outbound.protection.outlook.com ([207.46.100.129]:60576 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751804AbcFUQwS (ORCPT ); Tue, 21 Jun 2016 12:52:18 -0400 X-Greylist: delayed 73468 seconds by postgrey-1.27 at vger.kernel.org; Tue, 21 Jun 2016 12:52:18 EDT From: "Kani, Toshimitsu" To: "dan.j.williams@intel.com" CC: "linux-kernel@vger.kernel.org" , "sandeen@redhat.com" , "linux-nvdimm@ml01.01.org" , "agk@redhat.com" , "linux-raid@vger.kernel.org" , "snitzer@redhat.com" , "viro@zeniv.linux.org.uk" , "axboe@kernel.dk" , "axboe@fb.com" , "ross.zwisler@linux.intel.com" , "dm-devel@redhat.com" Subject: Re: [PATCH 0/6] Support DAX for device-mapper dm-linear devices Thread-Topic: [PATCH 0/6] Support DAX for device-mapper dm-linear devices Thread-Index: AQHRxcNvFc0gDtWw/UKSuO/qIYbBN5/oAoaAgAqtRoCAAAWsgIAAFjAAgAADUICAAAKLgIAAFViAgAASHACAAQDRgIAAH4oAgAAOIQCAAAAhAA== Date: Tue, 21 Jun 2016 16:35:56 +0000 Message-ID: <1466526342.3504.270.camel@hpe.com> References: <1465856497-19698-1-git-send-email-toshi.kani@hpe.com> <20160613225756.GA18417@redhat.com> <20160620180043.GA21261@redhat.com> <1466446861.3504.243.camel@hpe.com> <20160620194026.GA21657@redhat.com> <20160620195217.GB21657@redhat.com> <1466452883.3504.244.camel@hpe.com> <1466457467.3504.249.camel@hpe.com> <20160620222236.GA22461@redhat.com> <20160621134147.GA26392@redhat.com> <1466523280.3504.262.camel@hpe.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=toshi.kani@hpe.com; x-originating-ip: [15.219.163.9] x-ms-office365-filtering-correlation-id: 782fc4c3-2577-4ec1-bbe0-08d399f21e74 x-microsoft-exchange-diagnostics: 1;CS1PR84MB0007;6:Llo67o/rgobNK4AkfT0/k/4K97n/RO9qN+5p+U/2GJzVkT+djJHX8JzhzC0kJfnYRiQXBMB4t6aME3sU13Z9aa+hjPa7UsvF3/46Zw8WqzoAym51i+ROTD56AwFONyU0Jro6ytQKl9l7AqsiGsUhs3K9ONzatJ8ENfWfno+y+v6Jz+4e7s/SAfltiyvvenzkVS0g+JwiffP+dg1uFlu1XpLItrdmKeR2qQVFmig4Kgq1FVUmOghQ4r+FwuqFjE1RddbLDCQHcqsBDleTUDOzZS4wh1CcgdLiNp03Rz+FZVI=;5:KBD8U5F/JpsPEuiehidgqraWw7FpCIXjC95LmXOj3qjKtlBm16+MJckgF6DBBsQEkyy9Q08KsTQUxXxzRU0+JnZ5JesymYNEIqQ1d8OEXF/OyfkeddOC55kowTSKXUhMNI3/fjundDNMPitW7czPmw==;24:Ajwz2Rl12fV2wktVnge5iT5THfsoM4rQD2Uj29s3OOgbB00u1SktviZuh7SRGxceUhxRDWNRDD5LtfJLu0I2NqjzHgWY0vZcSm6Nd+ru20c=;7:k9s9TyXktKZgvqA445Xo102w1BSOUYQ+dJ2HQABGboayrzGbm6OBoemYKr6401ipc4ZkGcGjcqLIq+5H4ViAJCN/OX1uJWjtMtnWC7sqJGpgiTrk36c5AaPMrmQPcibBXYZ2sQlWRno//Rh/ueOqw6x/fD+zhGEJu/hIIfxF/R38DLNI1chkVU33Iy9aYBuxFBRBihfiVgoOiiQE1+Hv0WGKpqFbqEgVrwkURpnaXjLKd5NX6H7lzF4n8b/o7rts x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CS1PR84MB0007; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(227479698468861); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001);SRVR:CS1PR84MB0007;BCL:0;PCL:0;RULEID:;SRVR:CS1PR84MB0007; x-forefront-prvs: 098076C36C x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(6009001)(7916002)(24454002)(377424004)(199003)(189002)(377454003)(87936001)(11100500001)(8676002)(5640700001)(101416001)(2501003)(103116003)(575784001)(86362001)(93886004)(189998001)(36756003)(122556002)(81156014)(3280700002)(50986999)(76176999)(106116001)(54356999)(2351001)(66066001)(7736002)(105586002)(7846002)(68736007)(106356001)(92566002)(8936002)(99286002)(19580405001)(19580395003)(6116002)(33646002)(5002640100001)(77096005)(102836003)(3846002)(110136002)(2906002)(10400500002)(97736004)(3660700001)(2950100001)(81166006)(4326007)(2900100001)(586003);DIR:OUT;SFP:1102;SCL:1;SRVR:CS1PR84MB0007;H:CS1PR84MB0005.NAMPRD84.PROD.OUTLOOK.COM;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: MIME-Version: 1.0 X-OriginatorOrg: hpe.com X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Jun 2016 16:35:56.0893 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-Transport-CrossTenantHeadersStamped: CS1PR84MB0007 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id u5LGqRwB002973 On Tue, 2016-06-21 at 09:25 -0700, Dan Williams wrote: > On Tue, Jun 21, 2016 at 8:44 AM, Kani, Toshimitsu > wrote: > > > > On Tue, 2016-06-21 at 09:41 -0400, Mike Snitzer wrote: > > > > > > On Mon, Jun 20 2016 at  6:22pm -0400, > > > Mike Snitzer wrote: > > > > > > > > On Mon, Jun 20 2016 at  5:28pm -0400, > > > > Kani, Toshimitsu wrote: > >  : > > > > Looks good, I folded it in and tested it to work.  Pushed to my 'wip' > > > > branch. > > > > > > > > No longer seeing any corruption in my test that was using partitions > > > > to span pmem devices with a dm-linear device. > > > > > > > > Jens, any chance you'd be open to picking up the first 2 patches in > > > > this series?  Or would you like to see them folded or something > > > > different? > > > > > > I'm now wondering if we'd be better off setting a new QUEUE_FLAG_DAX > > > rather than establish GENHD_FL_DAX on the genhd? > > > > > > It'd be quite a bit easier to allow upper layers (e.g. XFS and ext4) to > > > check for a queue flag. > > > > I think GENHD_FL_DAX is more appropriate since DAX does not use a request > > queue, except for protecting the underlining device being disabled while > > direct_access() is called (b2e0d1625e19). > > > > About protecting direct_access, this patch assumes that the underlining > > device cannot be disabled until dtr() is called.  Is this correct?  If > > not, I will need to call dax_map_atomic(). > > Kernel internal usages of dax should be using dax_map_atomic() to > safely resolve device removal races. Will do.  In such case, shall I move dax_[un]map_atomic() to block_dev.c and rename them to bdev_dax_[un]map_atomic()? Thanks, -Toshi