From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Williams, Dan J" Subject: [GIT PULL] libnvdimm fixes for 4.2-rc2 Date: Sun, 12 Jul 2015 01:09:32 +0000 Message-ID: <1436663369.11451.5.camel@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com ([134.134.136.20]:21696 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751859AbbGLBJf (ORCPT ); Sat, 11 Jul 2015 21:09:35 -0400 Content-Language: en-US Content-ID: <41C6774BEF13054CBA71B45EFAA56FE2@intel.com> Sender: linux-acpi-owner@vger.kernel.org List-Id: linux-acpi@vger.kernel.org To: "torvalds@linux-foundation.org" Cc: "linux-kernel@vger.kernel.org" , "linux-nvdimm@lists.01.org" , "ross.zwisler@linux.intel.com" , "akpm@linux-foundation.org" , "linux-acpi@vger.kernel.org" , "Wysocki, Rafael J" SGkgTGludXMsIHBsZWFzZSBwdWxsIGZyb206DQoNCiAgZ2l0Oi8vZ2l0Lmtlcm5lbC5vcmcvcHVi L3NjbS9saW51eC9rZXJuZWwvZ2l0L2RqYncvbnZkaW1tIGxpYm52ZGltbS1maXhlcw0KDQouLi50 byByZWNlaXZlOg0KDQoxLyBGaXhlcyBmb3IgYSBoYW5kZnVsIG9mIHNtYXRjaCByZXBvcnRzIChU aGFua3MgRGFuIEMuISkgYW5kIG1pbm9yDQogICBidWcgZml4ZXMgKHBhdGNoZXMgMS02KQ0KDQoy LyBDb3JyZWN0bmVzcyBmaXhlcyB0byB0aGUgQkxLLW1vZGUgbnZkaW1tIGRyaXZlciAocGF0Y2hl cyA3LTEwKS4NCiAgIEdyYW50ZWQgdGhlc2UgYXJlIHNsaWdodGx5IGxhcmdlIGZvciBhIC1yYyB1 cGRhdGUuICBUaGV5IGhhdmUgYmVlbg0KICAgb3V0IGZvciByZXZpZXcgaW4gb25lIGZvcm0gb3Ig YW5vdGhlciBzaW5jZSB0aGUgZW5kIG9mIE1heSBhbmQgd2VyZQ0KICAgZGVmZXJyZWQgZnJvbSB0 aGUgbWVyZ2Ugd2luZG93IHdoaWxlIHdlIHNldHRsZWQgb24gdGhlICJQTUVNIEFQSSIgZm9yDQog ICB0aGUgUE1FTS1tb2RlIG52ZGltbSBkcml2ZXIgKGkuZS4gbWVtcmVtYXBfcG1lbSwgbWVtY3B5 X3RvX3BtZW0sIGFuZA0KICAgd21iX3BtZW0pLiAgTm93IHRoYXQgdGhvc2UgYXBpcyBhcmUgbWVy Z2VkIHdlIGltcGxlbWVudCB0aGVtIGluIHRoZQ0KICAgQkxLIGRyaXZlciB0byBndWFyYW50ZWUg dGhhdCBtbWlvIGFwZXJ0dXJlIG1vdmVzIHN0YXkgb3JkZXJlZCB3aXRoDQogICByZXNwZWN0IHRv IGluY29taW5nIHJlYWQvd3JpdGUgcmVxdWVzdHMsIGFuZCB0aGF0IHdyaXRlcyBhcmUgZmx1c2hl ZA0KICAgdGhyb3VnaCB0aG9zZSBtbWlvLXdpbmRvd3MgYW5kIHBsYXRmb3JtLWJ1ZmZlcnMgdG8g YmUgcGVyc2lzdGVudCBvbg0KICAgbWVkaWEuDQoNClRoZXNlIHBhc3MgdGhlIHN1Yi1zeXN0ZW0g dW5pdCB0ZXN0cyB3aXRoIHRoZSB1cGRhdGVzIHRvDQp0b29scy90ZXN0aW5nL252ZGltbSwgYW5k IGhhdmUgcmVjZWl2ZWQgYSBzdWNjZXNzZnVsIGJ1aWxkLXJlcG9ydCBmcm9tDQp0aGUga2J1aWxk IHJvYm90ICg0NjggY29uZmlncykuICBGdWxsIGdpdCBsb2cgYmVsb3cgd2l0aCBhY2tzIGZyb20N ClJhZmFlbCBmb3IgdGhlIHRvdWNoZXMgdG8gZHJpdmVycy9hY3BpLy4NCg0KW1BBVENIIDAxLzEw XSBzcGFyc2U6IGZpeCBtaXNwbGFjZWQgX19wbWVtIGRlZmluaXRpb24NCltQQVRDSCAwMi8xMF0g bGlibnZkaW1tOiBzbWF0Y2ggY2xlYW51cHMgaW4gX19uZF9pb2N0bA0KW1BBVENIIDAzLzEwXSBu dmRpbW06IEZpeCByZXR1cm4gdmFsdWUgb2YgbnZkaW1tX2J1c19pbml0KCkgaWYgY2xhc3NfY3Jl YXRlKCkgZmFpbHMNCltQQVRDSCAwNC8xMF0gbmZpdDogZml4IHNtYXRjaCAidXNlIGFmdGVyIG51 bGwgY2hlY2siIHJlcG9ydA0KW1BBVENIIDA1LzEwXSBwbWVtOiBhZGQgbWFpbnRhaW5lciBmb3Ig aW5jbHVkZS9saW51eC9wbWVtLmgNCltQQVRDSCAwNi8xMF0gdG9vbHMvdGVzdGluZy9udmRpbW06 IG1vY2sgaW9yZW1hcF93dA0KW1BBVENIIDA3LzEwXSB0b29scy90ZXN0aW5nL252ZGltbTogZml4 IHJldHVybiBjb2RlIGZvciB1bmltcGxlbWVudGVkIGNvbW1hbmRzDQpbUEFUQ0ggMDgvMTBdIHRv b2xzL3Rlc3RpbmcvbnZkaW1tOiBhZGQgbW9jayBhY3BpX25maXRfZmx1c2hfYWRkcmVzcyBlbnRy aWVzIHRvIG5maXRfdGVzdA0KW1BBVENIIDA5LzEwXSBuZml0OiB1cGRhdGUgYmxvY2sgSS9PIHBh dGggdG8gdXNlIFBNRU0gQVBJDQpbUEFUQ0ggMTAvMTBdIG5maXQ6IGFkZCBzdXBwb3J0IGZvciBO VkRJTU0gImxhdGNoIiBmbGFnDQoNClRoZSBmb2xsb3dpbmcgY2hhbmdlcyBzaW5jZSBjb21taXQg ODg3OTNlNWM3NzRlYzY5MzUxZWY2YjUyMDBiYjU5ZjUzMmU0MWJjYToNCg0KICBNZXJnZSB0YWcg J2xpYm52ZGltbS1mb3ItNC4yJyBvZiBnaXQ6Ly9naXQua2VybmVsLm9yZy9wdWIvc2NtL2xpbnV4 L2tlcm5lbC9naXQvZGpidy9udmRpbW0gKDIwMTUtMDYtMjkgMTA6MzQ6NDIgLTA3MDApDQoNCmFy ZSBhdmFpbGFibGUgaW4gdGhlIGdpdCByZXBvc2l0b3J5IGF0Og0KDQogIGdpdDovL2dpdC5rZXJu ZWwub3JnL3B1Yi9zY20vbGludXgva2VybmVsL2dpdC9kamJ3L252ZGltbSBsaWJudmRpbW0tZml4 ZXMNCg0KZm9yIHlvdSB0byBmZXRjaCBjaGFuZ2VzIHVwIHRvIGYwZjJjMDcyY2Y1MzBkNWI4ODkw YmU1MDUxY2M4YjM2YjBjNTRjY2U6DQoNCiAgbmZpdDogYWRkIHN1cHBvcnQgZm9yIE5WRElNTSAi bGF0Y2giIGZsYWcgKDIwMTUtMDctMTAgMTQ6NDM6NTAgLTA0MDApDQoNCi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCkF4ZWwg TGluICgxKToNCiAgICAgIG52ZGltbTogRml4IHJldHVybiB2YWx1ZSBvZiBudmRpbW1fYnVzX2lu aXQoKSBpZiBjbGFzc19jcmVhdGUoKSBmYWlscw0KDQpEYW4gV2lsbGlhbXMgKDYpOg0KICAgICAg c3BhcnNlOiBmaXggbWlzcGxhY2VkIF9fcG1lbSBkZWZpbml0aW9uDQogICAgICBsaWJudmRpbW06 IHNtYXRjaCBjbGVhbnVwcyBpbiBfX25kX2lvY3RsDQogICAgICBuZml0OiBmaXggc21hdGNoICJ1 c2UgYWZ0ZXIgbnVsbCBjaGVjayIgcmVwb3J0DQogICAgICB0b29scy90ZXN0aW5nL252ZGltbTog bW9jayBpb3JlbWFwX3d0DQogICAgICB0b29scy90ZXN0aW5nL252ZGltbTogZml4IHJldHVybiBj b2RlIGZvciB1bmltcGxlbWVudGVkIGNvbW1hbmRzDQogICAgICB0b29scy90ZXN0aW5nL252ZGlt bTogYWRkIG1vY2sgYWNwaV9uZml0X2ZsdXNoX2FkZHJlc3MgZW50cmllcyB0byBuZml0X3Rlc3QN Cg0KUm9zcyBad2lzbGVyICgzKToNCiAgICAgIHBtZW06IGFkZCBtYWludGFpbmVyIGZvciBpbmNs dWRlL2xpbnV4L3BtZW0uaA0KICAgICAgbmZpdDogdXBkYXRlIGJsb2NrIEkvTyBwYXRoIHRvIHVz ZSBQTUVNIEFQSQ0KICAgICAgbmZpdDogYWRkIHN1cHBvcnQgZm9yIE5WRElNTSAibGF0Y2giIGZs YWcNCg0KIE1BSU5UQUlORVJTICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArDQogZHJpdmVy cy9hY3BpL25maXQuYyAgICAgICAgICAgICAgIHwgMTM0ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tDQogZHJpdmVycy9hY3BpL25maXQuaCAgICAgICAgICAgICAgIHwgIDIw ICsrKysrLQ0KIGRyaXZlcnMvbnZkaW1tL2J1cy5jICAgICAgICAgICAgICB8ICAxMSArLS0tDQog aW5jbHVkZS9saW51eC9jb21waWxlci5oICAgICAgICAgIHwgICAyICstDQogdG9vbHMvdGVzdGlu Zy9udmRpbW0vS2J1aWxkICAgICAgIHwgICAzICsNCiB0b29scy90ZXN0aW5nL252ZGltbS90ZXN0 L2lvbWFwLmMgfCAgMjcgKysrKysrKysNCiB0b29scy90ZXN0aW5nL252ZGltbS90ZXN0L25maXQu YyAgfCAgNTIgKysrKysrKysrKysrKystDQogOCBmaWxlcyBjaGFuZ2VkLCAyMjMgaW5zZXJ0aW9u cygrKSwgMjcgZGVsZXRpb25zKC0pDQoNCg0KY29tbWl0IDMxZjAyNDU1NDU1ZDQwNTMyMGUyZjc0 OTY5NmJlZjRlMDI5MDNiMzUNCkF1dGhvcjogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0Bp bnRlbC5jb20+DQpEYXRlOiAgIFR1ZSBKdW4gMzAgMTI6MDc6MTcgMjAxNSAtMDQwMA0KDQogICAg c3BhcnNlOiBmaXggbWlzcGxhY2VkIF9fcG1lbSBkZWZpbml0aW9uDQogICAgDQogICAgTW92ZSB0 aGUgZGVmaW5pdGlvbiBvZiBfX3BtZW0gb3V0c2lkZSBvZiBDT05GSUdfU1BBUlNFX1JDVV9QT0lO VEVSIHRvIGZpeDoNCiAgICANCiAgICBkcml2ZXJzL252ZGltbS9wbWVtLmM6MTk4OjE3OiBzcGFy c2U6IHRvbyBtYW55IGFyZ3VtZW50cyBmb3IgZnVuY3Rpb24gX19idWlsdGluX2V4cGVjdA0KICAg IGRyaXZlcnMvbnZkaW1tL3BtZW0uYzozNjozMzogc3BhcnNlOiBleHBlY3RlZCA7IGF0IGVuZCBv ZiBkZWNsYXJhdGlvbg0KICAgIGRyaXZlcnMvbnZkaW1tL3BtZW0uYzo0ODoyMTogc3BhcnNlOiB2 b2lkIGRlY2xhcmF0aW9uDQogICAgDQogICAgLi4uZHVlIHRvIF9fcG1lbSBmYWlsaW5nIHRvIGJl IGRlZmluZWQgaW4gc29tZSBjb25maWd1cmF0aW9ucyB3aGVuDQogICAgQ09ORklHX1NQQVJTRV9S Q1VfUE9JTlRFUj15Lg0KICAgIA0KICAgIFJlcG9ydGVkLWJ5OiBrYnVpbGQgdGVzdCByb2JvdCA8 ZmVuZ2d1YW5nLnd1QGludGVsLmNvbT4NCiAgICBSZXBvcnRlZC1ieTogRGFuIENhcnBlbnRlciA8 ZGFuLmNhcnBlbnRlckBvcmFjbGUuY29tPg0KICAgIFNpZ25lZC1vZmYtYnk6IERhbiBXaWxsaWFt cyA8ZGFuLmoud2lsbGlhbXNAaW50ZWwuY29tPg0KDQpjb21taXQgYWY4MzRkNDU3ZDllZDY5ZTE0 ODM2YjYzZDBkYTE5OGZkZDJlYzcwNg0KQXV0aG9yOiBEYW4gV2lsbGlhbXMgPGRhbi5qLndpbGxp YW1zQGludGVsLmNvbT4NCkRhdGU6ICAgVHVlIEp1biAzMCAxNDoxMDowOSAyMDE1IC0wNDAwDQoN CiAgICBsaWJudmRpbW06IHNtYXRjaCBjbGVhbnVwcyBpbiBfX25kX2lvY3RsDQogICAgDQogICAg RHJvcCB1c2Ugb2YgYWNjZXNzX29rKCkgc2luY2Ugd2UgYXJlIGFscmVhZHkgdXNpbmcgY29weV97 dG98ZnJvbX1fdXNlcigpDQogICAgd2hpY2ggZG8gdGhlaXIgb3duIGFjY2Vzc19vaygpLg0KICAg IA0KICAgIFJlcG9ydGVkLWJ5OiBEYW4gQ2FycGVudGVyIDxkYW4uY2FycGVudGVyQG9yYWNsZS5j b20+DQogICAgU2lnbmVkLW9mZi1ieTogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRl bC5jb20+DQoNCmNvbW1pdCBkYWExZGVlNDA1ZDdkM2QzZTgxNmI4NGE2OTJlODM4YTU2NDdhMDJh DQpBdXRob3I6IEF4ZWwgTGluIDxheGVsLmxpbkBpbmdpY3MuY29tPg0KRGF0ZTogICBTdW4gSnVu IDI4IDE3OjAwOjU3IDIwMTUgKzA4MDANCg0KICAgIG52ZGltbTogRml4IHJldHVybiB2YWx1ZSBv ZiBudmRpbW1fYnVzX2luaXQoKSBpZiBjbGFzc19jcmVhdGUoKSBmYWlscw0KICAgIA0KICAgIFJl dHVybiBwcm9wZXIgZXJyb3IgaWYgY2xhc3NfY3JlYXRlKCkgZmFpbHMuDQogICAgDQogICAgU2ln bmVkLW9mZi1ieTogQXhlbCBMaW4gPGF4ZWwubGluQGluZ2ljcy5jb20+DQogICAgU2lnbmVkLW9m Zi1ieTogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+DQoNCmNvbW1pdCAx OTNjY2NhNDM4NTBkMjM1NWU3NjkwYTkzYWI5ZDdkNzhkMzhmOTA1DQpBdXRob3I6IERhbiBXaWxs aWFtcyA8ZGFuLmoud2lsbGlhbXNAaW50ZWwuY29tPg0KRGF0ZTogICBUdWUgSnVuIDMwIDE2OjA5 OjM5IDIwMTUgLTA0MDANCg0KICAgIG5maXQ6IGZpeCBzbWF0Y2ggInVzZSBhZnRlciBudWxsIGNo ZWNrIiByZXBvcnQNCiAgICANCiAgICBkcml2ZXJzL2FjcGkvbmZpdC5jOjEyMjQgYWNwaV9uZml0 X2Jsa19yZWdpb25fZW5hYmxlKCkNCiAgICAgICAgICAgICBlcnJvcjogd2UgcHJldmlvdXNseSBh c3N1bWVkICduZml0X21lbScgY291bGQgYmUgbnVsbCAoc2VlIGxpbmUgMTIyMykNCiAgICANCiAg ICBkcml2ZXJzL2FjcGkvbmZpdC5jDQogICAgICAxMjIyICAgICAgICAgIG5maXRfbWVtID0gbnZk aW1tX3Byb3ZpZGVyX2RhdGEobnZkaW1tKTsNCiAgICAgIDEyMjMgICAgICAgICAgaWYgKCFuZml0 X21lbSB8fCAhbmZpdF9tZW0tPmRjciB8fCAhbmZpdF9tZW0tPmJkdykgew0KICAgICAgICAgICAg ICAgICAgICAgICAgIF5eXl5eXl5eDQogICAgQ2hlY2suDQogICAgDQogICAgICAxMjI0ICAgICAg ICAgICAgICAgICAgZGV2X2RiZyhkZXYsICIlczogbWlzc2luZyVzJXMlc1xuIiwgX19mdW5jX18s DQogICAgICAxMjI1ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5maXRfbWVtID8g IiIgOiAiIG5maXRfbWVtIiwNCiAgICAgIDEyMjYgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbmZpdF9tZW0tPmRjciA/ICIiIDogIiBkY3IiLA0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeXl5eXl5eXl5eXl5eDQogICAgVW5jaGVja2VkIGRlcmVm ZXJlbmNlLg0KICAgIA0KICAgIFJlcG9ydGVkLWJ5OiBEYW4gQ2FycGVudGVyIDxkYW4uY2FycGVu dGVyQG9yYWNsZS5jb20+DQogICAgQWNrZWQtYnk6IFJvc3MgWndpc2xlciA8cm9zcy56d2lzbGVy QGxpbnV4LmludGVsLmNvbT4NCiAgICBTaWduZWQtb2ZmLWJ5OiBEYW4gV2lsbGlhbXMgPGRhbi5q LndpbGxpYW1zQGludGVsLmNvbT4NCg0KY29tbWl0IGI4NjRiYzE3ZjFjMzI2NzgzZjIzODgwNTdl MTVkM2UxNTMxMjVhYjkNCkF1dGhvcjogUm9zcyBad2lzbGVyIDxyb3NzLnp3aXNsZXJAbGludXgu aW50ZWwuY29tPg0KRGF0ZTogICBGcmkgSnVsIDEwIDExOjA2OjEwIDIwMTUgLTA2MDANCg0KICAg IHBtZW06IGFkZCBtYWludGFpbmVyIGZvciBpbmNsdWRlL2xpbnV4L3BtZW0uaA0KICAgIA0KICAg IFRoZSBmaWxlIGluY2x1ZGUvbGludXgvcG1lbS5oIHdhcyByZWNlbnRseSBjcmVhdGVkIHRvIGhv bGQgdGhlIFBNRU0gQVBJLA0KICAgIGFuZCBpcyBsb2dpY2FsbHkgcGFydCBvZiB0aGUgUE1FTSBk cml2ZXIuICBBZGQgYW4gZW50cnkgZm9yIHRoaXMgZmlsZSB0bw0KICAgIE1BSU5UQUlORVJTLg0K ICAgIA0KICAgIFNpZ25lZC1vZmYtYnk6IFJvc3MgWndpc2xlciA8cm9zcy56d2lzbGVyQGxpbnV4 LmludGVsLmNvbT4NCiAgICBTaWduZWQtb2ZmLWJ5OiBEYW4gV2lsbGlhbXMgPGRhbi5qLndpbGxp YW1zQGludGVsLmNvbT4NCg0KY29tbWl0IGIxYjJlNjIzNWE0NDE3NDE1MWZhM2JiMjI2NTdmNzQ5 NzI2MzU2MTgNCkF1dGhvcjogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+ DQpEYXRlOiAgIEZyaSBKdWwgMTAgMTE6MDY6MTEgMjAxNSAtMDYwMA0KDQogICAgdG9vbHMvdGVz dGluZy9udmRpbW06IG1vY2sgaW9yZW1hcF93dA0KICAgIA0KICAgIEluIHRoZSA0LjItcmMxIG1l cmdlIHRoZSBkZWZhdWx0X21lbXJlbWFwX3BtZW0oKSBpbXBsZW1lbnRhdGlvbiBzd2l0Y2hlZA0K ICAgIGZyb20gaW9yZW1hcF9ub2NhY2hlKCkgdG8gaW9yZW1hcF93dCgpLiAgQWRkIGl0IHRvIHRo ZSBsaXN0IG9mIG1vY2tlZA0KICAgIHJvdXRpbmVzIHRvIHJlc3RvcmUgdGhlIGFiaWxpdHkgdG8g cnVuIHRoZSB1bml0IHRlc3RzLg0KICAgIA0KICAgIFNpZ25lZC1vZmYtYnk6IERhbiBXaWxsaWFt cyA8ZGFuLmoud2lsbGlhbXNAaW50ZWwuY29tPg0KDQpjb21taXQgZjdlYzgzNjg0YWYwMjBjOTYx ZDdmYWI4MDFmOGUzZWY3Y2U1ZGUzMw0KQXV0aG9yOiBEYW4gV2lsbGlhbXMgPGRhbi5qLndpbGxp YW1zQGludGVsLmNvbT4NCkRhdGU6ICAgRnJpIEp1bCAxMCAxMTowNjoxMiAyMDE1IC0wNjAwDQoN CiAgICB0b29scy90ZXN0aW5nL252ZGltbTogZml4IHJldHVybiBjb2RlIGZvciB1bmltcGxlbWVu dGVkIGNvbW1hbmRzDQogICAgDQogICAgVGhlIGltcGxlbWVudGF0aW9uIGZvciB0aGUgbmV3ICJE SU1NIEZsYWdzIiBEU00gcmVsaWVzIG9uIHRoZSAtRU5PVFRZDQogICAgcmV0dXJuIGNvZGUgdG8g aW5kaWNhdGUgdGhhdCB0aGUgZmxhZ3MgYXJlIHVuaW1wbGltZW50ZWQgYW5kIHRvIGZhbGwNCiAg ICBiYWNrIHRvIGEgc2FmZSBkZWZhdWx0LiAgQXMgaXMgdGhlIC1FTlhJTyBlcnJvciBjb2RlIGVy cm9uZW9vdXNseQ0KICAgIGluZGljYXRlcyB0byBmYWlsIGVuYWJsaW5nIGEgQkxLIHJlZ2lvbi4N CiAgICANCiAgICBTaWduZWQtb2ZmLWJ5OiBEYW4gV2lsbGlhbXMgPGRhbi5qLndpbGxpYW1zQGlu dGVsLmNvbT4NCg0KY29tbWl0IDlkMjdhODdlYzllMTMxN2QzNjhiMWU1ZTNmNDgwODA3OGJhYThj NGMNCkF1dGhvcjogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+DQpEYXRl OiAgIEZyaSBKdWwgMTAgMTQ6MDc6MDMgMjAxNSAtMDQwMA0KDQogICAgdG9vbHMvdGVzdGluZy9u dmRpbW06IGFkZCBtb2NrIGFjcGlfbmZpdF9mbHVzaF9hZGRyZXNzIGVudHJpZXMgdG8gbmZpdF90 ZXN0DQogICAgDQogICAgSW4gcHJlcGFyYXRpb24gZm9yIGZpeGluZyB0aGUgQkxLIHBhdGggdG8g cHJvcGVybHkgdXNlICJkaXJlY3RlZA0KICAgIHBjb21taXQiIGVuYWJsZSB0aGUgdW5pdCB0ZXN0 IGluZnJhc3RydWN0dXJlIHRvIGVtaXQgbW9jayAiZmx1c2giDQogICAgdGFibGVzLiAgV3JpdGVz IHRvIHRoZXNlIGZsdXNoIGFkZHJlc3NlcyB0cmlnZ2VyIGEgbWVtb3J5IGNvbnRyb2xsZXIgdG8N CiAgICBmbHVzaCBpdHMgaW50ZXJuYWwgYnVmZmVycyB0byBwZXJzaXN0ZW50IG1lZGlhLCBzaW1p bGFyIHRvIHRoZSB4ODYNCiAgICAicGNvbW1pdCIgaW5zdHJ1Y3Rpb24uDQogICAgDQogICAgU2ln bmVkLW9mZi1ieTogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+DQoNCmNv bW1pdCBjMmFkMjk1NDBjYjkxM2JkOWU1MjZmYWU3N2MzNWM3ZmI0NWYyNGEzDQpBdXRob3I6IFJv c3MgWndpc2xlciA8cm9zcy56d2lzbGVyQGxpbnV4LmludGVsLmNvbT4NCkRhdGU6ICAgRnJpIEp1 bCAxMCAxMTowNjoxMyAyMDE1IC0wNjAwDQoNCiAgICBuZml0OiB1cGRhdGUgYmxvY2sgSS9PIHBh dGggdG8gdXNlIFBNRU0gQVBJDQogICAgDQogICAgVXBkYXRlIHRoZSBuZml0IGJsb2NrIEkvTyBw YXRoIHRvIHVzZSB0aGUgbmV3IFBNRU0gQVBJIGFuZCB0byBhZGhlcmUgdG8NCiAgICB0aGUgcmVh ZC93cml0ZSBmbG93cyBvdXRsaW5lZCBpbiB0aGUgIk5WRElNTSBCbG9jayBXaW5kb3cgRHJpdmVy DQogICAgV3JpdGVyJ3MgR3VpZGUiOg0KICAgIA0KICAgIGh0dHA6Ly9wbWVtLmlvL2RvY3VtZW50 cy9OVkRJTU1fRHJpdmVyX1dyaXRlcnNfR3VpZGUucGRmDQogICAgDQogICAgVGhpcyBpbmNsdWRl cyBhZGRpbmcgc3VwcG9ydCBmb3IgdGFyZ2V0ZWQgTlZESU1NIGZsdXNoZXMgY2FsbGVkICJmbHVz aA0KICAgIGhpbnRzIiBpbiB0aGUgQUNQSSA2LjAgc3BlY2lmaWNhdGlvbjoNCiAgICANCiAgICBo dHRwOi8vd3d3LnVlZmkub3JnL3NpdGVzL2RlZmF1bHQvZmlsZXMvcmVzb3VyY2VzL0FDUElfNi4w LnBkZg0KICAgIA0KICAgIEZvciBwZXJmb3JtYW5jZSBhbmQgbWVkaWEgZHVyYWJpbGl0eSB0aGUg bWFwcGluZyBmb3IgYSBCTEsgYXBlcnR1cmUgaXMNCiAgICBtb3ZlZCB0byBhIHdyaXRlLWNvbWJp bmluZyBtYXBwaW5nIHdoaWNoIGlzIGNvbnNpc3RlbnQgd2l0aA0KICAgIG1lbWNweV90b19wbWVt KCkgYW5kIHdtYl9ibGsoKS4NCiAgICANCiAgICBTaWduZWQtb2ZmLWJ5OiBSb3NzIFp3aXNsZXIg PHJvc3Muendpc2xlckBsaW51eC5pbnRlbC5jb20+DQogICAgQWNrZWQtYnk6IFJhZmFlbCBKLiBX eXNvY2tpIDxyYWZhZWwuai53eXNvY2tpQGludGVsLmNvbT4NCiAgICBTaWduZWQtb2ZmLWJ5OiBE YW4gV2lsbGlhbXMgPGRhbi5qLndpbGxpYW1zQGludGVsLmNvbT4NCg0KY29tbWl0IGYwZjJjMDcy Y2Y1MzBkNWI4ODkwYmU1MDUxY2M4YjM2YjBjNTRjY2UNCkF1dGhvcjogUm9zcyBad2lzbGVyIDxy b3NzLnp3aXNsZXJAbGludXguaW50ZWwuY29tPg0KRGF0ZTogICBGcmkgSnVsIDEwIDExOjA2OjE0 IDIwMTUgLTA2MDANCg0KICAgIG5maXQ6IGFkZCBzdXBwb3J0IGZvciBOVkRJTU0gImxhdGNoIiBm bGFnDQogICAgDQogICAgQWRkIHN1cHBvcnQgaW4gdGhlIE5GSVQgQkxLIEkvTyBwYXRoIGZvciB0 aGUgImxhdGNoIiBmbGFnDQogICAgZGVmaW5lZCBpbiB0aGUgIkdldCBCbG9jayBOVkRJTU0gRmxh Z3MiIF9EU00gZnVuY3Rpb246DQogICAgDQogICAgaHR0cDovL3BtZW0uaW8vZG9jdW1lbnRzL05W RElNTV9EU01fSW50ZXJmYWNlX0V4YW1wbGUucGRmDQogICAgDQogICAgVGhpcyBmbGFnIHJlcXVp cmVzIHRoZSBkcml2ZXIgdG8gcmVhZCBiYWNrIHRoZSBjb21tYW5kIHJlZ2lzdGVyIGFmdGVyIGl0 DQogICAgaXMgd3JpdHRlbiBpbiB0aGUgYmxvY2sgSS9PIHBhdGguICBUaGlzIGVuc3VyZXMgdGhh dCB0aGUgaGFyZHdhcmUgaGFzDQogICAgZnVsbHkgcHJvY2Vzc2VkIHRoZSBuZXcgY29tbWFuZCBh bmQgbW92ZWQgdGhlIGFwZXJ0dXJlIGFwcHJvcHJpYXRlbHkuDQogICAgDQogICAgU2lnbmVkLW9m Zi1ieTogUm9zcyBad2lzbGVyIDxyb3NzLnp3aXNsZXJAbGludXguaW50ZWwuY29tPg0KICAgIEFj a2VkLWJ5OiBSYWZhZWwgSi4gV3lzb2NraSA8cmFmYWVsLmoud3lzb2NraUBpbnRlbC5jb20+DQog ICAgU2lnbmVkLW9mZi1ieTogRGFuIFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+ DQoNCg0K From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752075AbbGLBJg (ORCPT ); Sat, 11 Jul 2015 21:09:36 -0400 Received: from mga02.intel.com ([134.134.136.20]:21696 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751859AbbGLBJf (ORCPT ); Sat, 11 Jul 2015 21:09:35 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,456,1432623600"; d="scan'208";a="727172541" From: "Williams, Dan J" To: "torvalds@linux-foundation.org" CC: "linux-kernel@vger.kernel.org" , "linux-nvdimm@lists.01.org" , "ross.zwisler@linux.intel.com" , "akpm@linux-foundation.org" , "linux-acpi@vger.kernel.org" , "Wysocki, Rafael J" Subject: [GIT PULL] libnvdimm fixes for 4.2-rc2 Thread-Topic: [GIT PULL] libnvdimm fixes for 4.2-rc2 Thread-Index: AQHQvD9pcHNZaAznxEC9t4dbh5kx5w== Date: Sun, 12 Jul 2015 01:09:32 +0000 Message-ID: <1436663369.11451.5.camel@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.22.254.139] Content-Type: text/plain; charset="utf-8" Content-ID: <41C6774BEF13054CBA71B45EFAA56FE2@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 t6C19g3r013487 Hi Linus, please pull from: git://git.kernel.org/pub/scm/linux/kernel/git/djbw/nvdimm libnvdimm-fixes ...to receive: 1/ Fixes for a handful of smatch reports (Thanks Dan C.!) and minor bug fixes (patches 1-6) 2/ Correctness fixes to the BLK-mode nvdimm driver (patches 7-10). Granted these are slightly large for a -rc update. They have been out for review in one form or another since the end of May and were deferred from the merge window while we settled on the "PMEM API" for the PMEM-mode nvdimm driver (i.e. memremap_pmem, memcpy_to_pmem, and wmb_pmem). Now that those apis are merged we implement them in the BLK driver to guarantee that mmio aperture moves stay ordered with respect to incoming read/write requests, and that writes are flushed through those mmio-windows and platform-buffers to be persistent on media. These pass the sub-system unit tests with the updates to tools/testing/nvdimm, and have received a successful build-report from the kbuild robot (468 configs). Full git log below with acks from Rafael for the touches to drivers/acpi/. [PATCH 01/10] sparse: fix misplaced __pmem definition [PATCH 02/10] libnvdimm: smatch cleanups in __nd_ioctl [PATCH 03/10] nvdimm: Fix return value of nvdimm_bus_init() if class_create() fails [PATCH 04/10] nfit: fix smatch "use after null check" report [PATCH 05/10] pmem: add maintainer for include/linux/pmem.h [PATCH 06/10] tools/testing/nvdimm: mock ioremap_wt [PATCH 07/10] tools/testing/nvdimm: fix return code for unimplemented commands [PATCH 08/10] tools/testing/nvdimm: add mock acpi_nfit_flush_address entries to nfit_test [PATCH 09/10] nfit: update block I/O path to use PMEM API [PATCH 10/10] nfit: add support for NVDIMM "latch" flag The following changes since commit 88793e5c774ec69351ef6b5200bb59f532e41bca: Merge tag 'libnvdimm-for-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/nvdimm (2015-06-29 10:34:42 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/djbw/nvdimm libnvdimm-fixes for you to fetch changes up to f0f2c072cf530d5b8890be5051cc8b36b0c54cce: nfit: add support for NVDIMM "latch" flag (2015-07-10 14:43:50 -0400) ---------------------------------------------------------------- Axel Lin (1): nvdimm: Fix return value of nvdimm_bus_init() if class_create() fails Dan Williams (6): sparse: fix misplaced __pmem definition libnvdimm: smatch cleanups in __nd_ioctl nfit: fix smatch "use after null check" report tools/testing/nvdimm: mock ioremap_wt tools/testing/nvdimm: fix return code for unimplemented commands tools/testing/nvdimm: add mock acpi_nfit_flush_address entries to nfit_test Ross Zwisler (3): pmem: add maintainer for include/linux/pmem.h nfit: update block I/O path to use PMEM API nfit: add support for NVDIMM "latch" flag MAINTAINERS | 1 + drivers/acpi/nfit.c | 134 ++++++++++++++++++++++++++++++++++---- drivers/acpi/nfit.h | 20 +++++- drivers/nvdimm/bus.c | 11 +--- include/linux/compiler.h | 2 +- tools/testing/nvdimm/Kbuild | 3 + tools/testing/nvdimm/test/iomap.c | 27 ++++++++ tools/testing/nvdimm/test/nfit.c | 52 ++++++++++++++- 8 files changed, 223 insertions(+), 27 deletions(-) commit 31f02455455d405320e2f749696bef4e02903b35 Author: Dan Williams Date: Tue Jun 30 12:07:17 2015 -0400 sparse: fix misplaced __pmem definition Move the definition of __pmem outside of CONFIG_SPARSE_RCU_POINTER to fix: drivers/nvdimm/pmem.c:198:17: sparse: too many arguments for function __builtin_expect drivers/nvdimm/pmem.c:36:33: sparse: expected ; at end of declaration drivers/nvdimm/pmem.c:48:21: sparse: void declaration ...due to __pmem failing to be defined in some configurations when CONFIG_SPARSE_RCU_POINTER=y. Reported-by: kbuild test robot Reported-by: Dan Carpenter Signed-off-by: Dan Williams commit af834d457d9ed69e14836b63d0da198fdd2ec706 Author: Dan Williams Date: Tue Jun 30 14:10:09 2015 -0400 libnvdimm: smatch cleanups in __nd_ioctl Drop use of access_ok() since we are already using copy_{to|from}_user() which do their own access_ok(). Reported-by: Dan Carpenter Signed-off-by: Dan Williams commit daa1dee405d7d3d3e816b84a692e838a5647a02a Author: Axel Lin Date: Sun Jun 28 17:00:57 2015 +0800 nvdimm: Fix return value of nvdimm_bus_init() if class_create() fails Return proper error if class_create() fails. Signed-off-by: Axel Lin Signed-off-by: Dan Williams commit 193ccca43850d2355e7690a93ab9d7d78d38f905 Author: Dan Williams Date: Tue Jun 30 16:09:39 2015 -0400 nfit: fix smatch "use after null check" report drivers/acpi/nfit.c:1224 acpi_nfit_blk_region_enable() error: we previously assumed 'nfit_mem' could be null (see line 1223) drivers/acpi/nfit.c 1222 nfit_mem = nvdimm_provider_data(nvdimm); 1223 if (!nfit_mem || !nfit_mem->dcr || !nfit_mem->bdw) { ^^^^^^^^ Check. 1224 dev_dbg(dev, "%s: missing%s%s%s\n", __func__, 1225 nfit_mem ? "" : " nfit_mem", 1226 nfit_mem->dcr ? "" : " dcr", ^^^^^^^^^^^^^ Unchecked dereference. Reported-by: Dan Carpenter Acked-by: Ross Zwisler Signed-off-by: Dan Williams commit b864bc17f1c326783f2388057e15d3e153125ab9 Author: Ross Zwisler Date: Fri Jul 10 11:06:10 2015 -0600 pmem: add maintainer for include/linux/pmem.h The file include/linux/pmem.h was recently created to hold the PMEM API, and is logically part of the PMEM driver. Add an entry for this file to MAINTAINERS. Signed-off-by: Ross Zwisler Signed-off-by: Dan Williams commit b1b2e6235a44174151fa3bb22657f74972635618 Author: Dan Williams Date: Fri Jul 10 11:06:11 2015 -0600 tools/testing/nvdimm: mock ioremap_wt In the 4.2-rc1 merge the default_memremap_pmem() implementation switched from ioremap_nocache() to ioremap_wt(). Add it to the list of mocked routines to restore the ability to run the unit tests. Signed-off-by: Dan Williams commit f7ec83684af020c961d7fab801f8e3ef7ce5de33 Author: Dan Williams Date: Fri Jul 10 11:06:12 2015 -0600 tools/testing/nvdimm: fix return code for unimplemented commands The implementation for the new "DIMM Flags" DSM relies on the -ENOTTY return code to indicate that the flags are unimplimented and to fall back to a safe default. As is the -ENXIO error code erroneoously indicates to fail enabling a BLK region. Signed-off-by: Dan Williams commit 9d27a87ec9e1317d368b1e5e3f4808078baa8c4c Author: Dan Williams Date: Fri Jul 10 14:07:03 2015 -0400 tools/testing/nvdimm: add mock acpi_nfit_flush_address entries to nfit_test In preparation for fixing the BLK path to properly use "directed pcommit" enable the unit test infrastructure to emit mock "flush" tables. Writes to these flush addresses trigger a memory controller to flush its internal buffers to persistent media, similar to the x86 "pcommit" instruction. Signed-off-by: Dan Williams commit c2ad29540cb913bd9e526fae77c35c7fb45f24a3 Author: Ross Zwisler Date: Fri Jul 10 11:06:13 2015 -0600 nfit: update block I/O path to use PMEM API Update the nfit block I/O path to use the new PMEM API and to adhere to the read/write flows outlined in the "NVDIMM Block Window Driver Writer's Guide": http://pmem.io/documents/NVDIMM_Driver_Writers_Guide.pdf This includes adding support for targeted NVDIMM flushes called "flush hints" in the ACPI 6.0 specification: http://www.uefi.org/sites/default/files/resources/ACPI_6.0.pdf For performance and media durability the mapping for a BLK aperture is moved to a write-combining mapping which is consistent with memcpy_to_pmem() and wmb_blk(). Signed-off-by: Ross Zwisler Acked-by: Rafael J. Wysocki Signed-off-by: Dan Williams commit f0f2c072cf530d5b8890be5051cc8b36b0c54cce Author: Ross Zwisler Date: Fri Jul 10 11:06:14 2015 -0600 nfit: add support for NVDIMM "latch" flag Add support in the NFIT BLK I/O path for the "latch" flag defined in the "Get Block NVDIMM Flags" _DSM function: http://pmem.io/documents/NVDIMM_DSM_Interface_Example.pdf This flag requires the driver to read back the command register after it is written in the block I/O path. This ensures that the hardware has fully processed the new command and moved the aperture appropriately. Signed-off-by: Ross Zwisler Acked-by: Rafael J. Wysocki Signed-off-by: Dan Williams {.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I