From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by ml01.01.org (Postfix) with ESMTP id 900091A1E20 for ; Thu, 30 Jun 2016 18:02:15 -0700 (PDT) From: "Williams, Dan J" Subject: [GIT PULL] libnvdimm fixes for 4.7-rc6 Date: Fri, 1 Jul 2016 01:01:35 +0000 Message-ID: <1467334896.11105.19.camel@intel.com> Content-Language: en-US Content-ID: MIME-Version: 1.0 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-7" Content-Transfer-Encoding: base64 Errors-To: linux-nvdimm-bounces@lists.01.org Sender: "Linux-nvdimm" To: "torvalds@linux-foundation.org" Cc: "linux-fsdevel@vger.kernel.org" , "linux-acpi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-nvdimm@lists.01.org" List-ID: SGkgTGludXMsIHBsZWFzZSBwdWxsIGZyb206CgorQUtBIGdpdDovL2dpdC5rZXJuZWwub3JnL3B1 Yi9zY20vbGludXgva2VybmVsL2dpdC9udmRpbW0vbnZkaW1tIGxpYm52ZGltbS1maXhlcwoKLi4u dG8gcmVjZWl2ZToKCjEvIFR3byByZWdyZXNzaW9uIGZpeGVzIHNpbmNlIHY0LjY6ICtBS0Etb25l IGZvciB0aGUgYnl0ZSBvcmRlciBvZiBhIHN5c2ZzCmF0dHJpYnV0ZSAoYnoxMjExNjEpIGFuZCBh bm90aGVyIGZvciBRRU1VIDIuNidzIE5WRElNTSBfRFNNIChBQ1BJCkRldmljZSBTcGVjaWZpYyBN ZXRob2QpIGltcGxlbWVudGF0aW9uIHRoYXQgZ2V0cyB0cmlwcGVkIHVwIGJ5IG5ldwphdXRvLXBy b2JpbmcgYmVoYXZpb3IgaW4gdGhlIE5GSVQgZHJpdmVyLgoKMi8gQSBmaXggdGFnZ2VkIGZvciAt c3RhYmxlIHRoYXQgc3RvcHMgdGhlIGtlcm5lbCBmcm9tCmNsb2JiZXJpbmcvaWdub3JpbmcgY2hh bmdlcyB0byB0aGUgY29uZmlndXJhdGlvbiBvZiBhICdwZm4nIGluc3RhbmNlCigic3RydWN0IHBh Z2UiIGRyaXZlcikuICtBS0EtRm9yIGV4YW1wbGUgY2hhbmdpbmcgdGhlIGFsaWdubWVudCBmcm9t IDJNIHRvCjFHIG1heSBzaWxlbnRseSByZXZlcnQgdG8gMk0gaWYgdGhhdCB2YWx1ZSBpcyBjdXJy ZW50bHkgc3RvcmVkIG9uCm1lZGlhLgoKMy8gQSBmaXggZnJvbSBFcmljIGZvciBhbiB4ZnN0ZXN0 cyBmYWlsdXJlIGluIGRheC4gK0FLQS1JdCBpcyBub3QgY3VycmVudGx5CnRhZ2dlZCBmb3IgLXN0 YWJsZSBzaW5jZSBpdCByZXF1aXJlcyBhbiA4LWV4YWJ5dGUgZmlsZSBzeXN0ZW0gdG8KdHJpZ2dl ciwgYW5kIHRoZXJlIGFwcGVhciB0byBiZSBubyB1c2VyIHZpc2libGUgc2lkZSBlZmZlY3RzLgoK VGhlIGZvbGxvd2luZyBjaGFuZ2VzIHNpbmNlIGNvbW1pdCAzMzY4OGFiYjI4MDJmZjNhMjMwYmQy NDQxZjc2NTQ3N2I5NGNjODllOgoKK0FLQSBMaW51eCA0LjctcmM0ICgyMDE2LTA2LTE5IDIxOjMw OjAyIC0wNzAwKQoKYXJlIGF2YWlsYWJsZSBpbiB0aGUgZ2l0IHJlcG9zaXRvcnkgYXQ6CgorQUtB IGdpdDovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2VybmVsL2dpdC9udmRpbW0vbnZk aW1tIGxpYm52ZGltbS1maXhlcwoKZm9yIHlvdSB0byBmZXRjaCBjaGFuZ2VzIHVwIHRvIDFiY2Jm NDJkMjczMmIzZmRhYTg1NTliMGRmYzkxNTY3NzY5ZTIzYzg6CgorQUtBIG5maXQ6IGZpeCBmb3Jt YXQgaW50ZXJmYWNlIGNvZGUgYnl0ZSBvcmRlciAoMjAxNi0wNi0yOSAxMToxOTozMiAtMDcwMCkK Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KRGFuIFdpbGxpYW1zICgzKToKK0FLQUFvQUNnQUtBQW9BQ2ctbGlibnZkaW1tLCBw Zm4sIGRheDogZml4IGluaXRpYWxpemF0aW9uIHZzIGF1dG9kZXRlY3QgZm9yIG1vZGUgKy0gYWxp Z25tZW50CitBS0FBb0FDZ0FLQUFvQUNnLWFjcGksIG5maXQ6IGZpeCBhY3BpX2NoZWNrX2RzbSgp IHZzIHplcm8gZnVuY3Rpb25zIGltcGxlbWVudGVkCitBS0FBb0FDZ0FLQUFvQUNnLW5maXQ6IGZp eCBmb3JtYXQgaW50ZXJmYWNlIGNvZGUgYnl0ZSBvcmRlcgoKRXJpYyBTYW5kZWVuICgxKToKK0FL QUFvQUNnQUtBQW9BQ2ctZGF4OiBmaXggb2Zmc2V0IG92ZXJmbG93IGluIGRheF9pbwoKK0FLQS1k cml2ZXJzL2FjcGkvbmZpdC5jK0FLQUFvQUNnQUtBQW9BQ2dBS0F8IDEyICstKy0rLSstKy0tLS0t LS0KK0FLQS1kcml2ZXJzL2FjcGkvbmZpdC5oK0FLQUFvQUNnQUtBQW9BQ2dBS0F8IDEwICstKy0r LSstKy0tLS0tLQorQUtBLWRyaXZlcnMvYWNwaS91dGlscy5jK0FLQUFvQUNnQUtBQW9BQ2d8K0FL QUFvQS02ICstKy0rLS0tLQorQUtBLWRyaXZlcnMvbnZkaW1tL3Bmbl9kZXZzLmMgfCA1MSArLSst Ky0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0rLSstKy0r LSstKy0rLSstKy0rLS0tLS0tLS0tLS0KK0FLQS1mcy9kYXguYytBS0FBb0FDZ0FLQUFvQUNnQUtB QW9BQ2dBS0FBb0FDZ0FLQUFvQUNnQUtBQW9BQ2d8K0FLQUFvQS03ICstKy0rLSstKy0rLS0KK0FL QS01IGZpbGVzIGNoYW5nZWQsIDYwIGluc2VydGlvbnMoKy0pLCAyNiBkZWxldGlvbnMoLSkKCmNv bW1pdCAxZWU2NjY3Y2Q4ZDE4M2IyZmVkMTJmOTcyODVmMTg0NDMxZDJjYWY5CkF1dGhvcjogRGFu IFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+CkRhdGU6K0FLQUFvQUNnLVRodSBK dW4gMjMgMTc6NTA6MzkgMjAxNiAtMDcwMAoKK0FLQUFvQUNnQUtBLWxpYm52ZGltbSwgcGZuLCBk YXg6IGZpeCBpbml0aWFsaXphdGlvbiB2cyBhdXRvZGV0ZWN0IGZvciBtb2RlICstIGFsaWdubWVu dAorQUtBQW9BQ2dBS0EKK0FLQUFvQUNnQUtBLVRoZSB1cGRhdGVkIG5kY3RsIHVuaXQgdGVzdHMg ZGlzY292ZXJlZCB0aGF0IGlmIGEgcGZuIGNvbmZpZ3VyYXRpb24gd2l0aAorQUtBQW9BQ2dBS0Et YSA0SyBhbGlnbm1lbnQgaXMgcmVhZCBmcm9tIHRoZSBuYW1lc3BhY2UsIHRoYXQgYWxpZ25tZW50 IHdpbGwgYmUKK0FLQUFvQUNnQUtBLWlnbm9yZWQgaW4gZmF2b3Igb2YgdGhlIGRlZmF1bHQgMk0g YWxpZ25tZW50LitBS0FBb0EtVGhlIHJlc3VsdCBpcyB0aGF0IHRoZQorQUtBQW9BQ2dBS0EtY29u ZmlndXJhdGlvbiB3aWxsIGZhaWwgaW5pdGlhbGl6YXRpb24gd2l0aCBhIG1lc3NhZ2UgbGlrZToK K0FLQUFvQUNnQUtBCitBS0FBb0FDZ0FLQUFvQUNnQUtBQW9BLWRheDYuMTogYmFkIG9mZnNldDog MHgyMjAwMCBkYXggZGlzYWJsZWQgYWxpZ246IDB4MjAwMDAwCitBS0FBb0FDZ0FLQQorQUtBQW9B Q2dBS0EtRml4IHRoaXMgYnkgYWxsb3dpbmcgdGhlIGFsaWdubWVudCByZWFkIGZyb20gdGhlIGlu Zm8gYmxvY2sgdG8gb3ZlcnJpZGUKK0FLQUFvQUNnQUtBLXRoZSBkZWZhdWx0IHdoaWNoIGlzIDJN IG5vdCAwIGluIHRoZSBhdXRvZGV0ZWN0IHBhdGguK0FLQUFvQS1UaGlzIGFsc28gZml4ZXMgYQor QUtBQW9BQ2dBS0Etc2ltaWxhciBwcm9ibGVtIHdpdGggdGhlIG1vZGUgYW5kIGFsaWdubWVudCBz ZXR0aW5ncyBzaWxlbnRseSBiZWluZworQUtBQW9BQ2dBS0Etb3ZlcndyaXR0ZW4gYnkgdGhlIGtl cm5lbCB3aGVuIHVzZXJzcGFjZSBoYXMgY2hhbmdlZCBpdC4rQUtBQW9BLVdlIG5vdyB3aWxsCitB S0FBb0FDZ0FLQS1laXRoZXIgb3ZlcndyaXRlIHRoZSBpbmZvIGJsb2NrIGlmIHVzZXJzcGFjZSBj aGFuZ2VzIHRoZSB1dWlkIG9yIGZhaWwKK0FLQUFvQUNnQUtBLWFuZCB3YXJuIGlmIGEgbGl2ZSBz ZXR0aW5nIGRpc2FncmVlcyB3aXRoIHRoZSBpbmZvIGJsb2NrLgorQUtBQW9BQ2dBS0EKK0FLQUFv QUNnQUtBLUNjOiA8c3RhYmxlQHZnZXIua2VybmVsLm9yZz4KK0FLQUFvQUNnQUtBLUNjOiBNaWNh aCBQYXJyaXNoIDxtaWNhaC5wYXJyaXNoQGhwZS5jb20+CitBS0FBb0FDZ0FLQS1DYzogVG9zaGkg S2FuaSA8dG9zaGkua2FuaUBocGUuY29tPgorQUtBQW9BQ2dBS0EtU2lnbmVkLW9mZi1ieTogRGFu IFdpbGxpYW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+Cgpjb21taXQgNDk5NTczNGU5NzNh MmMyZTljNmY2NDEzY2JhZDk5MTNmYzRkZjBkYwpBdXRob3I6IERhbiBXaWxsaWFtcyA8ZGFuLmou d2lsbGlhbXNAaW50ZWwuY29tPgpEYXRlOitBS0FBb0FDZy1GcmkgSnVuIDI0IDA5OjA3OjM5IDIw MTYgLTA3MDAKCitBS0FBb0FDZ0FLQS1hY3BpLCBuZml0OiBmaXggYWNwaV9jaGVja19kc20oKSB2 cyB6ZXJvIGZ1bmN0aW9ucyBpbXBsZW1lbnRlZAorQUtBQW9BQ2dBS0EKK0FLQUFvQUNnQUtBLVFF TVUgMi42IGltcGxlbWVudHMgbmFzY2VudCBzdXBwb3J0IGZvciBudmRpbW0gRFNNcy4gRGVwZW5k aW5nIG9uCitBS0FBb0FDZ0FLQS1jb25maWd1cmF0aW9uIGl0IG1heSBvbmx5IGltcGxlbWVudCB0 aGUgZnVuY3Rpb24wIGRzbSB0byBpbmRpY2F0ZSB0aGF0CitBS0FBb0FDZ0FLQS1ubyBvdGhlciBE U01zIGFyZSBhdmFpbGFibGUuIENvbW1pdCAzMWVjYTc2YmEyZmMgIm5maXQsIGxpYm52ZGltbToK K0FLQUFvQUNnQUtBLWxpbWl0ZWQvd2hpdGVsaXN0ZWQgZGltbSBjb21tYW5kIG1hcnNoYWxpbmcg bWVjaGFuaXNtIiBicmVha3MgUUVNVSwgYnV0CitBS0FBb0FDZ0FLQS1RRU1VIGlzIHNwZWMgY29t cGxpYW50LitBS0FBb0EtUGVyIHRoZSBzcGVjIHRoZSB3YXkgdG8gaW5kaWNhdGUgdGhhdCBubwor QUtBQW9BQ2dBS0EtZnVuY3Rpb25zIGFyZSBzdXBwb3J0ZWQgaXM6CitBS0FBb0FDZ0FLQQorQUtB QW9BQ2dBS0FBb0FDZ0FLQUFvQS1JZiBGdW5jdGlvbiBJbmRleCBpcyB6ZXJvLCB0aGUgcmV0dXJu IGlzIGEgYnVmZmVyIGNvbnRhaW5pbmcgb25lIGJpdAorQUtBQW9BQ2dBS0FBb0FDZ0FLQUFvQS1m b3IgZWFjaCBmdW5jdGlvbiBpbmRleCwgc3RhcnRpbmcgd2l0aCB6ZXJvLiBCaXQgMCBpbmRpY2F0 ZXMgd2hldGhlcgorQUtBQW9BQ2dBS0FBb0FDZ0FLQUFvQS10aGVyZSBpcyBzdXBwb3J0IGZvciBh bnkgZnVuY3Rpb25zIG90aGVyIHRoYW4gZnVuY3Rpb24gMCBmb3IgdGhlCitBS0FBb0FDZ0FLQUFv QUNnQUtBQW9BLXNwZWNpZmllZCBVVUlEIGFuZCBSZXZpc2lvbiBJRC4gSWYgc2V0IHRvIHplcm8s IG5vIGZ1bmN0aW9ucyBhcmUKK0FLQUFvQUNnQUtBQW9BQ2dBS0FBb0Etc3VwcG9ydGVkIChvdGhl ciB0aGFuIGZ1bmN0aW9uIHplcm8pIGZvciB0aGUgc3BlY2lmaWVkIFVVSUQgYW5kCitBS0FBb0FD Z0FLQUFvQUNnQUtBQW9BLVJldmlzaW9uIElELgorQUtBQW9BQ2dBS0EKK0FLQUFvQUNnQUtBLVVw ZGF0ZSB0aGUgbmZpdCBkcml2ZXIgdG8gZGV0ZXJtaW5lIHRoZSBmYW1pbHkgKGludGVyZmFjZSBV VUlEKSB3aXRob3V0CitBS0FBb0FDZ0FLQS1yZXF1aXJpbmcgdGhlIGltcGxlbWVudGF0aW9uIHRv IGRlZmluZSBhbnkgb3RoZXIgZnVuY3Rpb25zLCBpLmUuCitBS0FBb0FDZ0FLQS1zaG9ydC1jaXJj dWl0IGFjcGlfY2hlY2tfZHNtKCkgdG8gc3VjY2VlZCBwZXIgdGhlIHNwZWMuK0FLQUFvQS1UaGUg bmZpdCBkcml2ZXIKK0FLQUFvQUNnQUtBLWFwcGVhcnMgdG8gYmUgdGhlIG9ubHkgdXNlciBwYXNz aW5nIGZ1bmNzPT0wIHRvIGFjcGlfY2hlY2tfZHNtKCksIHNvCitBS0FBb0FDZ0FLQS10aGlzIGJl aGF2aW9yIGNoYW5nZSBvZiB0aGUgY29tbW9uIHJvdXRpbmUgc2hvdWxkIGJlIGxpbWl0ZWQgdG8g dGhlCitBS0FBb0FDZ0FLQS1wcm9iaW5nIGRvbmUgYnkgdGhlIG5maXQgZHJpdmVyLgorQUtBQW9B Q2dBS0EKK0FLQUFvQUNnQUtBLUNjOiBMZW4gQnJvd24gPGxlbmJAa2VybmVsLm9yZz4KK0FLQUFv QUNnQUtBLUNjOiBKZXJyeSBIb2VtYW5uIDxqZXJyeS5ob2VtYW5uQGhwZS5jb20+CitBS0FBb0FD Z0FLQS1BY2tlZC1ieTogIlJhZmFlbCBKLiBXeXNvY2tpIiA8cmFmYWVsQGtlcm5lbC5vcmc+CitB S0FBb0FDZ0FLQS1GaXhlczogMzFlY2E3NmJhMmZjICgibmZpdCwgbGlibnZkaW1tOiBsaW1pdGVk L3doaXRlbGlzdGVkIGRpbW0gY29tbWFuZCBtYXJzaGFsaW5nIG1lY2hhbmlzbSIpCitBS0FBb0FD Z0FLQS1SZXBvcnRlZC1ieTogWGlhbyBHdWFuZ3JvbmcgPGd1YW5ncm9uZy54aWFvQGxpbnV4Lmlu dGVsLmNvbT4KK0FLQUFvQUNnQUtBLVRlc3RlZC1ieTogWGlhbyBHdWFuZ3JvbmcgPGd1YW5ncm9u Zy54aWFvQGxpbnV4LmludGVsLmNvbT4KK0FLQUFvQUNnQUtBLVNpZ25lZC1vZmYtYnk6IERhbiBX aWxsaWFtcyA8ZGFuLmoud2lsbGlhbXNAaW50ZWwuY29tPgoKY29tbWl0IDAyMzk1NDM1MWZhZTBl MzRiYTI0N2NmZjRkNzk4Yzk4MjkwYjIwYTQKQXV0aG9yOiBFcmljIFNhbmRlZW4gPHNhbmRlZW5A cmVkaGF0LmNvbT4KRGF0ZTorQUtBQW9BQ2ctVGh1IEp1biAyMyAxNjo1NDo0NiAyMDE2IC0wNTAw CgorQUtBQW9BQ2dBS0EtZGF4OiBmaXggb2Zmc2V0IG92ZXJmbG93IGluIGRheF9pbworQUtBQW9B Q2dBS0EKK0FLQUFvQUNnQUtBLVRoaXMgaXNuJ3QgZnVuY3Rpb25hbGx5IGFwcGFyZW50IGZvciBz b21lIHJlYXNvbiwgYnV0CitBS0FBb0FDZ0FLQS13aGVuIHdlIHRlc3QgaW8gYXQgZXh0cmVtZSBv ZmZzZXRzIGF0IHRoZSBlbmQgb2YgdGhlIGxvZmZfdAorQUtBQW9BQ2dBS0EtcmFuZywgc3VjaCBh cyBpbiBmc3Rlc3RzIHhmcy8wNzEsIHRoZSBjYWxjdWxhdGlvbiBvZgorQUtBQW9BQ2dBS0EibWF4 IiBpbiBkYXhfaW8oKSBjYW4gYmUgd3JvbmcgZHVlIHRvIHBvcyArLSBzaXplIG92ZXJmbG93aW5n LgorQUtBQW9BQ2dBS0EKK0FLQUFvQUNnQUtBLUZvciBleGFtcGxlLAorQUtBQW9BQ2dBS0EKK0FL QUFvQUNnQUtBIyB4ZnNfaW8gLWMgInB3cml0ZSA5MjIzMzcyMDM2ODU0NzcxNzEyIDUxMiIgL21u dC90ZXN0L2ZpbGUKK0FLQUFvQUNnQUtBCitBS0FBb0FDZ0FLQS1lbnRlcnMgZGF4X2lvIHdpdGg6 CitBS0FBb0FDZ0FLQQorQUtBQW9BQ2dBS0Etc3RhcnQgMHg3ZmZmZmZmZmZmZmZmMDAwCitBS0FB b0FDZ0FLQS1lbmQrQUtBQW9BQ2ctMHg3ZmZmZmZmZmZmZmZmMjAwCitBS0FBb0FDZ0FLQQorQUtB QW9BQ2dBS0EtYW5kIHRoZSByb3VuZGVkIHVwICJzaXplIiB2YXJpYWJsZSBpcyAweDEwMDAuK0FL QUFvQS1UaGlzIHlpZWxkczoKK0FLQUFvQUNnQUtBCitBS0FBb0FDZ0FLQS1wb3MgKy0gc2l6ZSAw eDgwMDAwMDAwMDAwMDAwMDAgKG92ZXJmbG93cyBsb2ZmX3QpCitBS0FBb0FDZ0FLQUFvQUNnQUtB QW9BQ2dBS0FBb0EtZW5kIDB4N2ZmZmZmZmZmZmZmZjIwMAorQUtBQW9BQ2dBS0EKK0FLQUFvQUNn QUtBLUR1ZSB0byB0aGUgb3ZlcmZsb3csIHRoZSBtaW4oKSBmdW5jdGlvbiBwaWNrcyB0aGUgd3Jv bmcKK0FLQUFvQUNnQUtBLXZhbHVlIGZvciB0aGUgIm1heCIgdmFyaWFibGUsIGFuZCB3aGVuIHdl IHNlbmQgKG1heCAtIHBvcykKK0FLQUFvQUNnQUtBLWludG8gaS5lLiBjb3B5X2Zyb21faXRlcl9w bWVtKCkgaXQgaXMgYWxzbyB0aGUgd3JvbmcgdmFsdWUuCitBS0FBb0FDZ0FLQQorQUtBQW9BQ2dB S0EtVGhpcyBzb21laG93KHRtKSBnZXRzIG1hZ2ljYWxseSBhYnNvcmJlZCB3aXRob3V0IGluY2lk ZW50LAorQUtBQW9BQ2dBS0EtcHJvYmFibHkgYmVjYXVzZSBpdGVyLT5jb3VudCBpcyBjb3JyZWN0 LitBS0FBb0EtQnV0IGl0IHNlZW1zIGJlc3QKK0FLQUFvQUNnQUtBLXRvIGZpeCBpdCB1cCBwcm9w ZXJseSBieSBjb21wYXJpbmcgdGhlIHR3byB2YWx1ZXMgYXMKK0FLQUFvQUNnQUtBLXVuc2lnbmVk LgorQUtBQW9BQ2dBS0EKK0FLQUFvQUNnQUtBLVNpZ25lZC1vZmYtYnk6IEVyaWMgU2FuZGVlbiA8 c2FuZGVlbkByZWRoYXQuY29tPgorQUtBQW9BQ2dBS0EtU2lnbmVkLW9mZi1ieTogRGFuIFdpbGxp YW1zIDxkYW4uai53aWxsaWFtc0BpbnRlbC5jb20+Cgpjb21taXQgMWJjYmY0MmQyNzMyYjNmZGFh ODU1OWIwZGZjOTE1Njc3NjllMjNjOApBdXRob3I6IERhbiBXaWxsaWFtcyA8ZGFuLmoud2lsbGlh bXNAaW50ZWwuY29tPgpEYXRlOitBS0FBb0FDZy1XZWQgSnVuIDI5IDExOjE5OjMyIDIwMTYgLTA3 MDAKCitBS0FBb0FDZ0FLQS1uZml0OiBmaXggZm9ybWF0IGludGVyZmFjZSBjb2RlIGJ5dGUgb3Jk ZXIKK0FLQUFvQUNnQUtBCitBS0FBb0FDZ0FLQS1QZXIgSkVERUMgQW5uZXggTCBSZWxlYXNlIDMg dGhlIFNQRCBkYXRhIGlzOgorQUtBQW9BQ2dBS0EKK0FLQUFvQUNnQUtBLUJpdHMgOStBSDQtNSAw MCAwMDAgPSBGdW5jdGlvbiBVbmRlZmluZWQKK0FLQUFvQUNnQUtBQW9BQ2dBS0FBb0FDZ0FLQUFv QUNnQUtBLTAwIDAwMSA9IEJ5dGUgYWRkcmVzc2FibGUgZW5lcmd5IGJhY2tlZAorQUtBQW9BQ2dB S0FBb0FDZ0FLQUFvQUNnQUtBQW9BQ2dBS0EtMDAgMDEwID0gQmxvY2sgYWRkcmVzc2VkCitBS0FB b0FDZ0FLQUFvQUNnQUtBQW9BQ2dBS0FBb0FDZ0FLQS0wMCAwMTEgPSBCeXRlIGFkZHJlc3NhYmxl LCBubyBlbmVyZ3kgYmFja2VkCitBS0FBb0FDZ0FLQUFvQUNnQUtBQW9BQ2dBS0FBb0FDZ0FLQS1B bGwgb3RoZXIgY29kZXMgcmVzZXJ2ZWQKK0FLQUFvQUNnQUtBLUJpdHMgNCtBSDQtMCAwIDAwMDAg PSBQcm9wcmlldGFyeSBpbnRlcmZhY2UKK0FLQUFvQUNnQUtBQW9BQ2dBS0FBb0FDZ0FLQUFvQUNn QUtBLTAgMDAwMSA9IFN0YW5kYXJkIGludGVyZmFjZSAxCitBS0FBb0FDZ0FLQUFvQUNnQUtBQW9B Q2dBS0FBb0FDZ0FLQS1BbGwgb3RoZXIgY29kZXMgcmVzZXJ2ZWQ7IHNlZSBEZWZpbml0aW9ucyBv ZiBGdW5jdGlvbnMKK0FLQUFvQUNnQUtBCitBS0FBb0FDZ0FLQS4uLmFuZCBwZXIgdGhlIEFDUEkg Ni4xIHNwZWM6CitBS0FBb0FDZ0FLQQorQUtBQW9BQ2dBS0FBb0FDZ0FLQUFvQS1ieXRlMDogQml0 cyA0K0FINC0wICgwIG9yIDEpCitBS0FBb0FDZ0FLQUFvQUNnQUtBQW9BLWJ5dGUxOiBCaXRzIDkr QUg0LTUgKDEsIDIsIG9yIDMpCitBS0FBb0FDZ0FLQQorQUtBQW9BQ2dBS0EuLi5zbyBhIGZvcm1h dCBpbnRlcmZhY2UgY29kZSBkaXNwbGF5ZWQgYXMgMHgzMDEgc2hvdWxkIGJlIHN0b3JlZCBpbiB0 aGUKK0FLQUFvQUNnQUtBLW5maXQgYXMgKDB4MSwgMHgzKSwgbGl0dGxlLWVuZGlhbi4KK0FLQUFv QUNnQUtBCitBS0FBb0FDZ0FLQS1DYzogVG9zaGkgS2FuaSA8dG9zaGkua2FuaUBocGUuY29tPgor QUtBQW9BQ2dBS0EtQ2M6IFJhZmFlbCBKLiBXeXNvY2tpIDxyandAcmp3eXNvY2tpLm5ldD4KK0FL QUFvQUNnQUtBLUNjOiBSb2JlcnQgTW9vcmUgPHJvYmVydC5tb29yZUBpbnRlbC5jb20+CitBS0FB b0FDZ0FLQS1DYzogUm9iZXJ0IEVsbGlvdHQgPGVsbGlvdHRAaHBlLmNvbT4KK0FLQUFvQUNnQUtB LUxpbms6IGh0dHBzOi8vYnVnemlsbGEua2VybmVsLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIxMTYx CitBS0FBb0FDZ0FLQS1GaXhlczogMzBlYzVmZDQ2NGQ1ICgibmZpdDogZml4IGZvcm1hdCBpbnRl cmZhY2UgY29kZSBieXRlIG9yZGVyIHBlciBBQ1BJNi4xIikKK0FLQUFvQUNnQUtBLUZpeGVzOiA1 YWQ5YTdmZGUwN2EgKCJhY3BpL25maXQ6IFVwZGF0ZSBuZml0IGRyaXZlciB0byBjb21wbHkgd2l0 aCBBQ1BJIDYuMSIpCitBS0FBb0FDZ0FLQS1SZXBvcnRlZC1ieTogS3Jpc3RpbiBKYWNxdWUgPGty aXN0aW4uamFjcXVlQGludGVsLmNvbT4KK0FLQUFvQUNnQUtBLVNpZ25lZC1vZmYtYnk6IERhbiBX aWxsaWFtcyA8ZGFuLmoud2lsbGlhbXNAaW50ZWwuY29tPgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eC1udmRpbW0gbWFpbGluZyBsaXN0CkxpbnV4 LW52ZGltbUBsaXN0cy4wMS5vcmcKaHR0cHM6Ly9saXN0cy4wMS5vcmcvbWFpbG1hbi9saXN0aW5m by9saW51eC1udmRpbW0K From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: "Williams, Dan J" To: "torvalds@linux-foundation.org" CC: "linux-kernel@vger.kernel.org" , "linux-nvdimm@lists.01.org" , "linux-acpi@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" Subject: [GIT PULL] libnvdimm fixes for 4.7-rc6 Date: Fri, 1 Jul 2016 01:01:35 +0000 Message-ID: <1467334896.11105.19.camel@intel.com> Content-Language: en-US Content-Type: text/plain; charset="utf-7" Content-ID: Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: Hi Linus, please pull from: +AKA- git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm libnvdimm-fixes ...to receive: 1/ Two regression fixes since v4.6: +AKA-one for the byte order of a sysfs attribute (bz121161) and another for QEMU 2.6's NVDIMM +AF8-DSM (ACPI Device Specific Method) implementation that gets tripped up by new auto-probing behavior in the NFIT driver. 2/ A fix tagged for -stable that stops the kernel from clobbering/ignoring changes to the configuration of a 'pfn' instance (+ACI-struct page+ACI- driver). +AKA-For example changing the alignment from 2M to 1G may silently revert to 2M if that value is currently stored on media. 3/ A fix from Eric for an xfstests failure in dax. +AKA-It is not currently tagged for -stable since it requires an 8-exabyte file system to trigger, and there appear to be no user visible side effects. The following changes since commit 33688abb2802ff3a230bd2441f765477b94cc89e: +AKA- Linux 4.7-rc4 (2016-06-19 21:30:02 -0700) are available in the git repository at: +AKA- git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm libnvdimm-fixes for you to fetch changes up to 1bcbf42d2732b3fdaa8559b0dfc91567769e23c8: +AKA- nfit: fix format interface code byte order (2016-06-29 11:19:32 -0700) ---------------------------------------------------------------- Dan Williams (3): +AKAAoACgAKAAoACg-libnvdimm, pfn, dax: fix initialization vs autodetect for mode +- alignment +AKAAoACgAKAAoACg-acpi, nfit: fix acpi+AF8-check+AF8-dsm() vs zero functions implemented +AKAAoACgAKAAoACg-nfit: fix format interface code byte order Eric Sandeen (1): +AKAAoACgAKAAoACg-dax: fix offset overflow in dax+AF8-io +AKA-drivers/acpi/nfit.c+AKAAoACgAKAAoACgAKAAfA- 12 +-+-+-+-+------- +AKA-drivers/acpi/nfit.h+AKAAoACgAKAAoACgAKAAfA- 10 +-+-+-+-+------ +AKA-drivers/acpi/utils.c+AKAAoACgAKAAoACgAHwAoACg-6 +-+-+---- +AKA-drivers/nvdimm/pfn+AF8-devs.c +AHw- 51 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+----------- +AKA-fs/dax.c+AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAHwAoACg-7 +-+-+-+-+-+-- +AKA-5 files changed, 60 insertions(+-), 26 deletions(-) commit 1ee6667cd8d183b2fed12f97285f184431d2caf9 Author: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- Date:+AKAAoACg-Thu Jun 23 17:50:39 2016 -0700 +AKAAoACgAKA-libnvdimm, pfn, dax: fix initialization vs autodetect for mode +- alignment +AKAAoACgAKA- +AKAAoACgAKA-The updated ndctl unit tests discovered that if a pfn configuration with +AKAAoACgAKA-a 4K alignment is read from the namespace, that alignment will be +AKAAoACgAKA-ignored in favor of the default 2M alignment.+AKAAoA-The result is that the +AKAAoACgAKA-configuration will fail initialization with a message like: +AKAAoACgAKA- +AKAAoACgAKAAoACgAKAAoA-dax6.1: bad offset: 0x22000 dax disabled align: 0x200000 +AKAAoACgAKA- +AKAAoACgAKA-Fix this by allowing the alignment read from the info block to override +AKAAoACgAKA-the default which is 2M not 0 in the autodetect path.+AKAAoA-This also fixes a +AKAAoACgAKA-similar problem with the mode and alignment settings silently being +AKAAoACgAKA-overwritten by the kernel when userspace has changed it.+AKAAoA-We now will +AKAAoACgAKA-either overwrite the info block if userspace changes the uuid or fail +AKAAoACgAKA-and warn if a live setting disagrees with the info block. +AKAAoACgAKA- +AKAAoACgAKA-Cc: +ADw-stable+AEA-vger.kernel.org+AD4- +AKAAoACgAKA-Cc: Micah Parrish +ADw-micah.parrish+AEA-hpe.com+AD4- +AKAAoACgAKA-Cc: Toshi Kani +ADw-toshi.kani+AEA-hpe.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- commit 4995734e973a2c2e9c6f6413cbad9913fc4df0dc Author: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- Date:+AKAAoACg-Fri Jun 24 09:07:39 2016 -0700 +AKAAoACgAKA-acpi, nfit: fix acpi+AF8-check+AF8-dsm() vs zero functions implemented +AKAAoACgAKA- +AKAAoACgAKA-QEMU 2.6 implements nascent support for nvdimm DSMs. Depending on +AKAAoACgAKA-configuration it may only implement the function0 dsm to indicate that +AKAAoACgAKA-no other DSMs are available. Commit 31eca76ba2fc +ACI-nfit, libnvdimm: +AKAAoACgAKA-limited/whitelisted dimm command marshaling mechanism+ACI- breaks QEMU, but +AKAAoACgAKA-QEMU is spec compliant.+AKAAoA-Per the spec the way to indicate that no +AKAAoACgAKA-functions are supported is: +AKAAoACgAKA- +AKAAoACgAKAAoACgAKAAoA-If Function Index is zero, the return is a buffer containing one bit +AKAAoACgAKAAoACgAKAAoA-for each function index, starting with zero. Bit 0 indicates whether +AKAAoACgAKAAoACgAKAAoA-there is support for any functions other than function 0 for the +AKAAoACgAKAAoACgAKAAoA-specified UUID and Revision ID. If set to zero, no functions are +AKAAoACgAKAAoACgAKAAoA-supported (other than function zero) for the specified UUID and +AKAAoACgAKAAoACgAKAAoA-Revision ID. +AKAAoACgAKA- +AKAAoACgAKA-Update the nfit driver to determine the family (interface UUID) without +AKAAoACgAKA-requiring the implementation to define any other functions, i.e. +AKAAoACgAKA-short-circuit acpi+AF8-check+AF8-dsm() to succeed per the spec.+AKAAoA-The nfit driver +AKAAoACgAKA-appears to be the only user passing funcs+AD0APQ-0 to acpi+AF8-check+AF8-dsm(), so +AKAAoACgAKA-this behavior change of the common routine should be limited to the +AKAAoACgAKA-probing done by the nfit driver. +AKAAoACgAKA- +AKAAoACgAKA-Cc: Len Brown +ADw-lenb+AEA-kernel.org+AD4- +AKAAoACgAKA-Cc: Jerry Hoemann +ADw-jerry.hoemann+AEA-hpe.com+AD4- +AKAAoACgAKA-Acked-by: +ACI-Rafael J. Wysocki+ACI- +ADw-rafael+AEA-kernel.org+AD4- +AKAAoACgAKA-Fixes: 31eca76ba2fc (+ACI-nfit, libnvdimm: limited/whitelisted dimm command marshaling mechanism+ACI-) +AKAAoACgAKA-Reported-by: Xiao Guangrong +ADw-guangrong.xiao+AEA-linux.intel.com+AD4- +AKAAoACgAKA-Tested-by: Xiao Guangrong +ADw-guangrong.xiao+AEA-linux.intel.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- commit 023954351fae0e34ba247cff4d798c98290b20a4 Author: Eric Sandeen +ADw-sandeen+AEA-redhat.com+AD4- Date:+AKAAoACg-Thu Jun 23 16:54:46 2016 -0500 +AKAAoACgAKA-dax: fix offset overflow in dax+AF8-io +AKAAoACgAKA- +AKAAoACgAKA-This isn't functionally apparent for some reason, but +AKAAoACgAKA-when we test io at extreme offsets at the end of the loff+AF8-t +AKAAoACgAKA-rang, such as in fstests xfs/071, the calculation of +AKAAoACgAKAAIg-max+ACI- in dax+AF8-io() can be wrong due to pos +- size overflowing. +AKAAoACgAKA- +AKAAoACgAKA-For example, +AKAAoACgAKA- +AKAAoACgAKAAIw- xfs+AF8-io -c +ACI-pwrite 9223372036854771712 512+ACI- /mnt/test/file +AKAAoACgAKA- +AKAAoACgAKA-enters dax+AF8-io with: +AKAAoACgAKA- +AKAAoACgAKA-start 0x7ffffffffffff000 +AKAAoACgAKA-end+AKAAoACg-0x7ffffffffffff200 +AKAAoACgAKA- +AKAAoACgAKA-and the rounded up +ACI-size+ACI- variable is 0x1000.+AKAAoA-This yields: +AKAAoACgAKA- +AKAAoACgAKA-pos +- size 0x8000000000000000 (overflows loff+AF8-t) +AKAAoACgAKAAoACgAKAAoACgAKAAoA-end 0x7ffffffffffff200 +AKAAoACgAKA- +AKAAoACgAKA-Due to the overflow, the min() function picks the wrong +AKAAoACgAKA-value for the +ACI-max+ACI- variable, and when we send (max - pos) +AKAAoACgAKA-into i.e. copy+AF8-from+AF8-iter+AF8-pmem() it is also the wrong value. +AKAAoACgAKA- +AKAAoACgAKA-This somehow(tm) gets magically absorbed without incident, +AKAAoACgAKA-probably because iter-+AD4-count is correct.+AKAAoA-But it seems best +AKAAoACgAKA-to fix it up properly by comparing the two values as +AKAAoACgAKA-unsigned. +AKAAoACgAKA- +AKAAoACgAKA-Signed-off-by: Eric Sandeen +ADw-sandeen+AEA-redhat.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- commit 1bcbf42d2732b3fdaa8559b0dfc91567769e23c8 Author: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- Date:+AKAAoACg-Wed Jun 29 11:19:32 2016 -0700 +AKAAoACgAKA-nfit: fix format interface code byte order +AKAAoACgAKA- +AKAAoACgAKA-Per JEDEC Annex L Release 3 the SPD data is: +AKAAoACgAKA- +AKAAoACgAKA-Bits 9+AH4-5 00 000 +AD0- Function Undefined +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-00 001 +AD0- Byte addressable energy backed +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-00 010 +AD0- Block addressed +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-00 011 +AD0- Byte addressable, no energy backed +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-All other codes reserved +AKAAoACgAKA-Bits 4+AH4-0 0 0000 +AD0- Proprietary interface +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-0 0001 +AD0- Standard interface 1 +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-All other codes reserved+ADs- see Definitions of Functions +AKAAoACgAKA- +AKAAoACgAKA-...and per the ACPI 6.1 spec: +AKAAoACgAKA- +AKAAoACgAKAAoACgAKAAoA-byte0: Bits 4+AH4-0 (0 or 1) +AKAAoACgAKAAoACgAKAAoA-byte1: Bits 9+AH4-5 (1, 2, or 3) +AKAAoACgAKA- +AKAAoACgAKA-...so a format interface code displayed as 0x301 should be stored in the +AKAAoACgAKA-nfit as (0x1, 0x3), little-endian. +AKAAoACgAKA- +AKAAoACgAKA-Cc: Toshi Kani +ADw-toshi.kani+AEA-hpe.com+AD4- +AKAAoACgAKA-Cc: Rafael J. Wysocki +ADw-rjw+AEA-rjwysocki.net+AD4- +AKAAoACgAKA-Cc: Robert Moore +ADw-robert.moore+AEA-intel.com+AD4- +AKAAoACgAKA-Cc: Robert Elliott +ADw-elliott+AEA-hpe.com+AD4- +AKAAoACgAKA-Link: https://bugzilla.kernel.org/show+AF8-bug.cgi?id+AD0-121161 +AKAAoACgAKA-Fixes: 30ec5fd464d5 (+ACI-nfit: fix format interface code byte order per ACPI6.1+ACI-) +AKAAoACgAKA-Fixes: 5ad9a7fde07a (+ACI-acpi/nfit: Update nfit driver to comply with ACPI 6.1+ACI-) +AKAAoACgAKA-Reported-by: Kristin Jacque +ADw-kristin.jacque+AEA-intel.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752202AbcGABBt (ORCPT ); Thu, 30 Jun 2016 21:01:49 -0400 Received: from mga01.intel.com ([192.55.52.88]:57498 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751865AbcGABBp convert rfc822-to-8bit (ORCPT ); Thu, 30 Jun 2016 21:01:45 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.26,554,1459839600"; d="scan'208";a="986760009" From: "Williams, Dan J" To: "torvalds@linux-foundation.org" CC: "linux-kernel@vger.kernel.org" , "linux-nvdimm@lists.01.org" , "linux-acpi@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" Subject: [GIT PULL] libnvdimm fixes for 4.7-rc6 Thread-Topic: [GIT PULL] libnvdimm fixes for 4.7-rc6 Thread-Index: AQHR0zQdaxrszoW4/E246XbYpZqoIA== Date: Fri, 1 Jul 2016 01:01:35 +0000 Message-ID: <1467334896.11105.19.camel@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.254.94.194] Content-Type: text/plain; charset="utf-7" Content-ID: Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Linus, please pull from: +AKA- git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm libnvdimm-fixes ...to receive: 1/ Two regression fixes since v4.6: +AKA-one for the byte order of a sysfs attribute (bz121161) and another for QEMU 2.6's NVDIMM +AF8-DSM (ACPI Device Specific Method) implementation that gets tripped up by new auto-probing behavior in the NFIT driver. 2/ A fix tagged for -stable that stops the kernel from clobbering/ignoring changes to the configuration of a 'pfn' instance (+ACI-struct page+ACI- driver). +AKA-For example changing the alignment from 2M to 1G may silently revert to 2M if that value is currently stored on media. 3/ A fix from Eric for an xfstests failure in dax. +AKA-It is not currently tagged for -stable since it requires an 8-exabyte file system to trigger, and there appear to be no user visible side effects. The following changes since commit 33688abb2802ff3a230bd2441f765477b94cc89e: +AKA- Linux 4.7-rc4 (2016-06-19 21:30:02 -0700) are available in the git repository at: +AKA- git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm libnvdimm-fixes for you to fetch changes up to 1bcbf42d2732b3fdaa8559b0dfc91567769e23c8: +AKA- nfit: fix format interface code byte order (2016-06-29 11:19:32 -0700) ---------------------------------------------------------------- Dan Williams (3): +AKAAoACgAKAAoACg-libnvdimm, pfn, dax: fix initialization vs autodetect for mode +- alignment +AKAAoACgAKAAoACg-acpi, nfit: fix acpi+AF8-check+AF8-dsm() vs zero functions implemented +AKAAoACgAKAAoACg-nfit: fix format interface code byte order Eric Sandeen (1): +AKAAoACgAKAAoACg-dax: fix offset overflow in dax+AF8-io +AKA-drivers/acpi/nfit.c+AKAAoACgAKAAoACgAKAAfA- 12 +-+-+-+-+------- +AKA-drivers/acpi/nfit.h+AKAAoACgAKAAoACgAKAAfA- 10 +-+-+-+-+------ +AKA-drivers/acpi/utils.c+AKAAoACgAKAAoACgAHwAoACg-6 +-+-+---- +AKA-drivers/nvdimm/pfn+AF8-devs.c +AHw- 51 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+----------- +AKA-fs/dax.c+AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAHwAoACg-7 +-+-+-+-+-+-- +AKA-5 files changed, 60 insertions(+-), 26 deletions(-) commit 1ee6667cd8d183b2fed12f97285f184431d2caf9 Author: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- Date:+AKAAoACg-Thu Jun 23 17:50:39 2016 -0700 +AKAAoACgAKA-libnvdimm, pfn, dax: fix initialization vs autodetect for mode +- alignment +AKAAoACgAKA- +AKAAoACgAKA-The updated ndctl unit tests discovered that if a pfn configuration with +AKAAoACgAKA-a 4K alignment is read from the namespace, that alignment will be +AKAAoACgAKA-ignored in favor of the default 2M alignment.+AKAAoA-The result is that the +AKAAoACgAKA-configuration will fail initialization with a message like: +AKAAoACgAKA- +AKAAoACgAKAAoACgAKAAoA-dax6.1: bad offset: 0x22000 dax disabled align: 0x200000 +AKAAoACgAKA- +AKAAoACgAKA-Fix this by allowing the alignment read from the info block to override +AKAAoACgAKA-the default which is 2M not 0 in the autodetect path.+AKAAoA-This also fixes a +AKAAoACgAKA-similar problem with the mode and alignment settings silently being +AKAAoACgAKA-overwritten by the kernel when userspace has changed it.+AKAAoA-We now will +AKAAoACgAKA-either overwrite the info block if userspace changes the uuid or fail +AKAAoACgAKA-and warn if a live setting disagrees with the info block. +AKAAoACgAKA- +AKAAoACgAKA-Cc: +ADw-stable+AEA-vger.kernel.org+AD4- +AKAAoACgAKA-Cc: Micah Parrish +ADw-micah.parrish+AEA-hpe.com+AD4- +AKAAoACgAKA-Cc: Toshi Kani +ADw-toshi.kani+AEA-hpe.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- commit 4995734e973a2c2e9c6f6413cbad9913fc4df0dc Author: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- Date:+AKAAoACg-Fri Jun 24 09:07:39 2016 -0700 +AKAAoACgAKA-acpi, nfit: fix acpi+AF8-check+AF8-dsm() vs zero functions implemented +AKAAoACgAKA- +AKAAoACgAKA-QEMU 2.6 implements nascent support for nvdimm DSMs. Depending on +AKAAoACgAKA-configuration it may only implement the function0 dsm to indicate that +AKAAoACgAKA-no other DSMs are available. Commit 31eca76ba2fc +ACI-nfit, libnvdimm: +AKAAoACgAKA-limited/whitelisted dimm command marshaling mechanism+ACI- breaks QEMU, but +AKAAoACgAKA-QEMU is spec compliant.+AKAAoA-Per the spec the way to indicate that no +AKAAoACgAKA-functions are supported is: +AKAAoACgAKA- +AKAAoACgAKAAoACgAKAAoA-If Function Index is zero, the return is a buffer containing one bit +AKAAoACgAKAAoACgAKAAoA-for each function index, starting with zero. Bit 0 indicates whether +AKAAoACgAKAAoACgAKAAoA-there is support for any functions other than function 0 for the +AKAAoACgAKAAoACgAKAAoA-specified UUID and Revision ID. If set to zero, no functions are +AKAAoACgAKAAoACgAKAAoA-supported (other than function zero) for the specified UUID and +AKAAoACgAKAAoACgAKAAoA-Revision ID. +AKAAoACgAKA- +AKAAoACgAKA-Update the nfit driver to determine the family (interface UUID) without +AKAAoACgAKA-requiring the implementation to define any other functions, i.e. +AKAAoACgAKA-short-circuit acpi+AF8-check+AF8-dsm() to succeed per the spec.+AKAAoA-The nfit driver +AKAAoACgAKA-appears to be the only user passing funcs+AD0APQ-0 to acpi+AF8-check+AF8-dsm(), so +AKAAoACgAKA-this behavior change of the common routine should be limited to the +AKAAoACgAKA-probing done by the nfit driver. +AKAAoACgAKA- +AKAAoACgAKA-Cc: Len Brown +ADw-lenb+AEA-kernel.org+AD4- +AKAAoACgAKA-Cc: Jerry Hoemann +ADw-jerry.hoemann+AEA-hpe.com+AD4- +AKAAoACgAKA-Acked-by: +ACI-Rafael J. Wysocki+ACI- +ADw-rafael+AEA-kernel.org+AD4- +AKAAoACgAKA-Fixes: 31eca76ba2fc (+ACI-nfit, libnvdimm: limited/whitelisted dimm command marshaling mechanism+ACI-) +AKAAoACgAKA-Reported-by: Xiao Guangrong +ADw-guangrong.xiao+AEA-linux.intel.com+AD4- +AKAAoACgAKA-Tested-by: Xiao Guangrong +ADw-guangrong.xiao+AEA-linux.intel.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- commit 023954351fae0e34ba247cff4d798c98290b20a4 Author: Eric Sandeen +ADw-sandeen+AEA-redhat.com+AD4- Date:+AKAAoACg-Thu Jun 23 16:54:46 2016 -0500 +AKAAoACgAKA-dax: fix offset overflow in dax+AF8-io +AKAAoACgAKA- +AKAAoACgAKA-This isn't functionally apparent for some reason, but +AKAAoACgAKA-when we test io at extreme offsets at the end of the loff+AF8-t +AKAAoACgAKA-rang, such as in fstests xfs/071, the calculation of +AKAAoACgAKAAIg-max+ACI- in dax+AF8-io() can be wrong due to pos +- size overflowing. +AKAAoACgAKA- +AKAAoACgAKA-For example, +AKAAoACgAKA- +AKAAoACgAKAAIw- xfs+AF8-io -c +ACI-pwrite 9223372036854771712 512+ACI- /mnt/test/file +AKAAoACgAKA- +AKAAoACgAKA-enters dax+AF8-io with: +AKAAoACgAKA- +AKAAoACgAKA-start 0x7ffffffffffff000 +AKAAoACgAKA-end+AKAAoACg-0x7ffffffffffff200 +AKAAoACgAKA- +AKAAoACgAKA-and the rounded up +ACI-size+ACI- variable is 0x1000.+AKAAoA-This yields: +AKAAoACgAKA- +AKAAoACgAKA-pos +- size 0x8000000000000000 (overflows loff+AF8-t) +AKAAoACgAKAAoACgAKAAoACgAKAAoA-end 0x7ffffffffffff200 +AKAAoACgAKA- +AKAAoACgAKA-Due to the overflow, the min() function picks the wrong +AKAAoACgAKA-value for the +ACI-max+ACI- variable, and when we send (max - pos) +AKAAoACgAKA-into i.e. copy+AF8-from+AF8-iter+AF8-pmem() it is also the wrong value. +AKAAoACgAKA- +AKAAoACgAKA-This somehow(tm) gets magically absorbed without incident, +AKAAoACgAKA-probably because iter-+AD4-count is correct.+AKAAoA-But it seems best +AKAAoACgAKA-to fix it up properly by comparing the two values as +AKAAoACgAKA-unsigned. +AKAAoACgAKA- +AKAAoACgAKA-Signed-off-by: Eric Sandeen +ADw-sandeen+AEA-redhat.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- commit 1bcbf42d2732b3fdaa8559b0dfc91567769e23c8 Author: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4- Date:+AKAAoACg-Wed Jun 29 11:19:32 2016 -0700 +AKAAoACgAKA-nfit: fix format interface code byte order +AKAAoACgAKA- +AKAAoACgAKA-Per JEDEC Annex L Release 3 the SPD data is: +AKAAoACgAKA- +AKAAoACgAKA-Bits 9+AH4-5 00 000 +AD0- Function Undefined +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-00 001 +AD0- Byte addressable energy backed +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-00 010 +AD0- Block addressed +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-00 011 +AD0- Byte addressable, no energy backed +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-All other codes reserved +AKAAoACgAKA-Bits 4+AH4-0 0 0000 +AD0- Proprietary interface +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-0 0001 +AD0- Standard interface 1 +AKAAoACgAKAAoACgAKAAoACgAKAAoACgAKA-All other codes reserved+ADs- see Definitions of Functions +AKAAoACgAKA- +AKAAoACgAKA-...and per the ACPI 6.1 spec: +AKAAoACgAKA- +AKAAoACgAKAAoACgAKAAoA-byte0: Bits 4+AH4-0 (0 or 1) +AKAAoACgAKAAoACgAKAAoA-byte1: Bits 9+AH4-5 (1, 2, or 3) +AKAAoACgAKA- +AKAAoACgAKA-...so a format interface code displayed as 0x301 should be stored in the +AKAAoACgAKA-nfit as (0x1, 0x3), little-endian. +AKAAoACgAKA- +AKAAoACgAKA-Cc: Toshi Kani +ADw-toshi.kani+AEA-hpe.com+AD4- +AKAAoACgAKA-Cc: Rafael J. Wysocki +ADw-rjw+AEA-rjwysocki.net+AD4- +AKAAoACgAKA-Cc: Robert Moore +ADw-robert.moore+AEA-intel.com+AD4- +AKAAoACgAKA-Cc: Robert Elliott +ADw-elliott+AEA-hpe.com+AD4- +AKAAoACgAKA-Link: https://bugzilla.kernel.org/show+AF8-bug.cgi?id+AD0-121161 +AKAAoACgAKA-Fixes: 30ec5fd464d5 (+ACI-nfit: fix format interface code byte order per ACPI6.1+ACI-) +AKAAoACgAKA-Fixes: 5ad9a7fde07a (+ACI-acpi/nfit: Update nfit driver to comply with ACPI 6.1+ACI-) +AKAAoACgAKA-Reported-by: Kristin Jacque +ADw-kristin.jacque+AEA-intel.com+AD4- +AKAAoACgAKA-Signed-off-by: Dan Williams +ADw-dan.j.williams+AEA-intel.com+AD4-