From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [PATCH 5/9] libxl_disk: Reorganise libxl_cdrom_insert Date: Tue, 9 Apr 2019 17:45:38 +0100 Message-ID: <20190409164542.30274-6-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 1hDtsc-00088U-GM for xen-devel@lists.xenproject.org; Tue, 09 Apr 2019 16:45:50 +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 VGhpcyBpcyBpbiBwcmVwYXJhdGlvbiBvZiBjdXR0aW5nIGxpYnhsX2Nkcm9tX2luc2VydCBpbnRv IHNldmVyYWwKZnVuY3Rpb25zIHRvIGFsbG93IGFzeW5jaHJvbm91cyBjYWxsYmFja3MuCgpObyBm dW5jdGlvbmFsIGNoYW5nZXMuCgpTaWduZWQtb2ZmLWJ5OiBBbnRob255IFBFUkFSRCA8YW50aG9u eS5wZXJhcmRAY2l0cml4LmNvbT4KLS0tCiB0b29scy9saWJ4bC9saWJ4bF9kaXNrLmMgfCA1OCAr KysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg MzIgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGli eGwvbGlieGxfZGlzay5jIGIvdG9vbHMvbGlieGwvbGlieGxfZGlzay5jCmluZGV4IDc5ZTMwZjhk NTIuLmY3YTFiNzVhZTEgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2Rpc2suYworKysg Yi90b29scy9saWJ4bC9saWJ4bF9kaXNrLmMKQEAgLTY2Niw3ICs2NjYsNyBAQCBpbnQgbGlieGxf Y2Ryb21faW5zZXJ0KGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxfZGV2aWNl X2Rpc2sgKmRpc2ssCiB7CiAgICAgQU9fQ1JFQVRFKGN0eCwgZG9taWQsIGFvX2hvdyk7CiAgICAg aW50IG51bSA9IDAsIGk7Ci0gICAgbGlieGxfZGV2aWNlX2Rpc2sgKmRpc2tzID0gTlVMTCwgZGlz a19zYXZlZCwgZGlza19lbXB0eTsKKyAgICBsaWJ4bF9kZXZpY2VfZGlzayAqZGlza3MgPSBOVUxM LCBkaXNrX3NhdmVkOwogICAgIGxpYnhsX2RvbWFpbl9jb25maWcgZF9jb25maWc7CiAgICAgaW50 IHJjLCBkbV92ZXI7CiAgICAgbGlieGxfX2RldmljZSBkZXZpY2U7CkBAIC02NzcsMTYgKzY3Nyw5 IEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlk LCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICBmbGV4YXJyYXlfdCAqaW5zZXJ0ID0gTlVM TCwgKmVtcHR5ID0gTlVMTDsKIAogICAgIGxpYnhsX2RvbWFpbl9jb25maWdfaW5pdCgmZF9jb25m aWcpOwotICAgIGxpYnhsX2RldmljZV9kaXNrX2luaXQoJmRpc2tfZW1wdHkpOwogICAgIGxpYnhs X2RldmljZV9kaXNrX2luaXQoJmRpc2tfc2F2ZWQpOwogICAgIGxpYnhsX2RldmljZV9kaXNrX2Nv cHkoY3R4LCAmZGlza19zYXZlZCwgZGlzayk7CiAKLSAgICBkaXNrX2VtcHR5LmZvcm1hdCA9IExJ QlhMX0RJU0tfRk9STUFUX0VNUFRZOwotICAgIGRpc2tfZW1wdHkudmRldiA9IGxpYnhsX19zdHJk dXAoTk9HQywgZGlzay0+dmRldik7Ci0gICAgZGlza19lbXB0eS5wZGV2X3BhdGggPSBsaWJ4bF9f c3RyZHVwKE5PR0MsICIiKTsKLSAgICBkaXNrX2VtcHR5LmlzX2Nkcm9tID0gMTsKLSAgICBsaWJ4 bF9fZGV2aWNlX2Rpc2tfc2V0ZGVmYXVsdChnYywgZG9taWQsICZkaXNrX2VtcHR5LCBmYWxzZSk7 Ci0KICAgICBsaWJ4bF9kb21haW5fdHlwZSB0eXBlID0gbGlieGxfX2RvbWFpbl90eXBlKGdjLCBk b21pZCk7CiAgICAgaWYgKHR5cGUgPT0gTElCWExfRE9NQUlOX1RZUEVfSU5WQUxJRCkgewogICAg ICAgICByYyA9IEVSUk9SX0ZBSUw7CkBAIC03NDAsMjMgKzczMyw2IEBAIGludCBsaWJ4bF9jZHJv bV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlz ayAqZGlzaywKICAgICBiZV9wYXRoID0gbGlieGxfX2RldmljZV9iYWNrZW5kX3BhdGgoZ2MsICZk ZXZpY2UpOwogICAgIGxpYnhsX3BhdGggPSBsaWJ4bF9fZGV2aWNlX2xpYnhsX3BhdGgoZ2MsICZk ZXZpY2UpOwogCi0gICAgaW5zZXJ0ID0gZmxleGFycmF5X21ha2UoZ2MsIDQsIDEpOwotCi0gICAg ZmxleGFycmF5X2FwcGVuZF9wYWlyKGluc2VydCwgInR5cGUiLAotICAgICAgICAgICAgICAgICAg ICAgICAgICBsaWJ4bF9fZGV2aWNlX2Rpc2tfc3RyaW5nX29mX2JhY2tlbmQoZGlzay0+YmFja2Vu ZCkpOwotICAgIGlmIChkaXNrLT5mb3JtYXQgIT0gTElCWExfRElTS19GT1JNQVRfRU1QVFkpCi0g ICAgICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihpbnNlcnQsICJwYXJhbXMiLAotICAgICAgICAg ICAgICAgICAgICAgICAgR0NTUFJJTlRGKCIlczolcyIsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgbGlieGxfX2RldmljZV9kaXNrX3N0cmluZ19vZl9mb3JtYXQoZGlzay0+Zm9ybWF0KSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNrLT5wZGV2X3BhdGgpKTsKLSAgICBlbHNl Ci0gICAgICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihpbnNlcnQsICJwYXJhbXMiLCAiIik7Ci0K LSAgICBlbXB0eSA9IGZsZXhhcnJheV9tYWtlKGdjLCA0LCAxKTsKLSAgICBmbGV4YXJyYXlfYXBw ZW5kX3BhaXIoZW1wdHksICJ0eXBlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxf X2RldmljZV9kaXNrX3N0cmluZ19vZl9iYWNrZW5kKGRpc2stPmJhY2tlbmQpKTsKLSAgICBmbGV4 YXJyYXlfYXBwZW5kX3BhaXIoZW1wdHksICJwYXJhbXMiLCAiIik7Ci0KICAgICAvKiBOb3RlOiBD VFggbG9jayBpcyBhbHJlYWR5IGhlbGQgYXQgdGhpcyBwb2ludCBzbyBsb2NrIGhpZXJhcmNoeQog ICAgICAqIGlzIG1haW50YWluZWQuCiAgICAgICovCkBAIC03NjksMTEgKzc0NSwyNyBAQCBpbnQg bGlieGxfY2Ryb21faW5zZXJ0KGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxf ZGV2aWNlX2Rpc2sgKmRpc2ssCiAgICAgLyogV2UgbmVlZCB0byBlamVjdCB0aGUgb3JpZ2luYWwg aW1hZ2UgZmlyc3QuIFRoaXMgaXMgaW1wbGVtZW50ZWQKICAgICAgKiBieSBpbnNlcnRpbmcgZW1w dHkgbWVkaWEuIEpTT04gaXMgbm90IHVwZGF0ZWQuCiAgICAgICovCisKICAgICBpZiAoZG1fdmVy ID09IExJQlhMX0RFVklDRV9NT0RFTF9WRVJTSU9OX1FFTVVfWEVOKSB7CisgICAgICAgIGxpYnhs X2RldmljZV9kaXNrIGRpc2tfZW1wdHk7CisKKyAgICAgICAgbGlieGxfZGV2aWNlX2Rpc2tfaW5p dCgmZGlza19lbXB0eSk7CisgICAgICAgIGRpc2tfZW1wdHkuZm9ybWF0ID0gTElCWExfRElTS19G T1JNQVRfRU1QVFk7CisgICAgICAgIGRpc2tfZW1wdHkudmRldiA9IGxpYnhsX19zdHJkdXAoTk9H QywgZGlzay0+dmRldik7CisgICAgICAgIGRpc2tfZW1wdHkucGRldl9wYXRoID0gbGlieGxfX3N0 cmR1cChOT0dDLCAiIik7CisgICAgICAgIGRpc2tfZW1wdHkuaXNfY2Ryb20gPSAxOworICAgICAg ICBsaWJ4bF9fZGV2aWNlX2Rpc2tfc2V0ZGVmYXVsdChnYywgZG9taWQsICZkaXNrX2VtcHR5LCBm YWxzZSk7CisKICAgICAgICAgcmMgPSBsaWJ4bF9fcW1wX2luc2VydF9jZHJvbShnYywgZG9taWQs ICZkaXNrX2VtcHR5KTsKKyAgICAgICAgbGlieGxfZGV2aWNlX2Rpc2tfZGlzcG9zZSgmZGlza19l bXB0eSk7CiAgICAgICAgIGlmIChyYykgZ290byBvdXQ7CiAgICAgfQogCisgICAgZW1wdHkgPSBm bGV4YXJyYXlfbWFrZShnYywgNCwgMSk7CisgICAgZmxleGFycmF5X2FwcGVuZF9wYWlyKGVtcHR5 LCAidHlwZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19kZXZpY2VfZGlza19z dHJpbmdfb2ZfYmFja2VuZChkaXNrLT5iYWNrZW5kKSk7CisgICAgZmxleGFycmF5X2FwcGVuZF9w YWlyKGVtcHR5LCAicGFyYW1zIiwgIiIpOworCiAgICAgZm9yICg7OykgewogICAgICAgICByYyA9 IGxpYnhsX194c190cmFuc2FjdGlvbl9zdGFydChnYywgJnQpOwogICAgICAgICBpZiAocmMpIGdv dG8gb3V0OwpAQCAtODAwLDYgKzc5MiwxMCBAQCBpbnQgbGlieGxfY2Ryb21faW5zZXJ0KGxpYnhs X2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxfZGV2aWNlX2Rpc2sgKmRpc2ssCiAgICAg ICAgIGlmIChyYyA8IDApIGdvdG8gb3V0OwogICAgIH0KIAorICAgIC8qCisgICAgICogTm93IHRo YXQgdGhlIGRyaXZlIGlzIGVtcHR5LCB3ZSBjYW4gaW5zZXJ0IHRoZSBuZXcgbWVkaWEuCisgICAg ICovCisKICAgICByYyA9IGxpYnhsX19nZXRfZG9tYWluX2NvbmZpZ3VyYXRpb24oZ2MsIGRvbWlk LCAmZF9jb25maWcpOwogICAgIGlmIChyYykgZ290byBvdXQ7CiAKQEAgLTgxMyw2ICs4MDksMTcg QEAgaW50IGxpYnhsX2Nkcm9tX2luc2VydChsaWJ4bF9jdHggKmN0eCwgdWludDMyX3QgZG9taWQs IGxpYnhsX2RldmljZV9kaXNrICpkaXNrLAogICAgICAgICBpZiAocmMpIGdvdG8gb3V0OwogICAg IH0KIAorICAgIGluc2VydCA9IGZsZXhhcnJheV9tYWtlKGdjLCA0LCAxKTsKKyAgICBmbGV4YXJy YXlfYXBwZW5kX3BhaXIoaW5zZXJ0LCAidHlwZSIsCisgICAgICAgICAgICAgICAgICAgICAgbGli eGxfX2RldmljZV9kaXNrX3N0cmluZ19vZl9iYWNrZW5kKGRpc2stPmJhY2tlbmQpKTsKKyAgICBp ZiAoZGlzay0+Zm9ybWF0ICE9IExJQlhMX0RJU0tfRk9STUFUX0VNUFRZKQorICAgICAgICBmbGV4 YXJyYXlfYXBwZW5kX3BhaXIoaW5zZXJ0LCAicGFyYW1zIiwKKyAgICAgICAgICAgICAgICAgICAg R0NTUFJJTlRGKCIlczolcyIsCisgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNl X2Rpc2tfc3RyaW5nX29mX2Zvcm1hdChkaXNrLT5mb3JtYXQpLAorICAgICAgICAgICAgICAgICAg ICAgICAgZGlzay0+cGRldl9wYXRoKSk7CisgICAgZWxzZQorICAgICAgICBmbGV4YXJyYXlfYXBw ZW5kX3BhaXIoaW5zZXJ0LCAicGFyYW1zIiwgIiIpOworCiAgICAgZm9yICg7OykgewogICAgICAg ICByYyA9IGxpYnhsX194c190cmFuc2FjdGlvbl9zdGFydChnYywgJnQpOwogICAgICAgICBpZiAo cmMpIGdvdG8gb3V0OwpAQCAtODUwLDcgKzg1Nyw2IEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQo bGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywK IG91dDoKICAgICBsaWJ4bF9feHNfdHJhbnNhY3Rpb25fYWJvcnQoZ2MsICZ0KTsKICAgICBsaWJ4 bF9fZGV2aWNlX2xpc3RfZnJlZSgmbGlieGxfX2Rpc2tfZGV2dHlwZSwgZGlza3MsIG51bSk7Ci0g ICAgbGlieGxfZGV2aWNlX2Rpc2tfZGlzcG9zZSgmZGlza19lbXB0eSk7CiAgICAgbGlieGxfZGV2 aWNlX2Rpc2tfZGlzcG9zZSgmZGlza19zYXZlZCk7CiAgICAgbGlieGxfZG9tYWluX2NvbmZpZ19k aXNwb3NlKCZkX2NvbmZpZyk7CiAKLS0gCkFudGhvbnkgUEVSQVJECgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApY ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9y Zy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA== 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 76BD6C10F0E for ; Tue, 9 Apr 2019 16:46:04 +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 511042133D for ; Tue, 9 Apr 2019 16:46:04 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 511042133D 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 1hDtsd-00088s-99; Tue, 09 Apr 2019 16:45:51 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hDtsc-00088U-GM for xen-devel@lists.xenproject.org; Tue, 09 Apr 2019 16:45:50 +0000 X-Inumbo-ID: edc8db84-5ae6-11e9-92d7-bc764e045a96 Received: from SMTP03.CITRIX.COM (unknown [162.221.156.55]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id edc8db84-5ae6-11e9-92d7-bc764e045a96; Tue, 09 Apr 2019 16:45:49 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.60,330,1549929600"; d="scan'208";a="83137612" From: Anthony PERARD To: Date: Tue, 9 Apr 2019 17:45:38 +0100 Message-ID: <20190409164542.30274-6-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 5/9] libxl_disk: Reorganise 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: <20190409164538.TGjD4vg9sNTmGNFwCO1dHpn5ZGEy0lUlXOcTQF3_jmY@z> VGhpcyBpcyBpbiBwcmVwYXJhdGlvbiBvZiBjdXR0aW5nIGxpYnhsX2Nkcm9tX2luc2VydCBpbnRv IHNldmVyYWwKZnVuY3Rpb25zIHRvIGFsbG93IGFzeW5jaHJvbm91cyBjYWxsYmFja3MuCgpObyBm dW5jdGlvbmFsIGNoYW5nZXMuCgpTaWduZWQtb2ZmLWJ5OiBBbnRob255IFBFUkFSRCA8YW50aG9u eS5wZXJhcmRAY2l0cml4LmNvbT4KLS0tCiB0b29scy9saWJ4bC9saWJ4bF9kaXNrLmMgfCA1OCAr KysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg MzIgaW5zZXJ0aW9ucygrKSwgMjYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGli eGwvbGlieGxfZGlzay5jIGIvdG9vbHMvbGlieGwvbGlieGxfZGlzay5jCmluZGV4IDc5ZTMwZjhk NTIuLmY3YTFiNzVhZTEgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsX2Rpc2suYworKysg Yi90b29scy9saWJ4bC9saWJ4bF9kaXNrLmMKQEAgLTY2Niw3ICs2NjYsNyBAQCBpbnQgbGlieGxf Y2Ryb21faW5zZXJ0KGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxfZGV2aWNl X2Rpc2sgKmRpc2ssCiB7CiAgICAgQU9fQ1JFQVRFKGN0eCwgZG9taWQsIGFvX2hvdyk7CiAgICAg aW50IG51bSA9IDAsIGk7Ci0gICAgbGlieGxfZGV2aWNlX2Rpc2sgKmRpc2tzID0gTlVMTCwgZGlz a19zYXZlZCwgZGlza19lbXB0eTsKKyAgICBsaWJ4bF9kZXZpY2VfZGlzayAqZGlza3MgPSBOVUxM LCBkaXNrX3NhdmVkOwogICAgIGxpYnhsX2RvbWFpbl9jb25maWcgZF9jb25maWc7CiAgICAgaW50 IHJjLCBkbV92ZXI7CiAgICAgbGlieGxfX2RldmljZSBkZXZpY2U7CkBAIC02NzcsMTYgKzY3Nyw5 IEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlk LCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywKICAgICBmbGV4YXJyYXlfdCAqaW5zZXJ0ID0gTlVM TCwgKmVtcHR5ID0gTlVMTDsKIAogICAgIGxpYnhsX2RvbWFpbl9jb25maWdfaW5pdCgmZF9jb25m aWcpOwotICAgIGxpYnhsX2RldmljZV9kaXNrX2luaXQoJmRpc2tfZW1wdHkpOwogICAgIGxpYnhs X2RldmljZV9kaXNrX2luaXQoJmRpc2tfc2F2ZWQpOwogICAgIGxpYnhsX2RldmljZV9kaXNrX2Nv cHkoY3R4LCAmZGlza19zYXZlZCwgZGlzayk7CiAKLSAgICBkaXNrX2VtcHR5LmZvcm1hdCA9IExJ QlhMX0RJU0tfRk9STUFUX0VNUFRZOwotICAgIGRpc2tfZW1wdHkudmRldiA9IGxpYnhsX19zdHJk dXAoTk9HQywgZGlzay0+dmRldik7Ci0gICAgZGlza19lbXB0eS5wZGV2X3BhdGggPSBsaWJ4bF9f c3RyZHVwKE5PR0MsICIiKTsKLSAgICBkaXNrX2VtcHR5LmlzX2Nkcm9tID0gMTsKLSAgICBsaWJ4 bF9fZGV2aWNlX2Rpc2tfc2V0ZGVmYXVsdChnYywgZG9taWQsICZkaXNrX2VtcHR5LCBmYWxzZSk7 Ci0KICAgICBsaWJ4bF9kb21haW5fdHlwZSB0eXBlID0gbGlieGxfX2RvbWFpbl90eXBlKGdjLCBk b21pZCk7CiAgICAgaWYgKHR5cGUgPT0gTElCWExfRE9NQUlOX1RZUEVfSU5WQUxJRCkgewogICAg ICAgICByYyA9IEVSUk9SX0ZBSUw7CkBAIC03NDAsMjMgKzczMyw2IEBAIGludCBsaWJ4bF9jZHJv bV9pbnNlcnQobGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlz ayAqZGlzaywKICAgICBiZV9wYXRoID0gbGlieGxfX2RldmljZV9iYWNrZW5kX3BhdGgoZ2MsICZk ZXZpY2UpOwogICAgIGxpYnhsX3BhdGggPSBsaWJ4bF9fZGV2aWNlX2xpYnhsX3BhdGgoZ2MsICZk ZXZpY2UpOwogCi0gICAgaW5zZXJ0ID0gZmxleGFycmF5X21ha2UoZ2MsIDQsIDEpOwotCi0gICAg ZmxleGFycmF5X2FwcGVuZF9wYWlyKGluc2VydCwgInR5cGUiLAotICAgICAgICAgICAgICAgICAg ICAgICAgICBsaWJ4bF9fZGV2aWNlX2Rpc2tfc3RyaW5nX29mX2JhY2tlbmQoZGlzay0+YmFja2Vu ZCkpOwotICAgIGlmIChkaXNrLT5mb3JtYXQgIT0gTElCWExfRElTS19GT1JNQVRfRU1QVFkpCi0g ICAgICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihpbnNlcnQsICJwYXJhbXMiLAotICAgICAgICAg ICAgICAgICAgICAgICAgR0NTUFJJTlRGKCIlczolcyIsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgbGlieGxfX2RldmljZV9kaXNrX3N0cmluZ19vZl9mb3JtYXQoZGlzay0+Zm9ybWF0KSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNrLT5wZGV2X3BhdGgpKTsKLSAgICBlbHNl Ci0gICAgICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihpbnNlcnQsICJwYXJhbXMiLCAiIik7Ci0K LSAgICBlbXB0eSA9IGZsZXhhcnJheV9tYWtlKGdjLCA0LCAxKTsKLSAgICBmbGV4YXJyYXlfYXBw ZW5kX3BhaXIoZW1wdHksICJ0eXBlIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxf X2RldmljZV9kaXNrX3N0cmluZ19vZl9iYWNrZW5kKGRpc2stPmJhY2tlbmQpKTsKLSAgICBmbGV4 YXJyYXlfYXBwZW5kX3BhaXIoZW1wdHksICJwYXJhbXMiLCAiIik7Ci0KICAgICAvKiBOb3RlOiBD VFggbG9jayBpcyBhbHJlYWR5IGhlbGQgYXQgdGhpcyBwb2ludCBzbyBsb2NrIGhpZXJhcmNoeQog ICAgICAqIGlzIG1haW50YWluZWQuCiAgICAgICovCkBAIC03NjksMTEgKzc0NSwyNyBAQCBpbnQg bGlieGxfY2Ryb21faW5zZXJ0KGxpYnhsX2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxf ZGV2aWNlX2Rpc2sgKmRpc2ssCiAgICAgLyogV2UgbmVlZCB0byBlamVjdCB0aGUgb3JpZ2luYWwg aW1hZ2UgZmlyc3QuIFRoaXMgaXMgaW1wbGVtZW50ZWQKICAgICAgKiBieSBpbnNlcnRpbmcgZW1w dHkgbWVkaWEuIEpTT04gaXMgbm90IHVwZGF0ZWQuCiAgICAgICovCisKICAgICBpZiAoZG1fdmVy ID09IExJQlhMX0RFVklDRV9NT0RFTF9WRVJTSU9OX1FFTVVfWEVOKSB7CisgICAgICAgIGxpYnhs X2RldmljZV9kaXNrIGRpc2tfZW1wdHk7CisKKyAgICAgICAgbGlieGxfZGV2aWNlX2Rpc2tfaW5p dCgmZGlza19lbXB0eSk7CisgICAgICAgIGRpc2tfZW1wdHkuZm9ybWF0ID0gTElCWExfRElTS19G T1JNQVRfRU1QVFk7CisgICAgICAgIGRpc2tfZW1wdHkudmRldiA9IGxpYnhsX19zdHJkdXAoTk9H QywgZGlzay0+dmRldik7CisgICAgICAgIGRpc2tfZW1wdHkucGRldl9wYXRoID0gbGlieGxfX3N0 cmR1cChOT0dDLCAiIik7CisgICAgICAgIGRpc2tfZW1wdHkuaXNfY2Ryb20gPSAxOworICAgICAg ICBsaWJ4bF9fZGV2aWNlX2Rpc2tfc2V0ZGVmYXVsdChnYywgZG9taWQsICZkaXNrX2VtcHR5LCBm YWxzZSk7CisKICAgICAgICAgcmMgPSBsaWJ4bF9fcW1wX2luc2VydF9jZHJvbShnYywgZG9taWQs ICZkaXNrX2VtcHR5KTsKKyAgICAgICAgbGlieGxfZGV2aWNlX2Rpc2tfZGlzcG9zZSgmZGlza19l bXB0eSk7CiAgICAgICAgIGlmIChyYykgZ290byBvdXQ7CiAgICAgfQogCisgICAgZW1wdHkgPSBm bGV4YXJyYXlfbWFrZShnYywgNCwgMSk7CisgICAgZmxleGFycmF5X2FwcGVuZF9wYWlyKGVtcHR5 LCAidHlwZSIsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19kZXZpY2VfZGlza19z dHJpbmdfb2ZfYmFja2VuZChkaXNrLT5iYWNrZW5kKSk7CisgICAgZmxleGFycmF5X2FwcGVuZF9w YWlyKGVtcHR5LCAicGFyYW1zIiwgIiIpOworCiAgICAgZm9yICg7OykgewogICAgICAgICByYyA9 IGxpYnhsX194c190cmFuc2FjdGlvbl9zdGFydChnYywgJnQpOwogICAgICAgICBpZiAocmMpIGdv dG8gb3V0OwpAQCAtODAwLDYgKzc5MiwxMCBAQCBpbnQgbGlieGxfY2Ryb21faW5zZXJ0KGxpYnhs X2N0eCAqY3R4LCB1aW50MzJfdCBkb21pZCwgbGlieGxfZGV2aWNlX2Rpc2sgKmRpc2ssCiAgICAg ICAgIGlmIChyYyA8IDApIGdvdG8gb3V0OwogICAgIH0KIAorICAgIC8qCisgICAgICogTm93IHRo YXQgdGhlIGRyaXZlIGlzIGVtcHR5LCB3ZSBjYW4gaW5zZXJ0IHRoZSBuZXcgbWVkaWEuCisgICAg ICovCisKICAgICByYyA9IGxpYnhsX19nZXRfZG9tYWluX2NvbmZpZ3VyYXRpb24oZ2MsIGRvbWlk LCAmZF9jb25maWcpOwogICAgIGlmIChyYykgZ290byBvdXQ7CiAKQEAgLTgxMyw2ICs4MDksMTcg QEAgaW50IGxpYnhsX2Nkcm9tX2luc2VydChsaWJ4bF9jdHggKmN0eCwgdWludDMyX3QgZG9taWQs IGxpYnhsX2RldmljZV9kaXNrICpkaXNrLAogICAgICAgICBpZiAocmMpIGdvdG8gb3V0OwogICAg IH0KIAorICAgIGluc2VydCA9IGZsZXhhcnJheV9tYWtlKGdjLCA0LCAxKTsKKyAgICBmbGV4YXJy YXlfYXBwZW5kX3BhaXIoaW5zZXJ0LCAidHlwZSIsCisgICAgICAgICAgICAgICAgICAgICAgbGli eGxfX2RldmljZV9kaXNrX3N0cmluZ19vZl9iYWNrZW5kKGRpc2stPmJhY2tlbmQpKTsKKyAgICBp ZiAoZGlzay0+Zm9ybWF0ICE9IExJQlhMX0RJU0tfRk9STUFUX0VNUFRZKQorICAgICAgICBmbGV4 YXJyYXlfYXBwZW5kX3BhaXIoaW5zZXJ0LCAicGFyYW1zIiwKKyAgICAgICAgICAgICAgICAgICAg R0NTUFJJTlRGKCIlczolcyIsCisgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNl X2Rpc2tfc3RyaW5nX29mX2Zvcm1hdChkaXNrLT5mb3JtYXQpLAorICAgICAgICAgICAgICAgICAg ICAgICAgZGlzay0+cGRldl9wYXRoKSk7CisgICAgZWxzZQorICAgICAgICBmbGV4YXJyYXlfYXBw ZW5kX3BhaXIoaW5zZXJ0LCAicGFyYW1zIiwgIiIpOworCiAgICAgZm9yICg7OykgewogICAgICAg ICByYyA9IGxpYnhsX194c190cmFuc2FjdGlvbl9zdGFydChnYywgJnQpOwogICAgICAgICBpZiAo cmMpIGdvdG8gb3V0OwpAQCAtODUwLDcgKzg1Nyw2IEBAIGludCBsaWJ4bF9jZHJvbV9pbnNlcnQo bGlieGxfY3R4ICpjdHgsIHVpbnQzMl90IGRvbWlkLCBsaWJ4bF9kZXZpY2VfZGlzayAqZGlzaywK IG91dDoKICAgICBsaWJ4bF9feHNfdHJhbnNhY3Rpb25fYWJvcnQoZ2MsICZ0KTsKICAgICBsaWJ4 bF9fZGV2aWNlX2xpc3RfZnJlZSgmbGlieGxfX2Rpc2tfZGV2dHlwZSwgZGlza3MsIG51bSk7Ci0g ICAgbGlieGxfZGV2aWNlX2Rpc2tfZGlzcG9zZSgmZGlza19lbXB0eSk7CiAgICAgbGlieGxfZGV2 aWNlX2Rpc2tfZGlzcG9zZSgmZGlza19zYXZlZCk7CiAgICAgbGlieGxfZG9tYWluX2NvbmZpZ19k aXNwb3NlKCZkX2NvbmZpZyk7CiAKLS0gCkFudGhvbnkgUEVSQVJECgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApY ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9y Zy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==