From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Verma, Vishal L" Subject: Re: [PATCH 0/8] nfit, libnvdimm: async address range scrub Date: Wed, 2 Mar 2016 01:45:03 +0000 Message-ID: <1456883098.4525.9.camel@intel.com> References: <20160224021655.22776.87952.stgit@dwillia2-desk3.amr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20160224021655.22776.87952.stgit@dwillia2-desk3.amr.corp.intel.com> Content-Language: en-US Content-ID: <464B2A60F1359C4CA00C70D3709709D7@intel.com> Sender: linux-kernel-owner@vger.kernel.org To: "Williams, Dan J" , "linux-nvdimm@lists.01.org" Cc: "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" List-Id: linux-acpi@vger.kernel.org T24gVHVlLCAyMDE2LTAyLTIzIGF0IDE4OjE2IC0wODAwLCBEYW4gV2lsbGlhbXMgd3JvdGU6DQo+ IEdpdmVuIHRoZSBjYXBhY2l0aWVzIG9mIG5leHQgZ2VuZXJhdGlvbiBwZXJzaXN0ZW50IG1lbW9y eSBkZXZpY2VzIGENCj4gc2NydWIgb3BlcmF0aW9uIHRvIGZpbmQgYWxsIHBvaXNvbiBtYXkgdGFr ZSAxMHMgb2Ygc2Vjb25kcy7CoMKgV2Ugd2FudA0KPiB0aGlzIHNjcnViIHdvcmsgdG8gYmUgZG9u ZSBhc3luY2hyb25vdXNseSB3aXRoIHRoZSByZXN0IG9mIHN5c3RlbQ0KPiBpbml0aWFsaXphdGlv biwgc28gd2UgbW92ZSBpdCBvdXQgb2YgbGluZSBmcm9tIHRoZSBORklUIHByb2JpbmcsIGkuZS4N Cj4gYWNwaV9uZml0X2FkZCgpLg0KPiANCj4gSG93ZXZlciwgd2UgbWF5IHdhbnQgdG8gc3luY2hy b25vdXNseSB3YWl0IGZvciB0aGF0IHNjcnViYmluZyB0bw0KPiBjb21wbGV0ZSBiZWZvcmUgd2Ug cHJvYmUgYW55IHBtZW0gZGV2aWNlcy7CoMKgQ29uc2lkZXIgdGhlIGNhc2Ugd2hlcmUNCj4gY29u c3VtaW5nIHBvaXNvbiB0cmlnZ2VycyBhIG1hY2hpbmUgY2hlY2sgYW5kIGEgcmVib290LsKgwqBU aGF0IGV2ZW50DQo+IHdpbGwNCj4gdHJpZ2dlciBwbGF0Zm9ybSBmaXJtd2FyZSB0byBpbml0aWF0 ZSBhIHNjcnViLsKgwqBUaGUga2VybmVsIHNob3VsZA0KPiBjb21wbGV0ZSBhbnkgZmlybXdhcmUg aW5pdGlhdGVkIHNjcnVicyBhcyB0aG9zZSBsaWtlbHkgaW5kaWNhdGUgdGhlDQo+IHByZXNlbmNl IG9mIGtub3duIHBvaXNvbi4NCj4gDQo+IFdoZW4gZXJyb3JzIGFyZSBub3QgcHJlc2VudCwgcGxh dGZvcm0gZmlybXdhcmUgZGlkIG5vdCBpbml0aWF0ZQ0KPiBzY3J1YmJpbmcsIHdlIHN0aWxsIHNj cnViLCBidXQgYXN5bmNocm9ub3VzbHkuwqDCoFRoaXMgdHJhZGVzIG9mZiBhIHJpc2sNCj4gb2Yg aGl0dGluZyBuZXcgdW5rbm93biBwb2lzb24gcmFuZ2VzIHdpdGggbWFraW5nIHRoZSBkYXRhIGF2 YWlsYWJsZQ0KPiBmYXN0ZXIgYWZ0ZXIgbG9hZGluZyB0aGUgZHJpdmVyLg0KPiANCj4gVGhpcyBh c3luYyBzY3J1YiBjYXBhYmlsaXR5IGlzIGFsc28gdXNlZnVsIGluIHRoZSBmdXR1cmUgd2hlbiB3 ZQ0KPiBpbnRlZ3JhdGUgVG9ueSBMdWNrJ3MgbWNzYWZlX2NvcHkoKSAob3Igd2hhdGV2ZXIgaXQg aXMNCj4gZXZlbnR1YWxseSBjYWxsZWQpLsKgwqBBZnRlciBhIG1hY2hpbmUgY2hlY2sgcmVjb3Zl cnkgZXZlbnQgd2UgY2FuIHNjcnViDQo+IHRoZSBwbWVtIG5hbWVzcGFjZSB0byBzZWUgaWYgdGhl cmUgYXJlIGFueSBvdGhlciBsYXRlbnQgZXJyb3JzIGFuZA0KPiBvdGhlcndpc2UgdXBkYXRlIHRo ZSAnYmFkYmxvY2tzJyBsaXN0IHdpdGggdGhlIG5ldyBlbnRyaWVzLg0KPiANCj4gVGhpcyBwYXNz ZXMgdGhlIGxpYm5kY3RsIHVuaXQgdGVzdCBzdWl0ZSwgd2l0aCBzb21lIG1pbm9yIHVwZGF0ZXMg dG8NCj4gYWNjb3VudCBmb3IgdGhlIGZhY3QgdGhhdCB3aGVuICJtb2Rwcm9iZSBuZml0X3Rlc3Qi IHJldHVybnMgbm90IGFsbA0KPiByZWdpb25zIGFyZSByZWdpc3RlcmVkLg0KPiANCj4gLS0tDQo+ IA0KPiBEYW4gV2lsbGlhbXMgKDgpOg0KPiDCoMKgwqDCoMKgwqBsaWJudmRpbW0sIG5maXQ6IGNl bnRyYWxpemUgY29tbWFuZCBzdGF0dXMgdHJhbnNsYXRpb24NCj4gwqDCoMKgwqDCoMKgbGlibnZk aW1tOiBwcm90ZWN0IG52ZGltbV97YnVzfG5hbWVzcGFjZX1fYWRkX3BvaXNvbigpIHdpdGgNCj4g bnZkaW1tX2J1c19sb2NrKCkNCj4gwqDCoMKgwqDCoMKgbGlibnZkaW1tOiBhc3luYyBub3RpZmlj YXRpb24gc3VwcG9ydA0KPiDCoMKgwqDCoMKgwqBuZml0LCB0b29scy90ZXN0aW5nL252ZGltbTog dW5pZnkgY29tbW9uIGluaXQgZm9yIGFjcGlfbmZpdF9kZXNjDQo+IMKgwqDCoMKgwqDCoG5maXQs IGxpYm52ZGltbTogYXN5bmMgcmVnaW9uIHNjcnViIHdvcmtxdWV1ZQ0KPiDCoMKgwqDCoMKgwqBu Zml0OiBzY3J1YiBhbmQgcmVnaXN0ZXIgcmVnaW9ucyBpbiBhIHdvcmtxdWV1ZQ0KPiDCoMKgwqDC oMKgwqBuZml0OiBkaXNhYmxlIHVzZXJzcGFjZSBpbml0aWF0ZWQgYXJzIGR1cmluZyBzY3J1Yg0K PiDCoMKgwqDCoMKgwqB0b29scy90ZXN0aW5nL252ZGltbTogZXhwYW5kIGFycyB1bml0IHRlc3Rp bmcNCj4gDQo+IA0KPiDCoGRyaXZlcnMvYWNwaS9uZml0LmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgfMKgwqA3NjEgKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+IC0tLS0tLS0tLS0t DQo+IMKgZHJpdmVycy9hY3BpL25maXQuaMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB8wqDC oMKgMjQgKw0KPiDCoGRyaXZlcnMvbnZkaW1tL2J1cy5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqB8wqDCoMKgNDYgKysNCj4gwqBkcml2ZXJzL252ZGltbS9jb3JlLmPCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqB8wqDCoDExMCArKysrLQ0KPiDCoGRyaXZlcnMvbnZkaW1tL2RpbW1fZGV2cy5jwqDC oMKgwqDCoMKgwqB8wqDCoMKgwqA2wqANCj4gwqBkcml2ZXJzL252ZGltbS9uZC5owqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoHzCoMKgwqDCoDLCoA0KPiDCoGRyaXZlcnMvbnZkaW1tL3BtZW0u Y8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHzCoMKgwqAxNSArDQo+IMKgZHJpdmVycy9udmRpbW0v cmVnaW9uLmPCoMKgwqDCoMKgwqDCoMKgwqDCoHzCoMKgwqAxMiArDQo+IMKgaW5jbHVkZS9saW51 eC9saWJudmRpbW0uaMKgwqDCoMKgwqDCoMKgwqB8wqDCoMKgwqA1wqANCj4gwqBpbmNsdWRlL2xp bnV4L25kLmjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB8wqDCoMKgwqA3wqANCj4gwqB0 b29scy90ZXN0aW5nL252ZGltbS90ZXN0L25maXQuYyB8wqDCoDEzMyArKysrKy0tDQo+IMKgMTEg ZmlsZXMgY2hhbmdlZCwgODA5IGluc2VydGlvbnMoKyksIDMxMiBkZWxldGlvbnMoLSkNCg0KDQpI aSBEYW4sDQoNCkxvb2tzIGdvb2QgdG8gbWUsIHRoYW5rcyBmb3Iga25vY2tpbmcgdGhpcyBvdXQh DQoNCkZvciB0aGUgc2VyaWVzLA0KUmV2aWV3ZWQtYnk6IFZpc2hhbCBWZXJtYSA8dmlzaGFsLmwu dmVybWFAaW50ZWwuY29tPg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by ml01.01.org (Postfix) with ESMTP id 0AC191A1E2A for ; Tue, 1 Mar 2016 17:45:13 -0800 (PST) From: "Verma, Vishal L" Subject: Re: [PATCH 0/8] nfit, libnvdimm: async address range scrub Date: Wed, 2 Mar 2016 01:45:03 +0000 Message-ID: <1456883098.4525.9.camel@intel.com> References: <20160224021655.22776.87952.stgit@dwillia2-desk3.amr.corp.intel.com> In-Reply-To: <20160224021655.22776.87952.stgit@dwillia2-desk3.amr.corp.intel.com> Content-Language: en-US Content-ID: <464B2A60F1359C4CA00C70D3709709D7@intel.com> MIME-Version: 1.0 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: linux-nvdimm-bounces@lists.01.org Sender: "Linux-nvdimm" To: "Williams, Dan J" , "linux-nvdimm@lists.01.org" Cc: "linux-acpi@vger.kernel.org" , "linux-kernel@vger.kernel.org" List-ID: T24gVHVlLCAyMDE2LTAyLTIzIGF0IDE4OjE2IC0wODAwLCBEYW4gV2lsbGlhbXMgd3JvdGU6DQo+ IEdpdmVuIHRoZSBjYXBhY2l0aWVzIG9mIG5leHQgZ2VuZXJhdGlvbiBwZXJzaXN0ZW50IG1lbW9y eSBkZXZpY2VzIGENCj4gc2NydWIgb3BlcmF0aW9uIHRvIGZpbmQgYWxsIHBvaXNvbiBtYXkgdGFr ZSAxMHMgb2Ygc2Vjb25kcy7CoMKgV2Ugd2FudA0KPiB0aGlzIHNjcnViIHdvcmsgdG8gYmUgZG9u ZSBhc3luY2hyb25vdXNseSB3aXRoIHRoZSByZXN0IG9mIHN5c3RlbQ0KPiBpbml0aWFsaXphdGlv biwgc28gd2UgbW92ZSBpdCBvdXQgb2YgbGluZSBmcm9tIHRoZSBORklUIHByb2JpbmcsIGkuZS4N Cj4gYWNwaV9uZml0X2FkZCgpLg0KPiANCj4gSG93ZXZlciwgd2UgbWF5IHdhbnQgdG8gc3luY2hy b25vdXNseSB3YWl0IGZvciB0aGF0IHNjcnViYmluZyB0bw0KPiBjb21wbGV0ZSBiZWZvcmUgd2Ug cHJvYmUgYW55IHBtZW0gZGV2aWNlcy7CoMKgQ29uc2lkZXIgdGhlIGNhc2Ugd2hlcmUNCj4gY29u c3VtaW5nIHBvaXNvbiB0cmlnZ2VycyBhIG1hY2hpbmUgY2hlY2sgYW5kIGEgcmVib290LsKgwqBU aGF0IGV2ZW50DQo+IHdpbGwNCj4gdHJpZ2dlciBwbGF0Zm9ybSBmaXJtd2FyZSB0byBpbml0aWF0 ZSBhIHNjcnViLsKgwqBUaGUga2VybmVsIHNob3VsZA0KPiBjb21wbGV0ZSBhbnkgZmlybXdhcmUg aW5pdGlhdGVkIHNjcnVicyBhcyB0aG9zZSBsaWtlbHkgaW5kaWNhdGUgdGhlDQo+IHByZXNlbmNl IG9mIGtub3duIHBvaXNvbi4NCj4gDQo+IFdoZW4gZXJyb3JzIGFyZSBub3QgcHJlc2VudCwgcGxh dGZvcm0gZmlybXdhcmUgZGlkIG5vdCBpbml0aWF0ZQ0KPiBzY3J1YmJpbmcsIHdlIHN0aWxsIHNj cnViLCBidXQgYXN5bmNocm9ub3VzbHkuwqDCoFRoaXMgdHJhZGVzIG9mZiBhIHJpc2sNCj4gb2Yg aGl0dGluZyBuZXcgdW5rbm93biBwb2lzb24gcmFuZ2VzIHdpdGggbWFraW5nIHRoZSBkYXRhIGF2 YWlsYWJsZQ0KPiBmYXN0ZXIgYWZ0ZXIgbG9hZGluZyB0aGUgZHJpdmVyLg0KPiANCj4gVGhpcyBh c3luYyBzY3J1YiBjYXBhYmlsaXR5IGlzIGFsc28gdXNlZnVsIGluIHRoZSBmdXR1cmUgd2hlbiB3 ZQ0KPiBpbnRlZ3JhdGUgVG9ueSBMdWNrJ3MgbWNzYWZlX2NvcHkoKSAob3Igd2hhdGV2ZXIgaXQg aXMNCj4gZXZlbnR1YWxseSBjYWxsZWQpLsKgwqBBZnRlciBhIG1hY2hpbmUgY2hlY2sgcmVjb3Zl cnkgZXZlbnQgd2UgY2FuIHNjcnViDQo+IHRoZSBwbWVtIG5hbWVzcGFjZSB0byBzZWUgaWYgdGhl cmUgYXJlIGFueSBvdGhlciBsYXRlbnQgZXJyb3JzIGFuZA0KPiBvdGhlcndpc2UgdXBkYXRlIHRo ZSAnYmFkYmxvY2tzJyBsaXN0IHdpdGggdGhlIG5ldyBlbnRyaWVzLg0KPiANCj4gVGhpcyBwYXNz ZXMgdGhlIGxpYm5kY3RsIHVuaXQgdGVzdCBzdWl0ZSwgd2l0aCBzb21lIG1pbm9yIHVwZGF0ZXMg dG8NCj4gYWNjb3VudCBmb3IgdGhlIGZhY3QgdGhhdCB3aGVuICJtb2Rwcm9iZSBuZml0X3Rlc3Qi IHJldHVybnMgbm90IGFsbA0KPiByZWdpb25zIGFyZSByZWdpc3RlcmVkLg0KPiANCj4gLS0tDQo+ IA0KPiBEYW4gV2lsbGlhbXMgKDgpOg0KPiDCoMKgwqDCoMKgwqBsaWJudmRpbW0sIG5maXQ6IGNl bnRyYWxpemUgY29tbWFuZCBzdGF0dXMgdHJhbnNsYXRpb24NCj4gwqDCoMKgwqDCoMKgbGlibnZk aW1tOiBwcm90ZWN0IG52ZGltbV97YnVzfG5hbWVzcGFjZX1fYWRkX3BvaXNvbigpIHdpdGgNCj4g bnZkaW1tX2J1c19sb2NrKCkNCj4gwqDCoMKgwqDCoMKgbGlibnZkaW1tOiBhc3luYyBub3RpZmlj YXRpb24gc3VwcG9ydA0KPiDCoMKgwqDCoMKgwqBuZml0LCB0b29scy90ZXN0aW5nL252ZGltbTog dW5pZnkgY29tbW9uIGluaXQgZm9yIGFjcGlfbmZpdF9kZXNjDQo+IMKgwqDCoMKgwqDCoG5maXQs IGxpYm52ZGltbTogYXN5bmMgcmVnaW9uIHNjcnViIHdvcmtxdWV1ZQ0KPiDCoMKgwqDCoMKgwqBu Zml0OiBzY3J1YiBhbmQgcmVnaXN0ZXIgcmVnaW9ucyBpbiBhIHdvcmtxdWV1ZQ0KPiDCoMKgwqDC oMKgwqBuZml0OiBkaXNhYmxlIHVzZXJzcGFjZSBpbml0aWF0ZWQgYXJzIGR1cmluZyBzY3J1Yg0K PiDCoMKgwqDCoMKgwqB0b29scy90ZXN0aW5nL252ZGltbTogZXhwYW5kIGFycyB1bml0IHRlc3Rp bmcNCj4gDQo+IA0KPiDCoGRyaXZlcnMvYWNwaS9uZml0LmPCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgfMKgwqA3NjEgKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+IC0tLS0tLS0tLS0t DQo+IMKgZHJpdmVycy9hY3BpL25maXQuaMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB8wqDC oMKgMjQgKw0KPiDCoGRyaXZlcnMvbnZkaW1tL2J1cy5jwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqB8wqDCoMKgNDYgKysNCj4gwqBkcml2ZXJzL252ZGltbS9jb3JlLmPCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqB8wqDCoDExMCArKysrLQ0KPiDCoGRyaXZlcnMvbnZkaW1tL2RpbW1fZGV2cy5jwqDC oMKgwqDCoMKgwqB8wqDCoMKgwqA2wqANCj4gwqBkcml2ZXJzL252ZGltbS9uZC5owqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoHzCoMKgwqDCoDLCoA0KPiDCoGRyaXZlcnMvbnZkaW1tL3BtZW0u Y8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHzCoMKgwqAxNSArDQo+IMKgZHJpdmVycy9udmRpbW0v cmVnaW9uLmPCoMKgwqDCoMKgwqDCoMKgwqDCoHzCoMKgwqAxMiArDQo+IMKgaW5jbHVkZS9saW51 eC9saWJudmRpbW0uaMKgwqDCoMKgwqDCoMKgwqB8wqDCoMKgwqA1wqANCj4gwqBpbmNsdWRlL2xp bnV4L25kLmjCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqB8wqDCoMKgwqA3wqANCj4gwqB0 b29scy90ZXN0aW5nL252ZGltbS90ZXN0L25maXQuYyB8wqDCoDEzMyArKysrKy0tDQo+IMKgMTEg ZmlsZXMgY2hhbmdlZCwgODA5IGluc2VydGlvbnMoKyksIDMxMiBkZWxldGlvbnMoLSkNCg0KDQpI aSBEYW4sDQoNCkxvb2tzIGdvb2QgdG8gbWUsIHRoYW5rcyBmb3Iga25vY2tpbmcgdGhpcyBvdXQh DQoNCkZvciB0aGUgc2VyaWVzLA0KUmV2aWV3ZWQtYnk6IFZpc2hhbCBWZXJtYSA8dmlzaGFsLmwu dmVybWFAaW50ZWwuY29tPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpMaW51eC1udmRpbW0gbWFpbGluZyBsaXN0CkxpbnV4LW52ZGltbUBsaXN0cy4wMS5v cmcKaHR0cHM6Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1udmRpbW0K From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756732AbcCBBpK (ORCPT ); Tue, 1 Mar 2016 20:45:10 -0500 Received: from mga01.intel.com ([192.55.52.88]:33409 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755138AbcCBBpF (ORCPT ); Tue, 1 Mar 2016 20:45:05 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,524,1449561600"; d="scan'208";a="58019415" From: "Verma, Vishal L" To: "Williams, Dan J" , "linux-nvdimm@lists.01.org" CC: "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" Subject: Re: [PATCH 0/8] nfit, libnvdimm: async address range scrub Thread-Topic: [PATCH 0/8] nfit, libnvdimm: async address range scrub Thread-Index: AQHRbqmOF8io1Fyp+kWp0Cg3xmFJup9F8woA Date: Wed, 2 Mar 2016 01:45:03 +0000 Message-ID: <1456883098.4525.9.camel@intel.com> References: <20160224021655.22776.87952.stgit@dwillia2-desk3.amr.corp.intel.com> In-Reply-To: <20160224021655.22776.87952.stgit@dwillia2-desk3.amr.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.232.112.171] Content-Type: text/plain; charset="utf-8" Content-ID: <464B2A60F1359C4CA00C70D3709709D7@intel.com> MIME-Version: 1.0 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 u221jM6S008871 On Tue, 2016-02-23 at 18:16 -0800, Dan Williams wrote: > Given the capacities of next generation persistent memory devices a > scrub operation to find all poison may take 10s of seconds.  We want > this scrub work to be done asynchronously with the rest of system > initialization, so we move it out of line from the NFIT probing, i.e. > acpi_nfit_add(). > > However, we may want to synchronously wait for that scrubbing to > complete before we probe any pmem devices.  Consider the case where > consuming poison triggers a machine check and a reboot.  That event > will > trigger platform firmware to initiate a scrub.  The kernel should > complete any firmware initiated scrubs as those likely indicate the > presence of known poison. > > When errors are not present, platform firmware did not initiate > scrubbing, we still scrub, but asynchronously.  This trades off a risk > of hitting new unknown poison ranges with making the data available > faster after loading the driver. > > This async scrub capability is also useful in the future when we > integrate Tony Luck's mcsafe_copy() (or whatever it is > eventually called).  After a machine check recovery event we can scrub > the pmem namespace to see if there are any other latent errors and > otherwise update the 'badblocks' list with the new entries. > > This passes the libndctl unit test suite, with some minor updates to > account for the fact that when "modprobe nfit_test" returns not all > regions are registered. > > --- > > Dan Williams (8): >       libnvdimm, nfit: centralize command status translation >       libnvdimm: protect nvdimm_{bus|namespace}_add_poison() with > nvdimm_bus_lock() >       libnvdimm: async notification support >       nfit, tools/testing/nvdimm: unify common init for acpi_nfit_desc >       nfit, libnvdimm: async region scrub workqueue >       nfit: scrub and register regions in a workqueue >       nfit: disable userspace initiated ars during scrub >       tools/testing/nvdimm: expand ars unit testing > > >  drivers/acpi/nfit.c              |  761 +++++++++++++++++++++++++++ > ----------- >  drivers/acpi/nfit.h              |   24 + >  drivers/nvdimm/bus.c             |   46 ++ >  drivers/nvdimm/core.c            |  110 ++++- >  drivers/nvdimm/dimm_devs.c       |    6  >  drivers/nvdimm/nd.h              |    2  >  drivers/nvdimm/pmem.c            |   15 + >  drivers/nvdimm/region.c          |   12 + >  include/linux/libnvdimm.h        |    5  >  include/linux/nd.h               |    7  >  tools/testing/nvdimm/test/nfit.c |  133 +++++-- >  11 files changed, 809 insertions(+), 312 deletions(-) Hi Dan, Looks good to me, thanks for knocking this out! For the series, Reviewed-by: Vishal Verma