From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: [PATCH RESEND] tools/libxl: add support for emulated NVMe drives Date: Wed, 22 Mar 2017 13:09:55 +0000 Message-ID: <1490188195-25209-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 1cqg1j-0000m0-DT for xen-devel@lists.xenproject.org; Wed, 22 Mar 2017 13:10:11 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Wei Liu , Paul Durrant , Ian Jackson List-Id: xen-devel@lists.xenproject.org VXBzdHJlYW0gUUVNVSBzdXBwb3J0cyBlbXVsYXRpb24gb2YgTlZNIEV4cHJlc3MgYS5rLmEuIE5W TWUgZHJpdmVzLgoKVGhpcyBwYXRjaCBhZGRzIGEgbmV3IHZkZXYgdHlwZSBpbnRvIGxpYnhsIHRv IGFsbG93IHN1Y2ggZHJpdmVzIHRvIGJlCnByZXNlbnRlZCB0byBIVk0gZ3Vlc3RzLiBCZWNhdXNl IHRoZSBwdXJwb3NlIG9mIHRoZSBuZXcgdmRldiBpcyBwdXJlbHkKdG8gY29uZmlndXJlIGVtdWxh dGlvbiwgdGhlIHN5bnRheCBvbmx5IHN1cHBvcnRzIHNwZWNpZmljYXRpb24gb2YKd2hvbGUgZGlz a3MuIEFsc28gdGhlcmUgaXMgbm8gbmVlZCB0byBpbnRyb2R1Y2UgYSBuZXcgY29uY3JldGUgVkJE CmVuY29kaW5nIGZvciBOVk1lIGRyaXZlcy4KCk5PVEU6IFFFTVUncyBlbXVsYXRpb24gb25seSBz dXBwb3J0cyBhIHNpbmdsZSBOVk1lIG5hbWVzcGFjZSwgc28gdGhlCiAgICAgIHZkZXYgc3ludGF4 IGRvZXMgbm90IGluY2x1ZGUgc3BlY2lmaWNhdGlvbiBvZiBhIG5hbWVzcGFjZS4KICAgICAgQWxz bywgY3VycmVudCB2ZXJzaW9ucyBvZiBTZWFCSU9TIGRvIG5vdCBzdXBwb3J0IGJvb3RpbmcgZnJv bQogICAgICBOVk1lIGRldmljZXMsIHNvIHRoZSB2ZGV2IHNob3VsZCBvbmx5IGJlIHVzZWQgZm9y IHNlY29uZGFyeQogICAgICBkcml2ZXMuCgpTaWduZWQtb2ZmLWJ5OiBQYXVsIER1cnJhbnQgPHBh dWwuZHVycmFudEBjaXRyaXguY29tPgotLS0KQ2M6IElhbiBKYWNrc29uIDxpYW4uamFja3NvbkBl dS5jaXRyaXguY29tPgpDYzogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KCk5PVEUgRk9S IENPTU1JVFRFUlM6CgpTdXBwb3J0IGZvciB1bnBsdWcgb2YgTlZNZSBkcml2ZXMgd2FzIGFkZGVk IGludG8gUUVNVSBieSB0aGUgZm9sbG93aW5nCmNvbW1pdDoKCmh0dHA6Ly9naXQucWVtdS1wcm9q ZWN0Lm9yZy8/cD1xZW11LmdpdDthPWNvbW1pdDtoPTA5MGZhMWM4Ci0tLQogZG9jcy9tYW4veGVu LXZiZC1pbnRlcmZhY2UubWFya2Rvd24uNyB8IDE1ICsrKysrKysrLS0tLS0tLQogZG9jcy9tYW4v eGwtZGlzay1jb25maWd1cmF0aW9uLnBvZC41ICB8ICA0ICsrLS0KIHRvb2xzL2xpYnhsL2xpYnhs X2RldmljZS5jICAgICAgICAgICAgfCAgOCArKysrKysrKwogdG9vbHMvbGlieGwvbGlieGxfZG0u YyAgICAgICAgICAgICAgICB8ICA2ICsrKysrKwogNCBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRp b25zKCspLCA5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvY3MvbWFuL3hlbi12YmQtaW50 ZXJmYWNlLm1hcmtkb3duLjcgYi9kb2NzL21hbi94ZW4tdmJkLWludGVyZmFjZS5tYXJrZG93bi43 CmluZGV4IDFjOTk2YmYuLjhmZDM3OGMgMTAwNjQ0Ci0tLSBhL2RvY3MvbWFuL3hlbi12YmQtaW50 ZXJmYWNlLm1hcmtkb3duLjcKKysrIGIvZG9jcy9tYW4veGVuLXZiZC1pbnRlcmZhY2UubWFya2Rv d24uNwpAQCAtOCwxMiArOCwxMiBAQCBlbXVsYXRlZCBJREUsIEFIQ0kgb3IgU0NTSSBkaXNrcy4K IFRoZSBhYnN0cmFjdCBpbnRlcmZhY2UgaW52b2x2ZXMgc3BlY2lmeWluZywgZm9yIGVhY2ggYmxv Y2sgZGV2aWNlOgogCiAgKiBOb21pbmFsIGRpc2sgdHlwZTogWGVuIHZpcnR1YWwgZGlzayAoYWth IHh2ZCosIHRoZSBkZWZhdWx0KTsgU0NTSQotICAgKHNkKik7IElERSBvciBBSENJIChoZCopLgor ICAgKHNkKik7IElERSBvciBBSENJIChoZCopOyBOVk1lLgogCi0gICBGb3IgSFZNIGd1ZXN0cywg ZWFjaCB3aG9sZS1kaXNrIGhkKiBhbmQgYW5kIHNkKiBkZXZpY2UgaXMgbWFkZQotICAgYXZhaWxh YmxlIF9ib3RoXyB2aWEgZW11bGF0ZWQgSURFIHJlc3AuIFNDU0kgY29udHJvbGxlciwgX2FuZF8g YXMgYQotICAgWGVuIFZCRC4gIFRoZSBIVk0gZ3Vlc3QgaXMgZW50aXRsZWQgdG8gYXNzdW1lIHRo YXQgdGhlIElERSBvciBTQ1NJCi0gICBkaXNrcyBhdmFpbGFibGUgdmlhIHRoZSBlbXVsYXRlZCBJ REUgY29udHJvbGxlciB0YXJnZXQgdGhlIHNhbWUKKyAgIEZvciBIVk0gZ3Vlc3RzLCBlYWNoIHdo b2xlLWRpc2sgaGQqLCBzZCogb3IgbnZtZSogZGV2aWNlIGlzIG1hZGUKKyAgIGF2YWlsYWJsZSBf Ym90aF8gdmlhIGVtdWxhdGVkIElERSwgU0NTSSBjb250cm9sbGVyIG9yIE5WTWUgZHJpdmUKKyAg IHJlc3BlY3RpdmVseSBfYW5kXyBhcyBhIFhlbiBWQkQuICBUaGUgSFZNIGd1ZXN0IGlzIGVudGl0 bGVkIHRvCisgICBhc3N1bWUgdGhhdCB0aGUgZGlza3MgYXZhaWxhYmxlIHZpYSB0aGUgZW11bGF0 aW9uIHRhcmdldCB0aGUgc2FtZQogICAgdW5kZXJseWluZyBkZXZpY2VzIGFzIHRoZSBjb3JyZXNw b25kaW5nIFhlbiBWQkQgKGllLCBtdWx0aXBhdGgpLgogICAgSW4gaGQqIGNhc2Ugd2l0aCBoZHR5 cGU9YWhjaSwgZGlzayB3aWxsIGJlIEFIQ0kgdmlhIGVtdWxhdGVkCiAgICBpY2g5IGRpc2sgY29u dHJvbGxlci4KQEAgLTQyLDggKzQyLDcgQEAgVGhlIGFic3RyYWN0IGludGVyZmFjZSBpbnZvbHZl cyBzcGVjaWZ5aW5nLCBmb3IgZWFjaCBibG9jayBkZXZpY2U6CiAgICB0cmVhdCBlYWNoIHZiZCBh cyBpdCB3b3VsZCBhIHBhcnRpdGlvbiBvciBzbGljZSBvciBMVk0gdm9sdW1lIChmb3IKICAgIGV4 YW1wbGUgYnkgcHV0dGluZyBvciBleHBlY3RpbmcgYSBmaWxlc3lzdGVtIG9uIGl0KS4KIAotICAg Tm9uLXdob2xlIGRpc2sgZGV2aWNlcyBjYW5ub3QgYmUgcGFzc2VkIHRocm91Z2ggdG8gSFZNIGd1 ZXN0cyB2aWEKLSAgIHRoZSBlbXVsYXRlZCBJREUgb3IgU0NTSSBjb250cm9sbGVycy4KKyAgIE9u bHkgd2hvbGUgZGlzayBkZXZpY2VzIGNhbiBiZSBlbXVsYXRlZCBmb3IgSFZNIGd1ZXN0cy4KIAog CiBDb25maWd1cmF0aW9uIGZpbGUgc3ludGF4CkBAIC01Niw2ICs1NSw3IEBAIFRoZSBjb25maWcg ZmlsZSBzeW50YXhlcyBhcmUsIGZvciBleGFtcGxlCiAgICAgICAgZDUzNnAzNyAgeHZkdHEzNyAg WGVuIHZpcnR1YWwgZGlzayA1MzYgcGFydGl0aW9uIDM3CiAgICAgICAgc2RiMyAgICAgICAgICAg ICAgU0NTSSBkaXNrIDEgcGFydGl0aW9uIDMKICAgICAgICBoZGMyICAgICAgICAgICAgICBJREUg ZGlzayAyIHBhcnRpdGlvbiAyCisgICAgICAgbnZtZTAgICAgICAgICAgICAgTlZNZSBkaXNrIDAg KHdob2xlIGRpc2sgb25seSkKIAogVGhlIGQqcCogc3ludGF4IGlzIG5vdCBzdXBwb3J0ZWQgYnkg eG0veGVuZC4KIApAQCAtNzgsNiArNzgsNyBAQCBlbmNvZGVzIHRoZSBpbmZvcm1hdGlvbiBhYm92 ZSBhcyBmb2xsb3dzOgogICAgICA4IDw8IDggfCBkaXNrIDw8IDQgfCBwYXJ0aXRpb24gICAgICBz ZCwgZGlza3MgYW5kIHBhcnRpdGlvbnMgdXAgdG8gMTUKICAgICAgMyA8PCA4IHwgZGlzayA8PCA2 IHwgcGFydGl0aW9uICAgICAgaGQsIGRpc2tzIDAuLjEsIHBhcnRpdGlvbnMgMC4uNjMKICAgICAy MiA8PCA4IHwgKGRpc2stMikgPDwgNiB8IHBhcnRpdGlvbiAgaGQsIGRpc2tzIDIuLjMsIHBhcnRp dGlvbnMgMC4uNjMKKyAgICAxIDw8IDI4IHwgZGlzayA8PCA4ICAgICAgICAgICAgICAgICAgbnZt ZSwgYWxsIGRpc2tzLCB3aG9sZSBkaXNrIG9ubHkKICAgICAyIDw8IDI4IG9ud2FyZHMgICAgICAg ICAgICAgICAgICAgICAgcmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UKICAgIG90aGVyIHZhbHVlcyBs ZXNzIHRoYW4gMSA8PCAyOCAgICAgICAgZGVwcmVjYXRlZCAvIHJlc2VydmVkCiAKZGlmZiAtLWdp dCBhL2RvY3MvbWFuL3hsLWRpc2stY29uZmlndXJhdGlvbi5wb2QuNSBiL2RvY3MvbWFuL3hsLWRp c2stY29uZmlndXJhdGlvbi5wb2QuNQppbmRleCBkM2VlZGMxLi5jNDA0MThlIDEwMDY0NAotLS0g YS9kb2NzL21hbi94bC1kaXNrLWNvbmZpZ3VyYXRpb24ucG9kLjUKKysrIGIvZG9jcy9tYW4veGwt ZGlzay1jb25maWd1cmF0aW9uLnBvZC41CkBAIC0xMjcsOCArMTI3LDggQEAgZGVzaWduYXRpb24g aW4gc29tZSBzcGVjaWZpY2F0aW9ucykuICBMPHhlbi12YmQtaW50ZXJmYWNlKDcpPgogCiA9aXRl bSBTdXBwb3J0ZWQgdmFsdWVzCiAKLWhkW3hdLCB4dmRbeF0sIHNkW3hdIGV0Yy4gIFBsZWFzZSBy ZWZlciB0byB0aGUgYWJvdmUgc3BlY2lmaWNhdGlvbiBmb3IKLWZ1cnRoZXIgZGV0YWlscy4KK2hk W3hdLCB4dmRbeF0sIHNkW3hdLCBudm1lW3hdIGV0Yy4gIFBsZWFzZSByZWZlciB0byB0aGUgYWJv dmUgc3BlY2lmaWNhdGlvbgorZm9yIGZ1cnRoZXIgZGV0YWlscy4KIAogPWl0ZW0gRGVwcmVjYXRl ZCB2YWx1ZXMKIApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGxfZGV2aWNlLmMgYi90b29s cy9saWJ4bC9saWJ4bF9kZXZpY2UuYwppbmRleCA1ZTk2Njc2Li5iZDA2OTA0IDEwMDY0NAotLS0g YS90b29scy9saWJ4bC9saWJ4bF9kZXZpY2UuYworKysgYi90b29scy9saWJ4bC9saWJ4bF9kZXZp Y2UuYwpAQCAtNTMyLDYgKzUzMiwxNCBAQCBpbnQgbGlieGxfX2RldmljZV9kaXNrX2Rldl9udW1i ZXIoY29uc3QgY2hhciAqdmlydHBhdGgsIGludCAqcGRpc2ssCiAgICAgICAgIGlmIChwcGFydGl0 aW9uKSAqcHBhcnRpdGlvbiA9IHBhcnRpdGlvbjsKICAgICAgICAgcmV0dXJuICg4IDw8IDgpIHwg KGRpc2sgPDwgNCkgfCBwYXJ0aXRpb247CiAgICAgfQorICAgIGlmICghbWVtY21wKHZpcnRwYXRo LCAibnZtZSIsIDQpKSB7CisgICAgICAgIGRpc2sgPSBzdHJ0b3VsKHZpcnRwYXRoICsgNCwgJmVw LCAxMCk7CisgICAgICAgIGlmICgqZXApCisgICAgICAgICAgICByZXR1cm4gLTE7CisgICAgICAg IGlmIChwZGlzaykgKnBkaXNrID0gZGlzazsKKyAgICAgICAgaWYgKHBwYXJ0aXRpb24pICpwcGFy dGl0aW9uID0gMDsKKyAgICAgICAgcmV0dXJuICgxIDw8IDI4KSB8IChkaXNrIDw8IDgpOworICAg IH0KICAgICByZXR1cm4gLTE7CiB9CiAKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2Rt LmMgYi90b29scy9saWJ4bC9saWJ4bF9kbS5jCmluZGV4IDQzNDRjNTMuLjllZmI0YjcgMTAwNjQ0 Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2RtLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfZG0u YwpAQCAtMTU2OCw2ICsxNTY4LDEyIEBAIHN0YXRpYyBpbnQgbGlieGxfX2J1aWxkX2RldmljZV9t b2RlbF9hcmdzX25ldyhsaWJ4bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZkaXNrc1tpXSwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb19tb2Rl KTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHN0cm5jbXAoZGlza3NbaV0udmRldiwgIm52 bWUiLCA0KSA9PSAwKSB7CisgICAgICAgICAgICAgICAgICAgIGZsZXhhcnJheV92YXBwZW5kKGRt X2FyZ3MsCisgICAgICAgICAgICAgICAgICAgICAgICAiLWRyaXZlIiwgIEdDU1BSSU5URigiZmls ZT0lcyxpZj1ub25lLGlkPW52bWVkaXNrLSVkLGZvcm1hdD0lcyxjYWNoZT13cml0ZWJhY2siLCB0 YXJnZXRfcGF0aCwgZGlzaywgZm9ybWF0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICItZGV2 aWNlIiwgR0NTUFJJTlRGKCJudm1lLGRyaXZlPW52bWVkaXNrLSVkLHNlcmlhbD0lZCIsIGRpc2ss IGRpc2spLAorICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7CisgICAgICAgICAgICAgICAg ICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZGlzayA8IDYgJiYgYl9p bmZvLT51Lmh2bS5oZHR5cGUgPT0gTElCWExfSERUWVBFX0FIQ0kpIHsKICAgICAgICAgICAgICAg ICAgICAgaWYgKCFkaXNrc1tpXS5yZWFkd3JpdGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAg IExPR0QoRVJST1IsIGd1ZXN0X2RvbWlkLAotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1k ZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK