From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: [PATCH v3] xen-platform: separate unplugging of NVMe disks Date: Fri, 24 Mar 2017 13:40:25 +0000 Message-ID: <1490362825-24854-1-git-send-email-paul.durrant@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1crPSA-0003hx-2f for xen-devel@lists.xenproject.org; Fri, 24 Mar 2017 13:40:30 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: qemu-devel@nongnu.org, xen-devel@lists.xenproject.org Cc: Anthony Perard , Paul Durrant List-Id: xen-devel@lists.xenproject.org Q29tbWl0IDA5MGZhMWM4ICJhZGQgc3VwcG9ydCBmb3IgdW5wbHVnZ2luZyBOVk1lIGRpc2tzLi4u IiBleHRlbmRlZCB0aGUKZXhpc3RpbmcgZGlzayB1bnBsdWcgZmxhZyB0byBjb3ZlciBOVk1lIGRp c2tzIGFzIHdlbGwgYXMgSURFIGFuZCBTQ1NJLgoKVGhlIHJlY2VudCB0aHJlYWQgb24gdGhlIHhl bi1kZXZlbCBtYWlsaW5nIGxpc3QgWzFdIGhhcyBoaWdobGlnaHRlZCB0aGF0CnRoaXMgaXMgbm90 IGRlc2lyYWJsZSBiZWhhdmlvdXI6IFBWIGZyb250ZW5kcyBzaG91bGQgYmUgYWJsZSB0byBkaXN0 aW5ndWlzaApOVk1lIGRpc2tzIGZyb20gb3RoZXIgdHlwZXMgb2YgZGlzayBhbmQgc2hvdWxkIGhh dmUgc2VwYXJhdGUgY29udHJvbCBvdmVyCndoZXRoZXIgdGhleSBhcmUgdW5wbHVnZ2VkLgoKVGhp cyBwYXRjaCBkZWZpbmVzIGEgbmV3IGJpdCBpbiB0aGUgdW5wbHVnIG1hc2sgZm9yIHRoaXMgcHVy cG9zZSAoc2VlIFhlbgpjb21taXQgWzJdKSBhbmQgYWxzbyB0aWRpZXMgdXAgdGhlIGRlZmluaXRp b25zIG9mLCBhbmQgaW1wcm92ZXMgdGhlCmNvbW1lbnRzIHJlZ2FyZGluZywgdGhlIHByZXZpb3Vz bHkgZXhpdGluZyBiaXRzIGluIHRoZSBwcm90b2NvbC4KClsxXSBodHRwczovL2xpc3RzLnhlbi5v cmcvYXJjaGl2ZXMvaHRtbC94ZW4tZGV2ZWwvMjAxNy0wMy9tc2cwMjkyNC5odG1sClsyXSBodHRw Oi8veGVuYml0cy54ZW4ub3JnL2dpdHdlYi8/cD14ZW4uZ2l0O2E9Y29tbWl0O2g9MTA5NmFhMDIK ClNpZ25lZC1vZmYtYnk6IFBhdWwgRHVycmFudCA8cGF1bC5kdXJyYW50QGNpdHJpeC5jb20+ClJl dmlld2VkLWJ5OiBTdGVmYW5vIFN0YWJlbGxpbmkgPHNzdGFiZWxsaW5pQGtlcm5lbC5vcmc+Ci0t CkNjOiBBbnRob255IFBlcmFyZCA8YW50aG9ueS5wZXJhcmRAY2l0cml4LmNvbT4KCnYzOgotIFVw ZGF0ZWQgdG8gcmVmZXJlbmNlIFhlbiBkb2N1bWVudGF0aW9uIHBhdGNoCgp2MjoKLSBGaXggdGhl IGNvbW1pdCBjb21tZW50Ci0tLQogaHcvaTM4Ni94ZW4veGVuX3BsYXRmb3JtLmMgfCA0NyArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMzUgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvaHcvaTM4 Ni94ZW4veGVuX3BsYXRmb3JtLmMgYi9ody9pMzg2L3hlbi94ZW5fcGxhdGZvcm0uYwppbmRleCA2 MDEwZjM1Li45ODNkNTMyIDEwMDY0NAotLS0gYS9ody9pMzg2L3hlbi94ZW5fcGxhdGZvcm0uYwor KysgYi9ody9pMzg2L3hlbi94ZW5fcGxhdGZvcm0uYwpAQCAtODcsMTAgKzg3LDMwIEBAIHN0YXRp YyB2b2lkIGxvZ193cml0ZWIoUENJWGVuUGxhdGZvcm1TdGF0ZSAqcywgY2hhciB2YWwpCiAgICAg fQogfQogCi0vKiBYZW4gUGxhdGZvcm0sIEZpeGVkIElPUG9ydCAqLwotI2RlZmluZSBVTlBMVUdf QUxMX0RJU0tTIDEKLSNkZWZpbmUgVU5QTFVHX0FMTF9OSUNTIDIKLSNkZWZpbmUgVU5QTFVHX0FV WF9JREVfRElTS1MgNAorLyoKKyAqIFVucGx1ZyBkZXZpY2UgZmxhZ3MuCisgKgorICogVGhlIGxv Z2ljIGdvdCBhIGxpdHRsZSBjb25mdXNlZCBhdCBzb21lIHBvaW50IGluIHRoZSBwYXN0IGJ1dCB0 aGlzIGlzCisgKiB3aGF0IHRoZXkgZG8gbm93LgorICoKKyAqIGJpdCAwOiBVbnBsdWcgYWxsIElE RSBhbmQgU0NTSSBkaXNrcy4KKyAqIGJpdCAxOiBVbnBsdWcgYWxsIE5JQ3MuCisgKiBiaXQgMjog VW5wbHVnIElERSBkaXNrcyBleGNlcHQgcHJpbWFyeSBtYXN0ZXIuIFRoaXMgaXMgb3ZlcnJpZGRl biBpZgorICogICAgICAgIGJpdCAwIGlzIGFsc28gcHJlc2VudCBpbiB0aGUgbWFzay4KKyAqIGJp dCAzOiBVbnBsdWcgYWxsIE5WTWUgZGlza3MuCisgKgorICovCisjZGVmaW5lIF9VTlBMVUdfSURF X1NDU0lfRElTS1MgMAorI2RlZmluZSBVTlBMVUdfSURFX1NDU0lfRElTS1MgKDF1IDw8IF9VTlBM VUdfSURFX1NDU0lfRElTS1MpCisKKyNkZWZpbmUgX1VOUExVR19BTExfTklDUyAxCisjZGVmaW5l IFVOUExVR19BTExfTklDUyAoMXUgPDwgX1VOUExVR19BTExfTklDUykKKworI2RlZmluZSBfVU5Q TFVHX0FVWF9JREVfRElTS1MgMgorI2RlZmluZSBVTlBMVUdfQVVYX0lERV9ESVNLUyAoMXUgPDwg X1VOUExVR19BVVhfSURFX0RJU0tTKQorCisjZGVmaW5lIF9VTlBMVUdfTlZNRV9ESVNLUyAzCisj ZGVmaW5lIFVOUExVR19OVk1FX0RJU0tTICgxdSA8PCBfVU5QTFVHX05WTUVfRElTS1MpCiAKIHN0 YXRpYyB2b2lkIHVucGx1Z19uaWMoUENJQnVzICpiLCBQQ0lEZXZpY2UgKmQsIHZvaWQgKm8pCiB7 CkBAIC0xMTEsNyArMTMxLDcgQEAgc3RhdGljIHZvaWQgdW5wbHVnX2Rpc2tzKFBDSUJ1cyAqYiwg UENJRGV2aWNlICpkLCB2b2lkICpvcGFxdWUpCiB7CiAgICAgdWludDMyX3QgZmxhZ3MgPSAqKHVp bnQzMl90ICopb3BhcXVlOwogICAgIGJvb2wgYXV4ID0gKGZsYWdzICYgVU5QTFVHX0FVWF9JREVf RElTS1MpICYmCi0gICAgICAgICEoZmxhZ3MgJiBVTlBMVUdfQUxMX0RJU0tTKTsKKyAgICAgICAg IShmbGFncyAmIFVOUExVR19JREVfU0NTSV9ESVNLUyk7CiAKICAgICAvKiBXZSBoYXZlIHRvIGln bm9yZSBwYXNzdGhyb3VnaCBkZXZpY2VzICovCiAgICAgaWYgKCFzdHJjbXAoZC0+bmFtZSwgInhl bi1wY2ktcGFzc3Rocm91Z2giKSkgewpAQCAtMTI0LDEyICsxNDQsMTYgQEAgc3RhdGljIHZvaWQg dW5wbHVnX2Rpc2tzKFBDSUJ1cyAqYiwgUENJRGV2aWNlICpkLCB2b2lkICpvcGFxdWUpCiAgICAg ICAgIGJyZWFrOwogCiAgICAgY2FzZSBQQ0lfQ0xBU1NfU1RPUkFHRV9TQ1NJOgotICAgIGNhc2Ug UENJX0NMQVNTX1NUT1JBR0VfRVhQUkVTUzoKICAgICAgICAgaWYgKCFhdXgpIHsKICAgICAgICAg ICAgIG9iamVjdF91bnBhcmVudChPQkpFQ1QoZCkpOwogICAgICAgICB9CiAgICAgICAgIGJyZWFr OwogCisgICAgY2FzZSBQQ0lfQ0xBU1NfU1RPUkFHRV9FWFBSRVNTOgorICAgICAgICBpZiAoZmxh Z3MgJiBVTlBMVUdfTlZNRV9ESVNLUykgeworICAgICAgICAgICAgb2JqZWN0X3VucGFyZW50KE9C SkVDVChkKSk7CisgICAgICAgIH0KKwogICAgIGRlZmF1bHQ6CiAgICAgICAgIGJyZWFrOwogICAg IH0KQEAgLTE0NywxMCArMTcxLDkgQEAgc3RhdGljIHZvaWQgcGxhdGZvcm1fZml4ZWRfaW9wb3J0 X3dyaXRldyh2b2lkICpvcGFxdWUsIHVpbnQzMl90IGFkZHIsIHVpbnQzMl90IHYKICAgICBzd2l0 Y2ggKGFkZHIpIHsKICAgICBjYXNlIDA6IHsKICAgICAgICAgUENJRGV2aWNlICpwY2lfZGV2ID0g UENJX0RFVklDRShzKTsKLSAgICAgICAgLyogVW5wbHVnIGRldmljZXMuICBWYWx1ZSBpcyBhIGJp dG1hc2sgb2Ygd2hpY2ggZGV2aWNlcyB0bwotICAgICAgICAgICB1bnBsdWcsIHdpdGggYml0IDAg dGhlIGRpc2sgZGV2aWNlcywgYml0IDEgdGhlIG5ldHdvcmsKLSAgICAgICAgICAgZGV2aWNlcywg YW5kIGJpdCAyIHRoZSBub24tcHJpbWFyeS1tYXN0ZXIgSURFIGRldmljZXMuICovCi0gICAgICAg IGlmICh2YWwgJiAoVU5QTFVHX0FMTF9ESVNLUyB8IFVOUExVR19BVVhfSURFX0RJU0tTKSkgewor ICAgICAgICAvKiBVbnBsdWcgZGV2aWNlcy4gU2VlIGNvbW1lbnQgYWJvdmUgZmxhZyBkZWZpbml0 aW9ucyAqLworICAgICAgICBpZiAodmFsICYgKFVOUExVR19JREVfU0NTSV9ESVNLUyB8IFVOUExV R19BVVhfSURFX0RJU0tTIHwKKyAgICAgICAgICAgICAgICAgICBVTlBMVUdfTlZNRV9ESVNLUykp IHsKICAgICAgICAgICAgIERQUklOVEYoInVucGx1ZyBkaXNrc1xuIik7CiAgICAgICAgICAgICBw Y2lfdW5wbHVnX2Rpc2tzKHBjaV9kZXYtPmJ1cywgdmFsKTsKICAgICAgICAgfQpAQCAtMzM4LDE0 ICszNjEsMTQgQEAgc3RhdGljIHZvaWQgeGVuX3BsYXRmb3JtX2lvcG9ydF93cml0ZWIodm9pZCAq b3BhcXVlLCBod2FkZHIgYWRkciwKICAgICAgICAgICAgICAqIElmIFZNRFAgd2FzIHRvIGNvbnRy b2wgYm90aCBkaXNrIGFuZCBMQU4gaXQgd291bGQgdXNlIDQuCiAgICAgICAgICAgICAgKiBJZiBp dCBjb250cm9sbGVkIGp1c3QgZGlzayBvciBqdXN0IExBTiwgaXQgd291bGQgdXNlIDggYmVsb3cu CiAgICAgICAgICAgICAgKi8KLSAgICAgICAgICAgIHBjaV91bnBsdWdfZGlza3MocGNpX2Rldi0+ YnVzLCBVTlBMVUdfQUxMX0RJU0tTKTsKKyAgICAgICAgICAgIHBjaV91bnBsdWdfZGlza3MocGNp X2Rldi0+YnVzLCBVTlBMVUdfSURFX1NDU0lfRElTS1MpOwogICAgICAgICAgICAgcGNpX3VucGx1 Z19uaWNzKHBjaV9kZXYtPmJ1cyk7CiAgICAgICAgIH0KICAgICAgICAgYnJlYWs7CiAgICAgY2Fz ZSA4OgogICAgICAgICBzd2l0Y2ggKHZhbCkgewogICAgICAgICBjYXNlIDE6Ci0gICAgICAgICAg ICBwY2lfdW5wbHVnX2Rpc2tzKHBjaV9kZXYtPmJ1cywgVU5QTFVHX0FMTF9ESVNLUyk7CisgICAg ICAgICAgICBwY2lfdW5wbHVnX2Rpc2tzKHBjaV9kZXYtPmJ1cywgVU5QTFVHX0lERV9TQ1NJX0RJ U0tTKTsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICBw Y2lfdW5wbHVnX25pY3MocGNpX2Rldi0+YnVzKTsKLS0gCjIuMS40CgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApY ZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==