From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [PATCH 8/9] libxl_disk: Use ev_qmp in libxl_cdrom_insert Date: Tue, 9 Apr 2019 17:45:41 +0100 Message-ID: <20190409164542.30274-9-anthony.perard@citrix.com> References: <20190409164542.30274-1-anthony.perard@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hDtsh-0008At-CF for xen-devel@lists.xenproject.org; Tue, 09 Apr 2019 16:45:55 +0000 In-Reply-To: <20190409164542.30274-1-anthony.perard@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Anthony PERARD , Wei Liu , Ian Jackson List-Id: xen-devel@lists.xenproject.org bGlieGxfY2Ryb21faW5zZXJ0IGlzIG5vdyBhc3luY2hyb25vdXMgd2hlbiBRRU1VIGlzIGludm9s dmUuIEFuZCB0aGUKY2Ryb20gaXMgbm93IG9wZW5uZWQgYnkgbGlieGwgYmVmb3JlIHNlbmRpbmcg YSBmaWxlIGRlc2NyaXB0b3IgdG8gUUVNVS4KClRoZSAib3BhcXVlIiBwYXJhbWV0cmUgb2YgdGhl ICJhZGQtZmQiIGNhbiBoZWxwIHRvIGZpZ3VyZSBvdXQgd2hhdCBhCmZkc2V0IGluIFFFTVUgaXMg dXNlZCBmb3IuIEl0IGNhbiBiZSBxdWVyaWVkIGJ5ICJxdWVyeS1mZHNldHMiLgoKU2lnbmVkLW9m Zi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+Ci0tLQogdG9v bHMvbGlieGwvbGlieGxfZGlzay5jICAgICB8IDEzMSArKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tLQogdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCB8ICAgMSAtCiB0b29scy9s aWJ4bC9saWJ4bF9xbXAuYyAgICAgIHwgIDE4IC0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDEwNSBp bnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9s aWJ4bF9kaXNrLmMgYi90b29scy9saWJ4bC9saWJ4bF9kaXNrLmMKaW5kZXggMTRkZmM2Nzk3MS4u Nzg1YzhhMjdlNyAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfZGlzay5jCisrKyBiL3Rv b2xzL2xpYnhsL2xpYnhsX2Rpc2suYwpAQCAtNjY4LDEyICs2NjgsMTUgQEAgdHlwZWRlZiBzdHJ1 Y3QgewogICAgIGxpYnhsX2RldmljZV9kaXNrIGRpc2tfc2F2ZWQ7CiAgICAgbGlieGxfX2RvbWFp bl9xbXBfbG9jayAqcW1wX2xvY2s7CiAgICAgaW50IGRtX3ZlcjsKKyAgICBsaWJ4bF9fZXZfcW1w IHFtcDsKIH0gbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZTsKIAotc3RhdGljIHZvaWQgY2Ryb21f aW5zZXJ0X2VqZWN0ZWQobGlieGxfX2VnYyAqZWdjLAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzKTsKLXN0YXRpYyB2b2lkIGNk cm9tX2luc2VydF9pbnNlcnRlZChsaWJ4bF9fZWdjICplZ2MsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzKTsKK3N0YXRpYyB2 b2lkIGNkcm9tX2luc2VydF9lamVjdGVkKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2V2X3FtcCAq LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxfX2pzb25fb2Jq ZWN0ICosIGludCByYyk7CitzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfYWRkZmRfY2IobGlieGxf X2VnYyAqZWdjLCBsaWJ4bF9fZXZfcW1wICosCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0ICosIGludCByYyk7CitzdGF0aWMgdm9pZCBj ZHJvbV9pbnNlcnRfaW5zZXJ0ZWQobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfcW1wICosCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0 ICosIGludCByYyk7CiBzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfZG9uZShsaWJ4bF9fZWdjICpl Z2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fY2Ryb21faW5zZXJ0X3N0 YXRlICpjaXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmMpOwpAQCAtNjg2 LDYgKzY4OSw3IEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQz Ml90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICBsaWJ4bF9kZXZpY2VfZGlz ayAqZGlza3MgPSBOVUxMOwogICAgIGludCByYzsKICAgICBsaWJ4bF9fY2Ryb21faW5zZXJ0X3N0 YXRlICpjaXM7CisgICAgYm9vbCBhc3luY2hyb25vdXNfY2FsbGJhY2sgPSBmYWxzZTsKIAogICAg IEdDTkVXKGNpcyk7CiAgICAgY2lzLT5hbyA9IGFvOwpAQCAtNjkzLDYgKzY5NywxMCBAQCBpbnQg bGlieGxfY2Ryb21faW5zZXJ0KGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxf ZGV2aWNlX2Rpc2sgKmRpc2ssCiAgICAgY2lzLT5kaXNrID0gZGlzazsKICAgICBsaWJ4bF9kZXZp Y2VfZGlza19pbml0KCZjaXMtPmRpc2tfc2F2ZWQpOwogICAgIGxpYnhsX2RldmljZV9kaXNrX2Nv cHkoY3R4LCAmY2lzLT5kaXNrX3NhdmVkLCBkaXNrKTsKKyAgICBsaWJ4bF9fZXZfcW1wX2luaXQo JmNpcy0+cW1wKTsKKyAgICBjaXMtPnFtcC5hbyA9IGFvOworICAgIGNpcy0+cW1wLmRvbWlkID0g ZG9taWQ7CisgICAgY2lzLT5xbXAucGF5bG9hZF9mZCA9IC0xOwogCiAgICAgbGlieGxfZG9tYWlu X3R5cGUgdHlwZSA9IGxpYnhsX19kb21haW5fdHlwZShnYywgZG9taWQpOwogICAgIGlmICh0eXBl ID09IExJQlhMX0RPTUFJTl9UWVBFX0lOVkFMSUQpIHsKQEAgLTc0NywyMyArNzU1LDIxIEBAIGlu dCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLCBsaWJ4 bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCi0gICAgLyog V2UgbmVlZCB0byBlamVjdCB0aGUgb3JpZ2luYWwgaW1hZ2UgZmlyc3QuIFRoaXMgaXMgaW1wbGVt ZW50ZWQKLSAgICAgKiBieSBpbnNlcnRpbmcgZW1wdHkgbWVkaWEuIEpTT04gaXMgbm90IHVwZGF0 ZWQuCisgICAgLyogV2UgbmVlZCB0byBlamVjdCB0aGUgb3JpZ2luYWwgaW1hZ2UgZmlyc3QuCisg ICAgICogSlNPTiBpcyBub3QgdXBkYXRlZC4KICAgICAgKi8KIAogICAgIGlmIChjaXMtPmRtX3Zl ciA9PSBMSUJYTF9ERVZJQ0VfTU9ERUxfVkVSU0lPTl9RRU1VX1hFTikgewotICAgICAgICBsaWJ4 bF9kZXZpY2VfZGlzayBkaXNrX2VtcHR5OwotCi0gICAgICAgIGxpYnhsX2RldmljZV9kaXNrX2lu aXQoJmRpc2tfZW1wdHkpOwotICAgICAgICBkaXNrX2VtcHR5LmZvcm1hdCA9IExJQlhMX0RJU0tf Rk9STUFUX0VNUFRZOwotICAgICAgICBkaXNrX2VtcHR5LnZkZXYgPSBsaWJ4bF9fc3RyZHVwKE5P R0MsIGRpc2stPnZkZXYpOwotICAgICAgICBkaXNrX2VtcHR5LnBkZXZfcGF0aCA9IGxpYnhsX19z dHJkdXAoTk9HQywgIiIpOwotICAgICAgICBkaXNrX2VtcHR5LmlzX2Nkcm9tID0gMTsKLSAgICAg ICAgbGlieGxfX2RldmljZV9kaXNrX3NldGRlZmF1bHQoZ2MsIGRvbWlkLCAmZGlza19lbXB0eSwg ZmFsc2UpOworICAgICAgICBsaWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxMOworICAgICAg ICBpbnQgZGV2aWQgPSBsaWJ4bF9fZGV2aWNlX2Rpc2tfZGV2X251bWJlcihkaXNrLT52ZGV2LCBO VUxMLCBOVUxMKTsKIAotICAgICAgICByYyA9IGxpYnhsX19xbXBfaW5zZXJ0X2Nkcm9tKGdjLCBk b21pZCwgJmRpc2tfZW1wdHkpOwotICAgICAgICBsaWJ4bF9kZXZpY2VfZGlza19kaXNwb3NlKCZk aXNrX2VtcHR5KTsKKyAgICAgICAgUU1QX1BBUkFNRVRFUlNfU1BSSU5URigmYXJncywgImRldmlj ZSIsICJpZGUtJWkiLCBkZXZpZCk7CisgICAgICAgIGNpcy0+cW1wLmNhbGxiYWNrID0gY2Ryb21f aW5zZXJ0X2VqZWN0ZWQ7CisgICAgICAgIHJjID0gbGlieGxfX2V2X3FtcF9zZW5kKGdjLCAmY2lz LT5xbXAsICJlamVjdCIsIGFyZ3MpOwogICAgICAgICBpZiAocmMpIGdvdG8gb3V0OworICAgICAg ICBhc3luY2hyb25vdXNfY2FsbGJhY2sgPSB0cnVlOworICAgIH0gZWxzZSB7CisgICAgICAgIGFz eW5jaHJvbm91c19jYWxsYmFjayA9IGZhbHNlOwogICAgIH0KIAogICAgIHJjID0gMDsKQEAgLTc3 MiwxNyArNzc4LDIwIEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVp bnQzMl90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICBsaWJ4bF9fZGV2aWNl X2xpc3RfZnJlZSgmbGlieGxfX2Rpc2tfZGV2dHlwZSwgZGlza3MsIG51bSk7CiAgICAgaWYgKHJj KSB7CiAgICAgICAgIGNkcm9tX2luc2VydF9kb25lKGVnYywgY2lzLCByYyk7IC8qIG11c3QgYmUg bGFzdCAqLwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGNkcm9tX2luc2VydF9lamVjdGVkKGVnYywg Y2lzKTsgLyogbXVzdCBiZSBsYXN0ICovCisgICAgfSBlbHNlIGlmICghYXN5bmNocm9ub3VzX2Nh bGxiYWNrKSB7CisgICAgICAgIC8qIE9ubHkgY2FsbGVkIGlmIG5vIGFzeW5jaHJvbm91cyBjYWxs YmFjayBhcmUgc2V0LiAqLworICAgICAgICBjZHJvbV9pbnNlcnRfZWplY3RlZChlZ2MsICZjaXMt PnFtcCwgTlVMTCwgMCk7IC8qIG11c3QgYmUgbGFzdCAqLwogICAgIH0KICAgICByZXR1cm4gQU9f SU5QUk9HUkVTUzsKIH0KIAogc3RhdGljIHZvaWQgY2Ryb21faW5zZXJ0X2VqZWN0ZWQobGlieGxf X2VnYyAqZWdjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2Nkcm9t X2luc2VydF9zdGF0ZSAqY2lzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGli eGxfX2V2X3FtcCAqcW1wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg bGlieGxfX2pzb25fb2JqZWN0ICpyZXNwb25zZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGludCByYykKIHsKICAgICBFR0NfR0M7Ci0gICAgaW50IHJjOworICAgIGxpYnhsX19j ZHJvbV9pbnNlcnRfc3RhdGUgKmNpcyA9IENPTlRBSU5FUl9PRihxbXAsICpjaXMsIHFtcCk7CiAg ICAgbGlieGxfX2RvbWFpbl91c2VyZGF0YV9sb2NrICpkYXRhX2xvY2sgPSBOVUxMOwogICAgIGxp YnhsX19kZXZpY2UgZGV2aWNlOwogICAgIGNvbnN0IGNoYXIgKmJlX3BhdGgsICpsaWJ4bF9wYXRo OwpAQCAtNzkwLDYgKzc5OSw3IEBAIHN0YXRpYyB2b2lkIGNkcm9tX2luc2VydF9lamVjdGVkKGxp YnhsX19lZ2MgKmVnYywKICAgICB4c190cmFuc2FjdGlvbl90IHQgPSBYQlRfTlVMTDsKICAgICBj aGFyICp0bXA7CiAgICAgbGlieGxfZG9tYWluX2NvbmZpZyBkX2NvbmZpZzsKKyAgICBib29sIGFz eW5jaHJvbm91c19jYWxsYmFjayA9IGZhbHNlOwogCiAgICAgLyogY29udmVuaWVuY2UgYWxpYXNl cyAqLwogICAgIGxpYnhsX2RvbWlkIGRvbWlkID0gY2lzLT5kb21pZDsKQEAgLTc5Nyw2ICs4MDcs OCBAQCBzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfZWplY3RlZChsaWJ4bF9fZWdjICplZ2MsCiAK ICAgICBsaWJ4bF9kb21haW5fY29uZmlnX2luaXQoJmRfY29uZmlnKTsKIAorICAgIGlmIChyYykg Z290byBvdXQ7CisKICAgICByYyA9IGxpYnhsX19kZXZpY2VfZnJvbV9kaXNrKGdjLCBkb21pZCwg ZGlzaywgJmRldmljZSk7CiAgICAgaWYgKHJjKSBnb3RvIG91dDsKICAgICBiZV9wYXRoID0gbGli eGxfX2RldmljZV9iYWNrZW5kX3BhdGgoZ2MsICZkZXZpY2UpOwpAQCAtODUyLDkgKzg2NCwyOCBA QCBzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfZWplY3RlZChsaWJ4bF9fZWdjICplZ2MsCiAgICAg cmMgPSBsaWJ4bF9fZG1fY2hlY2tfc3RhcnQoZ2MsICZkX2NvbmZpZywgZG9taWQpOwogICAgIGlm IChyYykgZ290byBvdXQ7CiAKLSAgICBpZiAoY2lzLT5kbV92ZXIgPT0gTElCWExfREVWSUNFX01P REVMX1ZFUlNJT05fUUVNVV9YRU4pIHsKLSAgICAgICAgcmMgPSBsaWJ4bF9fcW1wX2luc2VydF9j ZHJvbShnYywgZG9taWQsIGRpc2spOworICAgIGlmIChjaXMtPmRtX3ZlciA9PSBMSUJYTF9ERVZJ Q0VfTU9ERUxfVkVSU0lPTl9RRU1VX1hFTiAmJgorICAgICAgICBkaXNrLT5mb3JtYXQgIT0gTElC WExfRElTS19GT1JNQVRfRU1QVFkpIHsKKyAgICAgICAgbGlieGxfX2pzb25fb2JqZWN0ICphcmdz ID0gTlVMTDsKKworICAgICAgICBxbXAtPnBheWxvYWRfZmQgPSBvcGVuKGRpc2stPnBkZXZfcGF0 aCwgT19SRE9OTFkpOworICAgICAgICBpZiAocW1wLT5wYXlsb2FkX2ZkIDwgMCkgeworICAgICAg ICAgICAgTE9HRUQoRVJST1IsIGRvbWlkLCAiRmFpbGVkIHRvIG9wZW4gY2Ryb20gZmlsZSAlcyIs CisgICAgICAgICAgICAgICAgICBkaXNrLT5wZGV2X3BhdGgpOworICAgICAgICAgICAgcmMgPSBF UlJPUl9GQUlMOworICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgIH0KKworICAgICAgICAv KiBUaGlzIGZyZWUgZm9ybSBwYXJhbWV0ZXIgaXMgbm90IHVzZSBieSBRRU1VIG9yIGxpYnhsLiAq LworICAgICAgICBRTVBfUEFSQU1FVEVSU19TUFJJTlRGKCZhcmdzLCAib3BhcXVlIiwgIiVzOiVz IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kaXNrX2Zvcm1hdF90b19z dHJpbmcoZGlzay0+Zm9ybWF0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNr LT5wZGV2X3BhdGgpOworICAgICAgICBxbXAtPmNhbGxiYWNrID0gY2Ryb21faW5zZXJ0X2FkZGZk X2NiOworICAgICAgICByYyA9IGxpYnhsX19ldl9xbXBfc2VuZChnYywgcW1wLCAiYWRkLWZkIiwg YXJncyk7CiAgICAgICAgIGlmIChyYykgZ290byBvdXQ7CisgICAgICAgIGFzeW5jaHJvbm91c19j YWxsYmFjayA9IHRydWU7CisgICAgfSBlbHNlIHsKKyAgICAgICAgYXN5bmNocm9ub3VzX2NhbGxi YWNrID0gZmFsc2U7CiAgICAgfQogCiAgICAgcmMgPSAwOwpAQCAtODY1LDE2ICs4OTYsNTggQEAg c3RhdGljIHZvaWQgY2Ryb21faW5zZXJ0X2VqZWN0ZWQobGlieGxfX2VnYyAqZWdjLAogICAgIGlm IChkYXRhX2xvY2spIGxpYnhsX191bmxvY2tfZG9tYWluX3VzZXJkYXRhKGRhdGFfbG9jayk7CiAg ICAgaWYgKHJjKSB7CiAgICAgICAgIGNkcm9tX2luc2VydF9kb25lKGVnYywgY2lzLCByYyk7IC8q IG11c3QgYmUgbGFzdCAqLwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGNkcm9tX2luc2VydF9pbnNl cnRlZChlZ2MsIGNpcyk7IC8qIG11c3QgYmUgbGFzdCAqLworICAgIH0gZWxzZSBpZiAoIWFzeW5j aHJvbm91c19jYWxsYmFjaykgeworICAgICAgICAvKiBPbmx5IGNhbGxlZCBpZiBubyBhc3luY2hy b25vdXMgY2FsbGJhY2sgYXJlIHNldC4gKi8KKyAgICAgICAgY2Ryb21faW5zZXJ0X2luc2VydGVk KGVnYywgcW1wLCBOVUxMLCAwKTsgLyogbXVzdCBiZSBsYXN0ICovCisgICAgfQorfQorCitzdGF0 aWMgdm9pZCBjZHJvbV9pbnNlcnRfYWRkZmRfY2IobGlieGxfX2VnYyAqZWdjLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19ldl9xbXAgKnFtcCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsaWJ4bF9fanNvbl9vYmplY3QgKnJlc3BvbnNl LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYykKK3sKKyAgICBFR0Nf R0M7CisgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzID0gQ09OVEFJTkVSX09GKHFt cCwgKmNpcywgcW1wKTsKKyAgICBsaWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxMOworICAg IGNvbnN0IGxpYnhsX19qc29uX29iamVjdCAqbzsKKyAgICBpbnQgZGV2aWQ7CisgICAgaW50IGZk c2V0OworCisgICAgLyogY29udmVuaWVuY2UgYWxpYXNlcyAqLworICAgIGxpYnhsX2RldmljZV9k aXNrICpkaXNrID0gY2lzLT5kaXNrOworCisgICAgY2xvc2UocW1wLT5wYXlsb2FkX2ZkKTsKKyAg ICBxbXAtPnBheWxvYWRfZmQgPSAtMTsKKworICAgIGlmIChyYykgZ290byBvdXQ7CisKKyAgICBv ID0gbGlieGxfX2pzb25fbWFwX2dldCgiZmRzZXQtaWQiLCByZXNwb25zZSwgSlNPTl9JTlRFR0VS KTsKKyAgICBpZiAoIW8pIHsKKyAgICAgICAgcmMgPSBFUlJPUl9GQUlMOworICAgICAgICBnb3Rv IG91dDsKICAgICB9CisgICAgZmRzZXQgPSBsaWJ4bF9fanNvbl9vYmplY3RfZ2V0X2ludGVnZXIo byk7CisKKyAgICBkZXZpZCA9IGxpYnhsX19kZXZpY2VfZGlza19kZXZfbnVtYmVyKGRpc2stPnZk ZXYsIE5VTEwsIE5VTEwpOworICAgIFFNUF9QQVJBTUVURVJTX1NQUklOVEYoJmFyZ3MsICJkZXZp Y2UiLCAiaWRlLSVpIiwgZGV2aWQpOworICAgIFFNUF9QQVJBTUVURVJTX1NQUklOVEYoJmFyZ3Ms ICJ0YXJnZXQiLCAiL2Rldi9mZHNldC8lZCIsIGZkc2V0KTsKKyAgICBsaWJ4bF9fcW1wX3BhcmFt X2FkZF9zdHJpbmcoZ2MsICZhcmdzLCAiYXJnIiwKKyAgICAgICAgbGlieGxfX3FlbXVfZGlza19m b3JtYXRfc3RyaW5nKGRpc2stPmZvcm1hdCkpOworICAgIHFtcC0+Y2FsbGJhY2sgPSBjZHJvbV9p bnNlcnRfaW5zZXJ0ZWQ7CisgICAgcmMgPSBsaWJ4bF9fZXZfcW1wX3NlbmQoZ2MsIHFtcCwgImNo YW5nZSIsIGFyZ3MpOworb3V0OgorICAgIGlmIChyYykKKyAgICAgICAgY2Ryb21faW5zZXJ0X2Rv bmUoZWdjLCBjaXMsIHJjKTsgLyogbXVzdCBiZSBsYXN0ICovCiB9CiAKIHN0YXRpYyB2b2lkIGNk cm9tX2luc2VydF9pbnNlcnRlZChsaWJ4bF9fZWdjICplZ2MsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzKQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19ldl9xbXAgKnFtcCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsaWJ4bF9fanNvbl9vYmplY3QgKnJlc3BvbnNl LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYykKIHsKICAgICBFR0Nf R0M7Ci0gICAgaW50IHJjOworICAgIGxpYnhsX19jZHJvbV9pbnNlcnRfc3RhdGUgKmNpcyA9IENP TlRBSU5FUl9PRihxbXAsICpjaXMsIHFtcCk7CiAgICAgbGlieGxfX2RvbWFpbl91c2VyZGF0YV9s b2NrICpkYXRhX2xvY2sgPSBOVUxMOwogICAgIGxpYnhsX2RvbWFpbl9jb25maWcgZF9jb25maWc7 CiAgICAgZmxleGFycmF5X3QgKmluc2VydCA9IE5VTEw7CkBAIC04ODksNiArOTYyLDggQEAgc3Rh dGljIHZvaWQgY2Ryb21faW5zZXJ0X2luc2VydGVkKGxpYnhsX19lZ2MgKmVnYywKIAogICAgIGxp YnhsX2RvbWFpbl9jb25maWdfaW5pdCgmZF9jb25maWcpOwogCisgICAgaWYgKHJjKSBnb3RvIG91 dDsKKwogICAgIHJjID0gbGlieGxfX2RldmljZV9mcm9tX2Rpc2soZ2MsIGRvbWlkLCBkaXNrLCAm ZGV2aWNlKTsKICAgICBpZiAocmMpIGdvdG8gb3V0OwogICAgIGJlX3BhdGggPSBsaWJ4bF9fZGV2 aWNlX2JhY2tlbmRfcGF0aChnYywgJmRldmljZSk7CkBAIC05NTksNiArMTAzNCwxMCBAQCBzdGF0 aWMgdm9pZCBjZHJvbV9pbnNlcnRfZG9uZShsaWJ4bF9fZWdjICplZ2MsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBsaWJ4bF9fY2Ryb21faW5zZXJ0X3N0YXRlICpjaXMsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmMpCiB7CisgICAgRUdDX0dDOworCisgICAgbGli eGxfX2V2X3FtcF9kaXNwb3NlKGdjLCAmY2lzLT5xbXApOworICAgIGlmIChjaXMtPnFtcC5wYXls b2FkX2ZkID49IDApIGNsb3NlKGNpcy0+cW1wLnBheWxvYWRfZmQpOwogICAgIGlmIChjaXMtPnFt cF9sb2NrKSBsaWJ4bF9fdW5sb2NrX2RvbWFpbl9xbXAoY2lzLT5xbXBfbG9jayk7CiAgICAgbGli eGxfZGV2aWNlX2Rpc2tfZGlzcG9zZSgmY2lzLT5kaXNrX3NhdmVkKTsKICAgICBsaWJ4bF9fYW9f Y29tcGxldGUoZWdjLCBjaXMtPmFvLCByYyk7CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4 bF9pbnRlcm5hbC5oIGIvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAppbmRleCA5NDAxZjk4 OGU1Li4wMDQ5MzVlYTI1IDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5o CisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmgKQEAgLTE5ODQsNyArMTk4NCw2IEBA IF9oaWRkZW4gaW50IGxpYnhsX19xbXBfcmVzdW1lKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCk7 CiBfaGlkZGVuIGludCBsaWJ4bF9fcW1wX3Jlc3RvcmUobGlieGxfX2djICpnYywgaW50IGRvbWlk LCBjb25zdCBjaGFyICpmaWxlbmFtZSk7CiAvKiBTZXQgZGlydHkgYml0bWFwIGxvZ2dpbmcgc3Rh dHVzICovCiBfaGlkZGVuIGludCBsaWJ4bF9fcW1wX3NldF9nbG9iYWxfZGlydHlfbG9nKGxpYnhs X19nYyAqZ2MsIGludCBkb21pZCwgYm9vbCBlbmFibGUpOwotX2hpZGRlbiBpbnQgbGlieGxfX3Ft cF9pbnNlcnRfY2Ryb20obGlieGxfX2djICpnYywgaW50IGRvbWlkLCBjb25zdCBsaWJ4bF9kZXZp Y2VfZGlzayAqZGlzayk7CiAvKiBBZGQgYSB2aXJ0dWFsIENQVSAqLwogX2hpZGRlbiBpbnQgbGli eGxfX3FtcF9jcHVfYWRkKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwgaW50IGluZGV4KTsKIC8q IFF1ZXJ5IHRoZSBiaXRtYXAgb2YgQ1BVcyAqLwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGli eGxfcW1wLmMgYi90b29scy9saWJ4bC9saWJ4bF9xbXAuYwppbmRleCBiNmE2OTFkOWZjLi4yNWQz NzY0ZjE4IDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9xbXAuYworKysgYi90b29scy9s aWJ4bC9saWJ4bF9xbXAuYwpAQCAtMTA1OSwyNCArMTA1OSw2IEBAIGludCBsaWJ4bF9fcW1wX3Nl dF9nbG9iYWxfZGlydHlfbG9nKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwgYm9vbCBlbmFibGUp CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKIH0KIAotaW50IGxpYnhs X19xbXBfaW5zZXJ0X2Nkcm9tKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaykKLXsKLSAgICBs aWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxMOwotICAgIGludCBkZXZfbnVtYmVyID0gbGli eGxfX2RldmljZV9kaXNrX2Rldl9udW1iZXIoZGlzay0+dmRldiwgTlVMTCwgTlVMTCk7Ci0KLSAg ICBRTVBfUEFSQU1FVEVSU19TUFJJTlRGKCZhcmdzLCAiZGV2aWNlIiwgImlkZS0laSIsIGRldl9u dW1iZXIpOwotCi0gICAgaWYgKGRpc2stPmZvcm1hdCA9PSBMSUJYTF9ESVNLX0ZPUk1BVF9FTVBU WSkgewotICAgICAgICByZXR1cm4gcW1wX3J1bl9jb21tYW5kKGdjLCBkb21pZCwgImVqZWN0Iiwg YXJncywgTlVMTCwgTlVMTCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgbGlieGxfX3FtcF9wYXJh bV9hZGRfc3RyaW5nKGdjLCAmYXJncywgInRhcmdldCIsIGRpc2stPnBkZXZfcGF0aCk7Ci0gICAg ICAgIGxpYnhsX19xbXBfcGFyYW1fYWRkX3N0cmluZyhnYywgJmFyZ3MsICJhcmciLAotICAgICAg ICAgICAgbGlieGxfX3FlbXVfZGlza19mb3JtYXRfc3RyaW5nKGRpc2stPmZvcm1hdCkpOwotICAg ICAgICByZXR1cm4gcW1wX3J1bl9jb21tYW5kKGdjLCBkb21pZCwgImNoYW5nZSIsIGFyZ3MsIE5V TEwsIE5VTEwpOwotICAgIH0KLX0KLQogaW50IGxpYnhsX19xbXBfY3B1X2FkZChsaWJ4bF9fZ2Mg KmdjLCBpbnQgZG9taWQsIGludCBpZHgpCiB7CiAgICAgbGlieGxfX2pzb25fb2JqZWN0ICphcmdz ID0gTlVMTDsKLS0gCkFudGhvbnkgUEVSQVJECgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xp c3RpbmZvL3hlbi1kZXZlbA== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 85A7FC10F0E for ; Tue, 9 Apr 2019 16:46:10 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 547F12133D for ; Tue, 9 Apr 2019 16:46:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 547F12133D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=citrix.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hDtsj-0008C8-8Z; Tue, 09 Apr 2019 16:45:57 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hDtsh-0008At-CF for xen-devel@lists.xenproject.org; Tue, 09 Apr 2019 16:45:55 +0000 X-Inumbo-ID: f0180cfd-5ae6-11e9-92d7-bc764e045a96 Received: from SMTP03.CITRIX.COM (unknown [162.221.156.55]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id f0180cfd-5ae6-11e9-92d7-bc764e045a96; Tue, 09 Apr 2019 16:45:53 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.60,330,1549929600"; d="scan'208";a="83137618" From: Anthony PERARD To: Date: Tue, 9 Apr 2019 17:45:41 +0100 Message-ID: <20190409164542.30274-9-anthony.perard@citrix.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190409164542.30274-1-anthony.perard@citrix.com> References: <20190409164542.30274-1-anthony.perard@citrix.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH 8/9] libxl_disk: Use ev_qmp in libxl_cdrom_insert X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Anthony PERARD , Wei Liu , Ian Jackson Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Message-ID: <20190409164541.RdhaowzueFrZu8UrQc_O6Ul9pCaBFFsFc-6TAZZDVQU@z> bGlieGxfY2Ryb21faW5zZXJ0IGlzIG5vdyBhc3luY2hyb25vdXMgd2hlbiBRRU1VIGlzIGludm9s dmUuIEFuZCB0aGUKY2Ryb20gaXMgbm93IG9wZW5uZWQgYnkgbGlieGwgYmVmb3JlIHNlbmRpbmcg YSBmaWxlIGRlc2NyaXB0b3IgdG8gUUVNVS4KClRoZSAib3BhcXVlIiBwYXJhbWV0cmUgb2YgdGhl ICJhZGQtZmQiIGNhbiBoZWxwIHRvIGZpZ3VyZSBvdXQgd2hhdCBhCmZkc2V0IGluIFFFTVUgaXMg dXNlZCBmb3IuIEl0IGNhbiBiZSBxdWVyaWVkIGJ5ICJxdWVyeS1mZHNldHMiLgoKU2lnbmVkLW9m Zi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+Ci0tLQogdG9v bHMvbGlieGwvbGlieGxfZGlzay5jICAgICB8IDEzMSArKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tLQogdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaCB8ICAgMSAtCiB0b29scy9s aWJ4bC9saWJ4bF9xbXAuYyAgICAgIHwgIDE4IC0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDEwNSBp bnNlcnRpb25zKCspLCA0NSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9s aWJ4bF9kaXNrLmMgYi90b29scy9saWJ4bC9saWJ4bF9kaXNrLmMKaW5kZXggMTRkZmM2Nzk3MS4u Nzg1YzhhMjdlNyAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGlieGxfZGlzay5jCisrKyBiL3Rv b2xzL2xpYnhsL2xpYnhsX2Rpc2suYwpAQCAtNjY4LDEyICs2NjgsMTUgQEAgdHlwZWRlZiBzdHJ1 Y3QgewogICAgIGxpYnhsX2RldmljZV9kaXNrIGRpc2tfc2F2ZWQ7CiAgICAgbGlieGxfX2RvbWFp bl9xbXBfbG9jayAqcW1wX2xvY2s7CiAgICAgaW50IGRtX3ZlcjsKKyAgICBsaWJ4bF9fZXZfcW1w IHFtcDsKIH0gbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZTsKIAotc3RhdGljIHZvaWQgY2Ryb21f aW5zZXJ0X2VqZWN0ZWQobGlieGxfX2VnYyAqZWdjLAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzKTsKLXN0YXRpYyB2b2lkIGNk cm9tX2luc2VydF9pbnNlcnRlZChsaWJ4bF9fZWdjICplZ2MsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzKTsKK3N0YXRpYyB2 b2lkIGNkcm9tX2luc2VydF9lamVjdGVkKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2V2X3FtcCAq LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxfX2pzb25fb2Jq ZWN0ICosIGludCByYyk7CitzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfYWRkZmRfY2IobGlieGxf X2VnYyAqZWdjLCBsaWJ4bF9fZXZfcW1wICosCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0ICosIGludCByYyk7CitzdGF0aWMgdm9pZCBj ZHJvbV9pbnNlcnRfaW5zZXJ0ZWQobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfcW1wICosCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbGlieGxfX2pzb25fb2JqZWN0 ICosIGludCByYyk7CiBzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfZG9uZShsaWJ4bF9fZWdjICpl Z2MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fY2Ryb21faW5zZXJ0X3N0 YXRlICpjaXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmMpOwpAQCAtNjg2 LDYgKzY4OSw3IEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQz Ml90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICBsaWJ4bF9kZXZpY2VfZGlz ayAqZGlza3MgPSBOVUxMOwogICAgIGludCByYzsKICAgICBsaWJ4bF9fY2Ryb21faW5zZXJ0X3N0 YXRlICpjaXM7CisgICAgYm9vbCBhc3luY2hyb25vdXNfY2FsbGJhY2sgPSBmYWxzZTsKIAogICAg IEdDTkVXKGNpcyk7CiAgICAgY2lzLT5hbyA9IGFvOwpAQCAtNjkzLDYgKzY5NywxMCBAQCBpbnQg bGlieGxfY2Ryb21faW5zZXJ0KGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxf ZGV2aWNlX2Rpc2sgKmRpc2ssCiAgICAgY2lzLT5kaXNrID0gZGlzazsKICAgICBsaWJ4bF9kZXZp Y2VfZGlza19pbml0KCZjaXMtPmRpc2tfc2F2ZWQpOwogICAgIGxpYnhsX2RldmljZV9kaXNrX2Nv cHkoY3R4LCAmY2lzLT5kaXNrX3NhdmVkLCBkaXNrKTsKKyAgICBsaWJ4bF9fZXZfcW1wX2luaXQo JmNpcy0+cW1wKTsKKyAgICBjaXMtPnFtcC5hbyA9IGFvOworICAgIGNpcy0+cW1wLmRvbWlkID0g ZG9taWQ7CisgICAgY2lzLT5xbXAucGF5bG9hZF9mZCA9IC0xOwogCiAgICAgbGlieGxfZG9tYWlu X3R5cGUgdHlwZSA9IGxpYnhsX19kb21haW5fdHlwZShnYywgZG9taWQpOwogICAgIGlmICh0eXBl ID09IExJQlhMX0RPTUFJTl9UWVBFX0lOVkFMSUQpIHsKQEAgLTc0NywyMyArNzU1LDIxIEBAIGlu dCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLCBsaWJ4 bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCi0gICAgLyog V2UgbmVlZCB0byBlamVjdCB0aGUgb3JpZ2luYWwgaW1hZ2UgZmlyc3QuIFRoaXMgaXMgaW1wbGVt ZW50ZWQKLSAgICAgKiBieSBpbnNlcnRpbmcgZW1wdHkgbWVkaWEuIEpTT04gaXMgbm90IHVwZGF0 ZWQuCisgICAgLyogV2UgbmVlZCB0byBlamVjdCB0aGUgb3JpZ2luYWwgaW1hZ2UgZmlyc3QuCisg ICAgICogSlNPTiBpcyBub3QgdXBkYXRlZC4KICAgICAgKi8KIAogICAgIGlmIChjaXMtPmRtX3Zl ciA9PSBMSUJYTF9ERVZJQ0VfTU9ERUxfVkVSU0lPTl9RRU1VX1hFTikgewotICAgICAgICBsaWJ4 bF9kZXZpY2VfZGlzayBkaXNrX2VtcHR5OwotCi0gICAgICAgIGxpYnhsX2RldmljZV9kaXNrX2lu aXQoJmRpc2tfZW1wdHkpOwotICAgICAgICBkaXNrX2VtcHR5LmZvcm1hdCA9IExJQlhMX0RJU0tf Rk9STUFUX0VNUFRZOwotICAgICAgICBkaXNrX2VtcHR5LnZkZXYgPSBsaWJ4bF9fc3RyZHVwKE5P R0MsIGRpc2stPnZkZXYpOwotICAgICAgICBkaXNrX2VtcHR5LnBkZXZfcGF0aCA9IGxpYnhsX19z dHJkdXAoTk9HQywgIiIpOwotICAgICAgICBkaXNrX2VtcHR5LmlzX2Nkcm9tID0gMTsKLSAgICAg ICAgbGlieGxfX2RldmljZV9kaXNrX3NldGRlZmF1bHQoZ2MsIGRvbWlkLCAmZGlza19lbXB0eSwg ZmFsc2UpOworICAgICAgICBsaWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxMOworICAgICAg ICBpbnQgZGV2aWQgPSBsaWJ4bF9fZGV2aWNlX2Rpc2tfZGV2X251bWJlcihkaXNrLT52ZGV2LCBO VUxMLCBOVUxMKTsKIAotICAgICAgICByYyA9IGxpYnhsX19xbXBfaW5zZXJ0X2Nkcm9tKGdjLCBk b21pZCwgJmRpc2tfZW1wdHkpOwotICAgICAgICBsaWJ4bF9kZXZpY2VfZGlza19kaXNwb3NlKCZk aXNrX2VtcHR5KTsKKyAgICAgICAgUU1QX1BBUkFNRVRFUlNfU1BSSU5URigmYXJncywgImRldmlj ZSIsICJpZGUtJWkiLCBkZXZpZCk7CisgICAgICAgIGNpcy0+cW1wLmNhbGxiYWNrID0gY2Ryb21f aW5zZXJ0X2VqZWN0ZWQ7CisgICAgICAgIHJjID0gbGlieGxfX2V2X3FtcF9zZW5kKGdjLCAmY2lz LT5xbXAsICJlamVjdCIsIGFyZ3MpOwogICAgICAgICBpZiAocmMpIGdvdG8gb3V0OworICAgICAg ICBhc3luY2hyb25vdXNfY2FsbGJhY2sgPSB0cnVlOworICAgIH0gZWxzZSB7CisgICAgICAgIGFz eW5jaHJvbm91c19jYWxsYmFjayA9IGZhbHNlOwogICAgIH0KIAogICAgIHJjID0gMDsKQEAgLTc3 MiwxNyArNzc4LDIwIEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVp bnQzMl90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICBsaWJ4bF9fZGV2aWNl X2xpc3RfZnJlZSgmbGlieGxfX2Rpc2tfZGV2dHlwZSwgZGlza3MsIG51bSk7CiAgICAgaWYgKHJj KSB7CiAgICAgICAgIGNkcm9tX2luc2VydF9kb25lKGVnYywgY2lzLCByYyk7IC8qIG11c3QgYmUg bGFzdCAqLwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGNkcm9tX2luc2VydF9lamVjdGVkKGVnYywg Y2lzKTsgLyogbXVzdCBiZSBsYXN0ICovCisgICAgfSBlbHNlIGlmICghYXN5bmNocm9ub3VzX2Nh bGxiYWNrKSB7CisgICAgICAgIC8qIE9ubHkgY2FsbGVkIGlmIG5vIGFzeW5jaHJvbm91cyBjYWxs YmFjayBhcmUgc2V0LiAqLworICAgICAgICBjZHJvbV9pbnNlcnRfZWplY3RlZChlZ2MsICZjaXMt PnFtcCwgTlVMTCwgMCk7IC8qIG11c3QgYmUgbGFzdCAqLwogICAgIH0KICAgICByZXR1cm4gQU9f SU5QUk9HUkVTUzsKIH0KIAogc3RhdGljIHZvaWQgY2Ryb21faW5zZXJ0X2VqZWN0ZWQobGlieGxf X2VnYyAqZWdjLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2Nkcm9t X2luc2VydF9zdGF0ZSAqY2lzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGli eGxfX2V2X3FtcCAqcW1wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg bGlieGxfX2pzb25fb2JqZWN0ICpyZXNwb25zZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGludCByYykKIHsKICAgICBFR0NfR0M7Ci0gICAgaW50IHJjOworICAgIGxpYnhsX19j ZHJvbV9pbnNlcnRfc3RhdGUgKmNpcyA9IENPTlRBSU5FUl9PRihxbXAsICpjaXMsIHFtcCk7CiAg ICAgbGlieGxfX2RvbWFpbl91c2VyZGF0YV9sb2NrICpkYXRhX2xvY2sgPSBOVUxMOwogICAgIGxp YnhsX19kZXZpY2UgZGV2aWNlOwogICAgIGNvbnN0IGNoYXIgKmJlX3BhdGgsICpsaWJ4bF9wYXRo OwpAQCAtNzkwLDYgKzc5OSw3IEBAIHN0YXRpYyB2b2lkIGNkcm9tX2luc2VydF9lamVjdGVkKGxp YnhsX19lZ2MgKmVnYywKICAgICB4c190cmFuc2FjdGlvbl90IHQgPSBYQlRfTlVMTDsKICAgICBj aGFyICp0bXA7CiAgICAgbGlieGxfZG9tYWluX2NvbmZpZyBkX2NvbmZpZzsKKyAgICBib29sIGFz eW5jaHJvbm91c19jYWxsYmFjayA9IGZhbHNlOwogCiAgICAgLyogY29udmVuaWVuY2UgYWxpYXNl cyAqLwogICAgIGxpYnhsX2RvbWlkIGRvbWlkID0gY2lzLT5kb21pZDsKQEAgLTc5Nyw2ICs4MDcs OCBAQCBzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfZWplY3RlZChsaWJ4bF9fZWdjICplZ2MsCiAK ICAgICBsaWJ4bF9kb21haW5fY29uZmlnX2luaXQoJmRfY29uZmlnKTsKIAorICAgIGlmIChyYykg Z290byBvdXQ7CisKICAgICByYyA9IGxpYnhsX19kZXZpY2VfZnJvbV9kaXNrKGdjLCBkb21pZCwg ZGlzaywgJmRldmljZSk7CiAgICAgaWYgKHJjKSBnb3RvIG91dDsKICAgICBiZV9wYXRoID0gbGli eGxfX2RldmljZV9iYWNrZW5kX3BhdGgoZ2MsICZkZXZpY2UpOwpAQCAtODUyLDkgKzg2NCwyOCBA QCBzdGF0aWMgdm9pZCBjZHJvbV9pbnNlcnRfZWplY3RlZChsaWJ4bF9fZWdjICplZ2MsCiAgICAg cmMgPSBsaWJ4bF9fZG1fY2hlY2tfc3RhcnQoZ2MsICZkX2NvbmZpZywgZG9taWQpOwogICAgIGlm IChyYykgZ290byBvdXQ7CiAKLSAgICBpZiAoY2lzLT5kbV92ZXIgPT0gTElCWExfREVWSUNFX01P REVMX1ZFUlNJT05fUUVNVV9YRU4pIHsKLSAgICAgICAgcmMgPSBsaWJ4bF9fcW1wX2luc2VydF9j ZHJvbShnYywgZG9taWQsIGRpc2spOworICAgIGlmIChjaXMtPmRtX3ZlciA9PSBMSUJYTF9ERVZJ Q0VfTU9ERUxfVkVSU0lPTl9RRU1VX1hFTiAmJgorICAgICAgICBkaXNrLT5mb3JtYXQgIT0gTElC WExfRElTS19GT1JNQVRfRU1QVFkpIHsKKyAgICAgICAgbGlieGxfX2pzb25fb2JqZWN0ICphcmdz ID0gTlVMTDsKKworICAgICAgICBxbXAtPnBheWxvYWRfZmQgPSBvcGVuKGRpc2stPnBkZXZfcGF0 aCwgT19SRE9OTFkpOworICAgICAgICBpZiAocW1wLT5wYXlsb2FkX2ZkIDwgMCkgeworICAgICAg ICAgICAgTE9HRUQoRVJST1IsIGRvbWlkLCAiRmFpbGVkIHRvIG9wZW4gY2Ryb20gZmlsZSAlcyIs CisgICAgICAgICAgICAgICAgICBkaXNrLT5wZGV2X3BhdGgpOworICAgICAgICAgICAgcmMgPSBF UlJPUl9GQUlMOworICAgICAgICAgICAgZ290byBvdXQ7CisgICAgICAgIH0KKworICAgICAgICAv KiBUaGlzIGZyZWUgZm9ybSBwYXJhbWV0ZXIgaXMgbm90IHVzZSBieSBRRU1VIG9yIGxpYnhsLiAq LworICAgICAgICBRTVBfUEFSQU1FVEVSU19TUFJJTlRGKCZhcmdzLCAib3BhcXVlIiwgIiVzOiVz IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kaXNrX2Zvcm1hdF90b19z dHJpbmcoZGlzay0+Zm9ybWF0KSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNr LT5wZGV2X3BhdGgpOworICAgICAgICBxbXAtPmNhbGxiYWNrID0gY2Ryb21faW5zZXJ0X2FkZGZk X2NiOworICAgICAgICByYyA9IGxpYnhsX19ldl9xbXBfc2VuZChnYywgcW1wLCAiYWRkLWZkIiwg YXJncyk7CiAgICAgICAgIGlmIChyYykgZ290byBvdXQ7CisgICAgICAgIGFzeW5jaHJvbm91c19j YWxsYmFjayA9IHRydWU7CisgICAgfSBlbHNlIHsKKyAgICAgICAgYXN5bmNocm9ub3VzX2NhbGxi YWNrID0gZmFsc2U7CiAgICAgfQogCiAgICAgcmMgPSAwOwpAQCAtODY1LDE2ICs4OTYsNTggQEAg c3RhdGljIHZvaWQgY2Ryb21faW5zZXJ0X2VqZWN0ZWQobGlieGxfX2VnYyAqZWdjLAogICAgIGlm IChkYXRhX2xvY2spIGxpYnhsX191bmxvY2tfZG9tYWluX3VzZXJkYXRhKGRhdGFfbG9jayk7CiAg ICAgaWYgKHJjKSB7CiAgICAgICAgIGNkcm9tX2luc2VydF9kb25lKGVnYywgY2lzLCByYyk7IC8q IG11c3QgYmUgbGFzdCAqLwotICAgIH0gZWxzZSB7Ci0gICAgICAgIGNkcm9tX2luc2VydF9pbnNl cnRlZChlZ2MsIGNpcyk7IC8qIG11c3QgYmUgbGFzdCAqLworICAgIH0gZWxzZSBpZiAoIWFzeW5j aHJvbm91c19jYWxsYmFjaykgeworICAgICAgICAvKiBPbmx5IGNhbGxlZCBpZiBubyBhc3luY2hy b25vdXMgY2FsbGJhY2sgYXJlIHNldC4gKi8KKyAgICAgICAgY2Ryb21faW5zZXJ0X2luc2VydGVk KGVnYywgcW1wLCBOVUxMLCAwKTsgLyogbXVzdCBiZSBsYXN0ICovCisgICAgfQorfQorCitzdGF0 aWMgdm9pZCBjZHJvbV9pbnNlcnRfYWRkZmRfY2IobGlieGxfX2VnYyAqZWdjLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19ldl9xbXAgKnFtcCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsaWJ4bF9fanNvbl9vYmplY3QgKnJlc3BvbnNl LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYykKK3sKKyAgICBFR0Nf R0M7CisgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzID0gQ09OVEFJTkVSX09GKHFt cCwgKmNpcywgcW1wKTsKKyAgICBsaWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxMOworICAg IGNvbnN0IGxpYnhsX19qc29uX29iamVjdCAqbzsKKyAgICBpbnQgZGV2aWQ7CisgICAgaW50IGZk c2V0OworCisgICAgLyogY29udmVuaWVuY2UgYWxpYXNlcyAqLworICAgIGxpYnhsX2RldmljZV9k aXNrICpkaXNrID0gY2lzLT5kaXNrOworCisgICAgY2xvc2UocW1wLT5wYXlsb2FkX2ZkKTsKKyAg ICBxbXAtPnBheWxvYWRfZmQgPSAtMTsKKworICAgIGlmIChyYykgZ290byBvdXQ7CisKKyAgICBv ID0gbGlieGxfX2pzb25fbWFwX2dldCgiZmRzZXQtaWQiLCByZXNwb25zZSwgSlNPTl9JTlRFR0VS KTsKKyAgICBpZiAoIW8pIHsKKyAgICAgICAgcmMgPSBFUlJPUl9GQUlMOworICAgICAgICBnb3Rv IG91dDsKICAgICB9CisgICAgZmRzZXQgPSBsaWJ4bF9fanNvbl9vYmplY3RfZ2V0X2ludGVnZXIo byk7CisKKyAgICBkZXZpZCA9IGxpYnhsX19kZXZpY2VfZGlza19kZXZfbnVtYmVyKGRpc2stPnZk ZXYsIE5VTEwsIE5VTEwpOworICAgIFFNUF9QQVJBTUVURVJTX1NQUklOVEYoJmFyZ3MsICJkZXZp Y2UiLCAiaWRlLSVpIiwgZGV2aWQpOworICAgIFFNUF9QQVJBTUVURVJTX1NQUklOVEYoJmFyZ3Ms ICJ0YXJnZXQiLCAiL2Rldi9mZHNldC8lZCIsIGZkc2V0KTsKKyAgICBsaWJ4bF9fcW1wX3BhcmFt X2FkZF9zdHJpbmcoZ2MsICZhcmdzLCAiYXJnIiwKKyAgICAgICAgbGlieGxfX3FlbXVfZGlza19m b3JtYXRfc3RyaW5nKGRpc2stPmZvcm1hdCkpOworICAgIHFtcC0+Y2FsbGJhY2sgPSBjZHJvbV9p bnNlcnRfaW5zZXJ0ZWQ7CisgICAgcmMgPSBsaWJ4bF9fZXZfcW1wX3NlbmQoZ2MsIHFtcCwgImNo YW5nZSIsIGFyZ3MpOworb3V0OgorICAgIGlmIChyYykKKyAgICAgICAgY2Ryb21faW5zZXJ0X2Rv bmUoZWdjLCBjaXMsIHJjKTsgLyogbXVzdCBiZSBsYXN0ICovCiB9CiAKIHN0YXRpYyB2b2lkIGNk cm9tX2luc2VydF9pbnNlcnRlZChsaWJ4bF9fZWdjICplZ2MsCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGlieGxfX2Nkcm9tX2luc2VydF9zdGF0ZSAqY2lzKQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19ldl9xbXAgKnFtcCwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsaWJ4bF9fanNvbl9vYmplY3QgKnJlc3BvbnNl LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCByYykKIHsKICAgICBFR0Nf R0M7Ci0gICAgaW50IHJjOworICAgIGxpYnhsX19jZHJvbV9pbnNlcnRfc3RhdGUgKmNpcyA9IENP TlRBSU5FUl9PRihxbXAsICpjaXMsIHFtcCk7CiAgICAgbGlieGxfX2RvbWFpbl91c2VyZGF0YV9s b2NrICpkYXRhX2xvY2sgPSBOVUxMOwogICAgIGxpYnhsX2RvbWFpbl9jb25maWcgZF9jb25maWc7 CiAgICAgZmxleGFycmF5X3QgKmluc2VydCA9IE5VTEw7CkBAIC04ODksNiArOTYyLDggQEAgc3Rh dGljIHZvaWQgY2Ryb21faW5zZXJ0X2luc2VydGVkKGxpYnhsX19lZ2MgKmVnYywKIAogICAgIGxp YnhsX2RvbWFpbl9jb25maWdfaW5pdCgmZF9jb25maWcpOwogCisgICAgaWYgKHJjKSBnb3RvIG91 dDsKKwogICAgIHJjID0gbGlieGxfX2RldmljZV9mcm9tX2Rpc2soZ2MsIGRvbWlkLCBkaXNrLCAm ZGV2aWNlKTsKICAgICBpZiAocmMpIGdvdG8gb3V0OwogICAgIGJlX3BhdGggPSBsaWJ4bF9fZGV2 aWNlX2JhY2tlbmRfcGF0aChnYywgJmRldmljZSk7CkBAIC05NTksNiArMTAzNCwxMCBAQCBzdGF0 aWMgdm9pZCBjZHJvbV9pbnNlcnRfZG9uZShsaWJ4bF9fZWdjICplZ2MsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBsaWJ4bF9fY2Ryb21faW5zZXJ0X3N0YXRlICpjaXMsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmMpCiB7CisgICAgRUdDX0dDOworCisgICAgbGli eGxfX2V2X3FtcF9kaXNwb3NlKGdjLCAmY2lzLT5xbXApOworICAgIGlmIChjaXMtPnFtcC5wYXls b2FkX2ZkID49IDApIGNsb3NlKGNpcy0+cW1wLnBheWxvYWRfZmQpOwogICAgIGlmIChjaXMtPnFt cF9sb2NrKSBsaWJ4bF9fdW5sb2NrX2RvbWFpbl9xbXAoY2lzLT5xbXBfbG9jayk7CiAgICAgbGli eGxfZGV2aWNlX2Rpc2tfZGlzcG9zZSgmY2lzLT5kaXNrX3NhdmVkKTsKICAgICBsaWJ4bF9fYW9f Y29tcGxldGUoZWdjLCBjaXMtPmFvLCByYyk7CmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4 bF9pbnRlcm5hbC5oIGIvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaAppbmRleCA5NDAxZjk4 OGU1Li4wMDQ5MzVlYTI1IDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9pbnRlcm5hbC5o CisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmgKQEAgLTE5ODQsNyArMTk4NCw2IEBA IF9oaWRkZW4gaW50IGxpYnhsX19xbXBfcmVzdW1lKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCk7 CiBfaGlkZGVuIGludCBsaWJ4bF9fcW1wX3Jlc3RvcmUobGlieGxfX2djICpnYywgaW50IGRvbWlk LCBjb25zdCBjaGFyICpmaWxlbmFtZSk7CiAvKiBTZXQgZGlydHkgYml0bWFwIGxvZ2dpbmcgc3Rh dHVzICovCiBfaGlkZGVuIGludCBsaWJ4bF9fcW1wX3NldF9nbG9iYWxfZGlydHlfbG9nKGxpYnhs X19nYyAqZ2MsIGludCBkb21pZCwgYm9vbCBlbmFibGUpOwotX2hpZGRlbiBpbnQgbGlieGxfX3Ft cF9pbnNlcnRfY2Ryb20obGlieGxfX2djICpnYywgaW50IGRvbWlkLCBjb25zdCBsaWJ4bF9kZXZp Y2VfZGlzayAqZGlzayk7CiAvKiBBZGQgYSB2aXJ0dWFsIENQVSAqLwogX2hpZGRlbiBpbnQgbGli eGxfX3FtcF9jcHVfYWRkKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwgaW50IGluZGV4KTsKIC8q IFF1ZXJ5IHRoZSBiaXRtYXAgb2YgQ1BVcyAqLwpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGli eGxfcW1wLmMgYi90b29scy9saWJ4bC9saWJ4bF9xbXAuYwppbmRleCBiNmE2OTFkOWZjLi4yNWQz NzY0ZjE4IDEwMDY0NAotLS0gYS90b29scy9saWJ4bC9saWJ4bF9xbXAuYworKysgYi90b29scy9s aWJ4bC9saWJ4bF9xbXAuYwpAQCAtMTA1OSwyNCArMTA1OSw2IEBAIGludCBsaWJ4bF9fcW1wX3Nl dF9nbG9iYWxfZGlydHlfbG9nKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwgYm9vbCBlbmFibGUp CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKIH0KIAotaW50IGxpYnhs X19xbXBfaW5zZXJ0X2Nkcm9tKGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaykKLXsKLSAgICBs aWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxMOwotICAgIGludCBkZXZfbnVtYmVyID0gbGli eGxfX2RldmljZV9kaXNrX2Rldl9udW1iZXIoZGlzay0+dmRldiwgTlVMTCwgTlVMTCk7Ci0KLSAg ICBRTVBfUEFSQU1FVEVSU19TUFJJTlRGKCZhcmdzLCAiZGV2aWNlIiwgImlkZS0laSIsIGRldl9u dW1iZXIpOwotCi0gICAgaWYgKGRpc2stPmZvcm1hdCA9PSBMSUJYTF9ESVNLX0ZPUk1BVF9FTVBU WSkgewotICAgICAgICByZXR1cm4gcW1wX3J1bl9jb21tYW5kKGdjLCBkb21pZCwgImVqZWN0Iiwg YXJncywgTlVMTCwgTlVMTCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgbGlieGxfX3FtcF9wYXJh bV9hZGRfc3RyaW5nKGdjLCAmYXJncywgInRhcmdldCIsIGRpc2stPnBkZXZfcGF0aCk7Ci0gICAg ICAgIGxpYnhsX19xbXBfcGFyYW1fYWRkX3N0cmluZyhnYywgJmFyZ3MsICJhcmciLAotICAgICAg ICAgICAgbGlieGxfX3FlbXVfZGlza19mb3JtYXRfc3RyaW5nKGRpc2stPmZvcm1hdCkpOwotICAg ICAgICByZXR1cm4gcW1wX3J1bl9jb21tYW5kKGdjLCBkb21pZCwgImNoYW5nZSIsIGFyZ3MsIE5V TEwsIE5VTEwpOwotICAgIH0KLX0KLQogaW50IGxpYnhsX19xbXBfY3B1X2FkZChsaWJ4bF9fZ2Mg KmdjLCBpbnQgZG9taWQsIGludCBpZHgpCiB7CiAgICAgbGlieGxfX2pzb25fb2JqZWN0ICphcmdz ID0gTlVMTDsKLS0gCkFudGhvbnkgUEVSQVJECgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlz dHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xp c3RpbmZvL3hlbi1kZXZlbA==