From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vishal Verma Subject: Re: [PATCH v2 5/5] dax: handle media errors in dax_do_io Date: Tue, 26 Apr 2016 09:01:32 -0600 Message-ID: <1461682892.26226.23.camel@kernel.org> References: <1459303190-20072-1-git-send-email-vishal.l.verma@intel.com> <1459303190-20072-6-git-send-email-vishal.l.verma@intel.com> <20160420205923.GA24797@infradead.org> <1461434916.3695.7.camel@intel.com> <20160425083114.GA27556@infradead.org> <1461604476.3106.12.camel@intel.com> <20160426083332.GB364@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Cc: "Wilcox, Matthew R" , "linux-kernel@vger.kernel.org" , "linux-block@vger.kernel.org" , "xfs@oss.sgi.com" , "linux-nvdimm@ml01.01.org" , "jmoyer@redhat.com" , "linux-mm@kvack.org" , "viro@zeniv.linux.org.uk" , "axboe@fb.com" , "akpm@linux-foundation.org" , "linux-fsdevel@vger.kernel.org" , "linux-ext4@vger.kernel.org" , "david@fromorbit.com" , "jack@suse.cz" To: "hch@infradead.org" , "Verma, Vishal L" Return-path: In-Reply-To: <20160426083332.GB364@infradead.org> Sender: owner-linux-mm@kvack.org List-Id: linux-ext4.vger.kernel.org On Tue, 2016-04-26 at 01:33 -0700, hch@infradead.org wrote: > On Mon, Apr 25, 2016 at 05:14:36PM +0000, Verma, Vishal L wrote: > >=20 > > - Application hits EIO doing dax_IO or load/store io > >=20 > > - It checks badblocks and discovers it's files have lost data > >=20 > > - It write()s those sectors (possibly converted to file offsets > > using > > fiemap) > > ?? ?? * This triggers the fallback path, but if the application is > > doing > > this level of recovery, it will know the sector is bad, and write > > the > > entire sector > This sounds like a mess. >=20 > >=20 > > I think if we want to keep allowing arbitrary alignments for the > > dax_do_io path, we'd need: > > 1. To represent badblocks at a finer granularity (likely cache > > lines) > > 2. To allow the driver to do IO to a *block device* at sub-sector > > granularity > It's not a block device if it supports DAX.=C2=A0=C2=A0It's byte addres= sable > memory masquerading as a block device. Yes but we made that decision a while back with pmem :) Are you saying it should stop being a block device anymore? > -- > To unsubscribe from this list: send the line "unsubscribe linux- > block" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at=C2=A0=C2=A0http://vger.kernel.org/majordomo-info= .html -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from relay.sgi.com (relay2.corp.sgi.com [137.38.102.29]) by oss.sgi.com (Postfix) with ESMTP id 94FCE7CDF for ; Tue, 26 Apr 2016 10:01:53 -0500 (CDT) Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by relay2.corp.sgi.com (Postfix) with ESMTP id 647DE304067 for ; Tue, 26 Apr 2016 08:01:50 -0700 (PDT) Received: from mail.kernel.org ([198.145.29.136]) by cuda.sgi.com with ESMTP id 6CHvCc3lQOotXJbP (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Tue, 26 Apr 2016 08:01:44 -0700 (PDT) Message-ID: <1461682892.26226.23.camel@kernel.org> Subject: Re: [PATCH v2 5/5] dax: handle media errors in dax_do_io From: Vishal Verma Date: Tue, 26 Apr 2016 09:01:32 -0600 In-Reply-To: <20160426083332.GB364@infradead.org> References: <1459303190-20072-1-git-send-email-vishal.l.verma@intel.com> <1459303190-20072-6-git-send-email-vishal.l.verma@intel.com> <20160420205923.GA24797@infradead.org> <1461434916.3695.7.camel@intel.com> <20160425083114.GA27556@infradead.org> <1461604476.3106.12.camel@intel.com> <20160426083332.GB364@infradead.org> Mime-Version: 1.0 List-Id: XFS Filesystem from SGI List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xfs-bounces@oss.sgi.com Sender: xfs-bounces@oss.sgi.com To: "hch@infradead.org" , "Verma, Vishal L" Cc: "axboe@fb.com" , "jack@suse.cz" , "linux-nvdimm@ml01.01.org" , "linux-kernel@vger.kernel.org" , "xfs@oss.sgi.com" , "linux-block@vger.kernel.org" , "linux-mm@kvack.org" , "jmoyer@redhat.com" , "Wilcox, Matthew R" , "linux-fsdevel@vger.kernel.org" , "akpm@linux-foundation.org" , "linux-ext4@vger.kernel.org" , "viro@zeniv.linux.org.uk" T24gVHVlLCAyMDE2LTA0LTI2IGF0IDAxOjMzIC0wNzAwLCBoY2hAaW5mcmFkZWFkLm9yZyB3cm90 ZToKPiBPbiBNb24sIEFwciAyNSwgMjAxNiBhdCAwNToxNDozNlBNICswMDAwLCBWZXJtYSwgVmlz aGFsIEwgd3JvdGU6Cj4gPiAKPiA+IC0gQXBwbGljYXRpb24gaGl0cyBFSU8gZG9pbmcgZGF4X0lP IG9yIGxvYWQvc3RvcmUgaW8KPiA+IAo+ID4gLSBJdCBjaGVja3MgYmFkYmxvY2tzIGFuZCBkaXNj b3ZlcnMgaXQncyBmaWxlcyBoYXZlIGxvc3QgZGF0YQo+ID4gCj4gPiAtIEl0IHdyaXRlKClzIHRo b3NlIHNlY3RvcnMgKHBvc3NpYmx5IGNvbnZlcnRlZCB0byBmaWxlIG9mZnNldHMKPiA+IHVzaW5n Cj4gPiBmaWVtYXApCj4gPiA/PyA/PyAqIFRoaXMgdHJpZ2dlcnMgdGhlIGZhbGxiYWNrIHBhdGgs IGJ1dCBpZiB0aGUgYXBwbGljYXRpb24gaXMKPiA+IGRvaW5nCj4gPiB0aGlzIGxldmVsIG9mIHJl Y292ZXJ5LCBpdCB3aWxsIGtub3cgdGhlIHNlY3RvciBpcyBiYWQsIGFuZCB3cml0ZQo+ID4gdGhl Cj4gPiBlbnRpcmUgc2VjdG9yCj4gVGhpcyBzb3VuZHMgbGlrZSBhIG1lc3MuCj4gCj4gPiAKPiA+ IEkgdGhpbmsgaWYgd2Ugd2FudCB0byBrZWVwIGFsbG93aW5nIGFyYml0cmFyeSBhbGlnbm1lbnRz IGZvciB0aGUKPiA+IGRheF9kb19pbyBwYXRoLCB3ZSdkIG5lZWQ6Cj4gPiAxLiBUbyByZXByZXNl bnQgYmFkYmxvY2tzIGF0IGEgZmluZXIgZ3JhbnVsYXJpdHkgKGxpa2VseSBjYWNoZQo+ID4gbGlu ZXMpCj4gPiAyLiBUbyBhbGxvdyB0aGUgZHJpdmVyIHRvIGRvIElPIHRvIGEgKmJsb2NrIGRldmlj ZSogYXQgc3ViLXNlY3Rvcgo+ID4gZ3JhbnVsYXJpdHkKPiBJdCdzIG5vdCBhIGJsb2NrIGRldmlj ZSBpZiBpdCBzdXBwb3J0cyBEQVguwqDCoEl0J3MgYnl0ZSBhZGRyZXNzYWJsZQo+IG1lbW9yeSBt YXNxdWVyYWRpbmcgYXMgYSBibG9jayBkZXZpY2UuCgpZZXMgYnV0IHdlIG1hZGUgdGhhdCBkZWNp c2lvbiBhIHdoaWxlIGJhY2sgd2l0aCBwbWVtIDopCkFyZSB5b3Ugc2F5aW5nIGl0IHNob3VsZCBz dG9wIGJlaW5nIGEgYmxvY2sgZGV2aWNlIGFueW1vcmU/Cgo+IC0tCj4gVG8gdW5zdWJzY3JpYmUg ZnJvbSB0aGlzIGxpc3Q6IHNlbmQgdGhlIGxpbmUgInVuc3Vic2NyaWJlIGxpbnV4LQo+IGJsb2Nr IiBpbgo+IHRoZSBib2R5IG9mIGEgbWVzc2FnZSB0byBtYWpvcmRvbW9Admdlci5rZXJuZWwub3Jn Cj4gTW9yZSBtYWpvcmRvbW8gaW5mbyBhdMKgwqBodHRwOi8vdmdlci5rZXJuZWwub3JnL21ham9y ZG9tby1pbmZvLmh0bWwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCnhmcyBtYWlsaW5nIGxpc3QKeGZzQG9zcy5zZ2kuY29tCmh0dHA6Ly9vc3Muc2dpLmNv bS9tYWlsbWFuL2xpc3RpbmZvL3hmcwo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf0-f200.google.com (mail-pf0-f200.google.com [209.85.192.200]) by kanga.kvack.org (Postfix) with ESMTP id A29356B0005 for ; Tue, 26 Apr 2016 11:01:44 -0400 (EDT) Received: by mail-pf0-f200.google.com with SMTP id e190so33157522pfe.3 for ; Tue, 26 Apr 2016 08:01:44 -0700 (PDT) Received: from mail.kernel.org (mail.kernel.org. [198.145.29.136]) by mx.google.com with ESMTPS id ih9si4948719pad.75.2016.04.26.08.01.43 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 26 Apr 2016 08:01:43 -0700 (PDT) Message-ID: <1461682892.26226.23.camel@kernel.org> Subject: Re: [PATCH v2 5/5] dax: handle media errors in dax_do_io From: Vishal Verma Date: Tue, 26 Apr 2016 09:01:32 -0600 In-Reply-To: <20160426083332.GB364@infradead.org> References: <1459303190-20072-1-git-send-email-vishal.l.verma@intel.com> <1459303190-20072-6-git-send-email-vishal.l.verma@intel.com> <20160420205923.GA24797@infradead.org> <1461434916.3695.7.camel@intel.com> <20160425083114.GA27556@infradead.org> <1461604476.3106.12.camel@intel.com> <20160426083332.GB364@infradead.org> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: owner-linux-mm@kvack.org List-ID: To: "hch@infradead.org" , "Verma, Vishal L" Cc: "Wilcox, Matthew R" , "linux-kernel@vger.kernel.org" , "linux-block@vger.kernel.org" , "xfs@oss.sgi.com" , "linux-nvdimm@ml01.01.org" , "jmoyer@redhat.com" , "linux-mm@kvack.org" , "viro@zeniv.linux.org.uk" , "axboe@fb.com" , "akpm@linux-foundation.org" , "linux-fsdevel@vger.kernel.org" , "linux-ext4@vger.kernel.org" , "david@fromorbit.com" , "jack@suse.cz" On Tue, 2016-04-26 at 01:33 -0700, hch@infradead.org wrote: > On Mon, Apr 25, 2016 at 05:14:36PM +0000, Verma, Vishal L wrote: > > > > - Application hits EIO doing dax_IO or load/store io > > > > - It checks badblocks and discovers it's files have lost data > > > > - It write()s those sectors (possibly converted to file offsets > > using > > fiemap) > > ?? ?? * This triggers the fallback path, but if the application is > > doing > > this level of recovery, it will know the sector is bad, and write > > the > > entire sector > This sounds like a mess. > > > > > I think if we want to keep allowing arbitrary alignments for the > > dax_do_io path, we'd need: > > 1. To represent badblocks at a finer granularity (likely cache > > lines) > > 2. To allow the driver to do IO to a *block device* at sub-sector > > granularity > It's not a block device if it supports DAX.A A It's byte addressable > memory masquerading as a block device. Yes but we made that decision a while back with pmem :) Are you saying it should stop being a block device anymore? > -- > To unsubscribe from this list: send the line "unsubscribe linux- > block" in > the body of a message to majordomo@vger.kernel.org > More majordomo info atA A http://vger.kernel.org/majordomo-info.html -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752702AbcDZPBr (ORCPT ); Tue, 26 Apr 2016 11:01:47 -0400 Received: from mail.kernel.org ([198.145.29.136]:48178 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752675AbcDZPBo (ORCPT ); Tue, 26 Apr 2016 11:01:44 -0400 Message-ID: <1461682892.26226.23.camel@kernel.org> Subject: Re: [PATCH v2 5/5] dax: handle media errors in dax_do_io From: Vishal Verma To: "hch@infradead.org" , "Verma, Vishal L" Cc: "Wilcox, Matthew R" , "linux-kernel@vger.kernel.org" , "linux-block@vger.kernel.org" , "xfs@oss.sgi.com" , "linux-nvdimm@ml01.01.org" , "jmoyer@redhat.com" , "linux-mm@kvack.org" , "viro@zeniv.linux.org.uk" , "axboe@fb.com" , "akpm@linux-foundation.org" , "linux-fsdevel@vger.kernel.org" , "linux-ext4@vger.kernel.org" , "david@fromorbit.com" , "jack@suse.cz" Date: Tue, 26 Apr 2016 09:01:32 -0600 In-Reply-To: <20160426083332.GB364@infradead.org> References: <1459303190-20072-1-git-send-email-vishal.l.verma@intel.com> <1459303190-20072-6-git-send-email-vishal.l.verma@intel.com> <20160420205923.GA24797@infradead.org> <1461434916.3695.7.camel@intel.com> <20160425083114.GA27556@infradead.org> <1461604476.3106.12.camel@intel.com> <20160426083332.GB364@infradead.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.18.5.2 (3.18.5.2-1.fc23) Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 2016-04-26 at 01:33 -0700, hch@infradead.org wrote: > On Mon, Apr 25, 2016 at 05:14:36PM +0000, Verma, Vishal L wrote: > > > > - Application hits EIO doing dax_IO or load/store io > > > > - It checks badblocks and discovers it's files have lost data > > > > - It write()s those sectors (possibly converted to file offsets > > using > > fiemap) > > ?? ?? * This triggers the fallback path, but if the application is > > doing > > this level of recovery, it will know the sector is bad, and write > > the > > entire sector > This sounds like a mess. > > > > > I think if we want to keep allowing arbitrary alignments for the > > dax_do_io path, we'd need: > > 1. To represent badblocks at a finer granularity (likely cache > > lines) > > 2. To allow the driver to do IO to a *block device* at sub-sector > > granularity > It's not a block device if it supports DAX.  It's byte addressable > memory masquerading as a block device. Yes but we made that decision a while back with pmem :) Are you saying it should stop being a block device anymore? > -- > To unsubscribe from this list: send the line "unsubscribe linux- > block" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at  http://vger.kernel.org/majordomo-info.html