From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= Subject: [PATCH v2 04/35] libxl.c: switch to LOG*D use Date: Thu, 17 Nov 2016 18:35:46 +0100 Message-ID: <20161117173617.6697-5-cbosdonnat@suse.com> References: <20161117173617.6697-1-cbosdonnat@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161117173617.6697-1-cbosdonnat@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Wei Liu , Ian Jackson , Cedric Bosdonnat List-Id: xen-devel@lists.xenproject.org RnJvbTogQ2VkcmljIEJvc2Rvbm5hdCA8Y2Jvc2Rvbm5hdEBzdXNlLmNvbT4KClVzZSBMT0cqRCBm dW5jdGlvbnMgdG8gb3V0cHV0IHRoZSBkb21haW4gSUQgaW4gbG9ncyBhcyBtdWNoIGFzCnBvc3Np YmxlLiBUaGlzIHdpbGwgaGVscCBjb25zdW1lciBjb2RlIHNvcnRpbmcgdGhlIGxvZ3MgYnkKZG9t YWluLgoKVGhpcyBjb21taXQgaW5jbHVkZXMgYWxsIExPRyogdG8gTE9HKkQgY2hhbmdlcyB3aGVy ZSB0aGUgZG9tYWluCklEIGlzIG5vdCBqdXN0IGEgZG9taWQgdmFyaWFibGUuCgpXZSB3YW50IHRo ZSBkb21haW4gSUQgcHJvdmlkZWQgdG8gdGhlIExPRypEIGZ1bmN0aW9ucyB0byBiZSB0aGUKb25l IG9mIHRoZSBwdWJsaWNseSBrbm93biBkb21haW4sIG5vdCBhIHN0dWJkb20gb25lLgoKU2lnbmVk LW9mZi1ieTogQ8OpZHJpYyBCb3Nkb25uYXQgPGNib3Nkb25uYXRAc3VzZS5jb20+Ci0tLQogdG9v bHMvbGlieGwvbGlieGwuYyB8IDc5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgMzgg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGwvbGlieGwuYyBiL3Rvb2xzL2xp YnhsL2xpYnhsLmMKaW5kZXggMGVlN2Q5Zi4uNmZkNGZlMSAxMDA2NDQKLS0tIGEvdG9vbHMvbGli eGwvbGlieGwuYworKysgYi90b29scy9saWJ4bC9saWJ4bC5jCkBAIC0xMTI1LDcgKzExMjUsNyBA QCBzdGF0aWMgdm9pZCBkb21haW5fZGVhdGhfb2NjdXJyZWQobGlieGxfX2VnYyAqZWdjLAogICAg IEVHQ19HQzsKICAgICBsaWJ4bF9ldmdlbl9kb21haW5fZGVhdGggKmNvbnN0IGV2ZyA9ICpldmdf dXBkOwogCi0gICAgTE9HKERFQlVHLCAiJXMiLCB3aHkpOworICAgIExPR0QoREVCVUcsIGV2Zy0+ ZG9taWQsICIlcyIsIHdoeSk7CiAKICAgICBsaWJ4bF9ldmdlbl9kb21haW5fZGVhdGggKmV2Z19u ZXh0ID0gTElCWExfVEFJTFFfTkVYVChldmcsIGVudHJ5KTsKICAgICAqZXZnX3VwZCA9IGV2Z19u ZXh0OwpAQCAtMTE2NSwxMCArMTE2NSwxMCBAQCBzdGF0aWMgdm9pZCBkb21haW5fZGVhdGhfeHN3 YXRjaF9jYWxsYmFjayhsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19ldl94c3dhdGNoICp3LAogICAg ICAgICB9CiAgICAgICAgIGdvdGVuZCA9ICZkb21haW5pbmZvc1tyY107CiAKLSAgICAgICAgTE9H KERFQlVHLCAiW2V2Zz0lcDolIlBSSXUzMiJdIG5lbnRyaWVzPSVkIHJjPSVkICVsZC4uJWxkIiwK LSAgICAgICAgICAgIGV2ZywgZXZnLT5kb21pZCwgbmVudHJpZXMsIHJjLAotICAgICAgICAgICAg cmM+MCA/IChsb25nKWRvbWFpbmluZm9zWzBdLmRvbWFpbiA6IDAsCi0gICAgICAgICAgICByYz4w ID8gKGxvbmcpZG9tYWluaW5mb3NbcmMtMV0uZG9tYWluIDogMCk7CisgICAgICAgIExPR0QoREVC VUcsIGV2Zy0+ZG9taWQsICJbZXZnPSVwXSBuZW50cmllcz0lZCByYz0lZCAlbGQuLiVsZCIsCisg ICAgICAgICAgICAgZXZnLCBuZW50cmllcywgcmMsCisgICAgICAgICAgICAgcmM+MCA/IChsb25n KWRvbWFpbmluZm9zWzBdLmRvbWFpbiA6IDAsCisgICAgICAgICAgICAgcmM+MCA/IChsb25nKWRv bWFpbmluZm9zW3JjLTFdLmRvbWFpbiA6IDApOwogCiAgICAgICAgIGZvciAoOzspIHsKICAgICAg ICAgICAgIGlmICghZXZnKSB7CkBAIC0xMTc2LDEwICsxMTc2LDEwIEBAIHN0YXRpYyB2b2lkIGRv bWFpbl9kZWF0aF94c3dhdGNoX2NhbGxiYWNrKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2V2X3hz d2F0Y2ggKncsCiAgICAgICAgICAgICAgICAgZ290byBhbGxfcmVwb3J0ZWQ7CiAgICAgICAgICAg ICB9CiAKLSAgICAgICAgICAgIExPRyhERUJVRywgIltldmc9JXA6JSJQUkl1MzIiXSIKLSAgICAg ICAgICAgICAgICAiICAgZ290PWRvbWFpbmluZm9zWyVkXSBnb3QtPmRvbWFpbj0lbGQiLAotICAg ICAgICAgICAgICAgIGV2ZywgZXZnLT5kb21pZCwgKGludCkoZ290IC0gZG9tYWluaW5mb3MpLAot ICAgICAgICAgICAgICAgIGdvdCA8IGdvdGVuZCA/IChsb25nKWdvdC0+ZG9tYWluIDogLTFMKTsK KyAgICAgICAgICAgIExPR0QoREVCVUcsIGV2Zy0+ZG9taWQsICJbZXZnPSVwXSIKKyAgICAgICAg ICAgICAgICAgIiAgIGdvdD1kb21haW5pbmZvc1slZF0gZ290LT5kb21haW49JWxkIiwKKyAgICAg ICAgICAgICAgICAgZXZnLCAoaW50KShnb3QgLSBkb21haW5pbmZvcyksCisgICAgICAgICAgICAg ICAgIGdvdCA8IGdvdGVuZCA/IChsb25nKWdvdC0+ZG9tYWluIDogLTFMKTsKIAogICAgICAgICAg ICAgaWYgKCFyYykgewogICAgICAgICAgICAgICAgIGRvbWFpbl9kZWF0aF9vY2N1cnJlZChlZ2Ms ICZldmcsICJlbXB0eSBsaXN0Iik7CkBAIC0xMjA0LDggKzEyMDQsOCBAQCBzdGF0aWMgdm9pZCBk b21haW5fZGVhdGhfeHN3YXRjaF9jYWxsYmFjayhsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19ldl94 c3dhdGNoICp3LAogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBhc3NlcnQoZXZnLT5kb21p ZCA9PSBnb3QtPmRvbWFpbik7Ci0gICAgICAgICAgICBMT0coREVCVUcsICIgZXhpc3RzIHNodXRk b3duX3JlcG9ydGVkPSVkIiIgZG9taW5mLmZsYWdzPSV4IiwKLSAgICAgICAgICAgICAgICBldmct PnNodXRkb3duX3JlcG9ydGVkLCBnb3QtPmZsYWdzKTsKKyAgICAgICAgICAgIExPR0QoREVCVUcs IGV2Zy0+ZG9taWQsICJFeGlzdHMgc2h1dGRvd25fcmVwb3J0ZWQ9JWQiIiBkb21pbmYuZmxhZ3M9 JXgiLAorICAgICAgICAgICAgICAgICBldmctPnNodXRkb3duX3JlcG9ydGVkLCBnb3QtPmZsYWdz KTsKIAogICAgICAgICAgICAgaWYgKGdvdC0+ZmxhZ3MgJiBYRU5fRE9NSU5GX2R5aW5nKSB7CiAg ICAgICAgICAgICAgICAgZG9tYWluX2RlYXRoX29jY3VycmVkKGVnYywgJmV2ZywgImR5aW5nIik7 CkBAIC0xNDU1LDcgKzE0NTUsNyBAQCBzdGF0aWMgdm9pZCBkb21haW5fZGVzdHJveV9jYihsaWJ4 bF9fZWdjICplZ2MsIGxpYnhsX19kb21haW5fZGVzdHJveV9zdGF0ZSAqZGRzLAogICAgIFNUQVRF X0FPX0dDKGRkcy0+YW8pOwogCiAgICAgaWYgKHJjKQotICAgICAgICBMT0coRVJST1IsICJkZXN0 cnVjdGlvbiBvZiBkb21haW4gJXUgZmFpbGVkIiwgZGRzLT5kb21pZCk7CisgICAgICAgIExPR0Qo RVJST1IsIGRkcy0+ZG9taWQsICJEZXN0cnVjdGlvbiBvZiBkb21haW4gZmFpbGVkIik7CiAKICAg ICBsaWJ4bF9fYW9fY29tcGxldGUoZWdjLCBhbywgcmMpOwogfQpAQCAtMTUwNCw3ICsxNTA0LDgg QEAgc3RhdGljIHZvaWQgc3R1YmRvbV9kZXN0cm95X2NhbGxiYWNrKGxpYnhsX19lZ2MgKmVnYywK ICAgICBjb25zdCBjaGFyICpzYXZlZmlsZTsKIAogICAgIGlmIChyYykgewotICAgICAgICBMT0co RVJST1IsICJ1bmFibGUgdG8gZGVzdHJveSBzdHViZG9tIHdpdGggZG9taWQgJXUiLCBkaXMtPmRv bWlkKTsKKyAgICAgICAgTE9HRChFUlJPUiwgZGRzLT5kb21haW4uZG9taWQsICJVbmFibGUgdG8g ZGVzdHJveSBzdHViZG9tIHdpdGggZG9taWQgJXUiLAorICAgICAgICAgICAgIGRpcy0+ZG9taWQp OwogICAgICAgICBkZHMtPnJjID0gcmM7CiAgICAgfQogCkBAIC0xNTEyLDcgKzE1MTMsOCBAQCBz dGF0aWMgdm9pZCBzdHViZG9tX2Rlc3Ryb3lfY2FsbGJhY2sobGlieGxfX2VnYyAqZWdjLAogICAg IHNhdmVmaWxlID0gbGlieGxfX2RldmljZV9tb2RlbF9zYXZlZmlsZShnYywgZGlzLT5kb21pZCk7 CiAgICAgcmMgPSBsaWJ4bF9fcmVtb3ZlX2ZpbGUoZ2MsIHNhdmVmaWxlKTsKICAgICBpZiAocmMp IHsKLSAgICAgICAgTE9HKEVSUk9SLCAiZmFpbGVkIHRvIHJlbW92ZSBkZXZpY2UtbW9kZWwgc2F2 ZWZpbGUgJXMiLCBzYXZlZmlsZSk7CisgICAgICAgIExPR0QoRVJST1IsIGRkcy0+ZG9tYWluLmRv bWlkLCAiRmFpbGVkIHRvIHJlbW92ZSBkZXZpY2UtbW9kZWwgc2F2ZWZpbGUgJXMiLAorICAgICAg ICAgICAgIHNhdmVmaWxlKTsKICAgICB9CiAKICAgICBkZXN0cm95X2ZpbmlzaF9jaGVjayhlZ2Ms IGRkcyk7CkBAIC0xNTI2LDcgKzE1MjgsNyBAQCBzdGF0aWMgdm9pZCBkb21haW5fZGVzdHJveV9j YWxsYmFjayhsaWJ4bF9fZWdjICplZ2MsCiAgICAgbGlieGxfX2RvbWFpbl9kZXN0cm95X3N0YXRl ICpkZHMgPSBDT05UQUlORVJfT0YoZGlzLCAqZGRzLCBkb21haW4pOwogCiAgICAgaWYgKHJjKSB7 Ci0gICAgICAgIExPRyhFUlJPUiwgInVuYWJsZSB0byBkZXN0cm95IGd1ZXN0IHdpdGggZG9taWQg JXUiLCBkaXMtPmRvbWlkKTsKKyAgICAgICAgTE9HRChFUlJPUiwgZGlzLT5kb21pZCwgIlVuYWJs ZSB0byBkZXN0cm95IGd1ZXN0Iik7CiAgICAgICAgIGRkcy0+cmMgPSByYzsKICAgICB9CiAKQEAg LTE3MjMsOCArMTcyNSw4IEBAIHN0YXRpYyB2b2lkIGRvbWFpbl9kZXN0cm95X2RvbWlkX2NiKGxp YnhsX19lZ2MgKmVnYywKIAogICAgIGlmIChzdGF0dXMpIHsKICAgICAgICAgaWYgKFdJRkVYSVRF RChzdGF0dXMpICYmIFdFWElUU1RBVFVTKHN0YXR1cyk8MTI2KSB7Ci0gICAgICAgICAgICBMT0dF VihFUlJPUiwgV0VYSVRTVEFUVVMoc3RhdHVzKSwKLSAgICAgICAgICAgICAgICAgICJ4Y19kb21h aW5fZGVzdHJveSBmYWlsZWQgZm9yICUiUFJJdTMyIiIsIGRpcy0+ZG9taWQpOworICAgICAgICAg ICAgTE9HRVZEKEVSUk9SLCBXRVhJVFNUQVRVUyhzdGF0dXMpLCBkaXMtPmRvbWlkLAorICAgICAg ICAgICAgICAgICAgICJ4Y19kb21haW5fZGVzdHJveSBmYWlsZWQiKTsKICAgICAgICAgfSBlbHNl IHsKICAgICAgICAgICAgIGxpYnhsX3JlcG9ydF9jaGlsZF9leGl0c3RhdHVzKENUWCwgWFRMX0VS Uk9SLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImFzeW5jIGRv bWFpbiBkZXN0cm95IiwgcGlkLCBzdGF0dXMpOwpAQCAtMTk5OSw3ICsyMDAxLDcgQEAgdm9pZCBk ZXZpY2VfYWRkcm1fYW9jb21wbGV0ZShsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19hb19kZXZpY2Ug KmFvZGV2KQogCiAgICAgaWYgKGFvZGV2LT5yYykgewogICAgICAgICBpZiAoYW9kZXYtPmRldikg ewotICAgICAgICAgICAgTE9HKEVSUk9SLCAidW5hYmxlIHRvICVzICVzIHdpdGggaWQgJXUiLAor ICAgICAgICAgICAgTE9HRChFUlJPUiwgYW9kZXYtPmRldi0+ZG9taWQsICJVbmFibGUgdG8gJXMg JXMgd2l0aCBpZCAldSIsCiAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNlX2Fj dGlvbl90b19zdHJpbmcoYW9kZXYtPmFjdGlvbiksCiAgICAgICAgICAgICAgICAgICAgICAgICBs aWJ4bF9fZGV2aWNlX2tpbmRfdG9fc3RyaW5nKGFvZGV2LT5kZXYtPmtpbmQpLAogICAgICAgICAg ICAgICAgICAgICAgICAgYW9kZXYtPmRldi0+ZGV2aWQpOwpAQCAtMjkwNSw5ICsyOTA3LDkgQEAg Y2hhciAqbGlieGxfX2RldmljZV9kaXNrX2ZpbmRfbG9jYWxfcGF0aChsaWJ4bF9fZ2MgKmdjLAog ICAgICAgICBjaGFyICpiZV9wYXRoLCAqcGRwYXRoOwogICAgICAgICBpbnQgcmM7CiAKLSAgICAg ICAgTE9HKERFQlVHLAotICAgICAgICAgICAgIlJ1biBmcm9tIGEgc2NyaXB0OyBjaGVja2luZyBm b3IgcGh5c2ljYWwtZGV2aWNlLXBhdGggKHZkZXYgJXMpIiwKLSAgICAgICAgICAgIGRpc2stPnZk ZXYpOworICAgICAgICBMT0dEKERFQlVHLCBndWVzdF9kb21pZCwKKyAgICAgICAgICAgICAiUnVu IGZyb20gYSBzY3JpcHQ7IGNoZWNraW5nIGZvciBwaHlzaWNhbC1kZXZpY2UtcGF0aCAodmRldiAl cykiLAorICAgICAgICAgICAgIGRpc2stPnZkZXYpOwogCiAgICAgICAgIHJjID0gbGlieGxfX2Rl dmljZV9mcm9tX2Rpc2soZ2MsIGd1ZXN0X2RvbWlkLCBkaXNrLCAmZGV2aWNlKTsKICAgICAgICAg aWYgKHJjIDwgMCkKQEAgLTI5MTcsMTMgKzI5MTksMTMgQEAgY2hhciAqbGlieGxfX2RldmljZV9k aXNrX2ZpbmRfbG9jYWxfcGF0aChsaWJ4bF9fZ2MgKmdjLAogCiAgICAgICAgIHBkcGF0aCA9IGxp YnhsX19zcHJpbnRmKGdjLCAiJXMvcGh5c2ljYWwtZGV2aWNlLXBhdGgiLCBiZV9wYXRoKTsKIAot ICAgICAgICBMT0coREVCVUcsICJBdHRlbXB0aW5nIHRvIHJlYWQgbm9kZSAlcyIsIHBkcGF0aCk7 CisgICAgICAgIExPR0QoREVCVUcsIGd1ZXN0X2RvbWlkLCAiQXR0ZW1wdGluZyB0byByZWFkIG5v ZGUgJXMiLCBwZHBhdGgpOwogICAgICAgICBwYXRoID0gbGlieGxfX3hzX3JlYWQoZ2MsIFhCVF9O VUxMLCBwZHBhdGgpOwogCiAgICAgICAgIGlmIChwYXRoKQotICAgICAgICAgICAgTE9HKERFQlVH LCAiQWNjZXNzaW5nIGNvb2tlZCBibG9jayBkZXZpY2UgJXMiLCBwYXRoKTsKKyAgICAgICAgICAg IExPR0QoREVCVUcsIGd1ZXN0X2RvbWlkLCAiQWNjZXNzaW5nIGNvb2tlZCBibG9jayBkZXZpY2Ug JXMiLCBwYXRoKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgTE9HKERFQlVHLCAiTm8gcGh5 c2ljYWwtZGV2aWNlLXBhdGgsIGNhbid0IGFjY2VzcyBsb2NhbGx5LiIpOworICAgICAgICAgICAg TE9HRChERUJVRywgZ3Vlc3RfZG9taWQsICJObyBwaHlzaWNhbC1kZXZpY2UtcGF0aCwgY2FuJ3Qg YWNjZXNzIGxvY2FsbHkuIik7CiAKICAgICAgICAgZ290byBvdXQ7CiAgICAgfQpAQCAtMzA2NCwx MCArMzA2NiwxMCBAQCBzdGF0aWMgdm9pZCBsb2NhbF9kZXZpY2VfZGV0YWNoX2NiKGxpYnhsX19l Z2MgKmVnYywgbGlieGxfX2FvX2RldmljZSAqYW9kZXYpCiAgICAgaW50IHJjOwogCiAgICAgaWYg KGFvZGV2LT5yYykgewotICAgICAgICBMT0dFKEVSUk9SLCAidW5hYmxlIHRvICVzICVzIHdpdGgg aWQgJXUiLAotICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNlX2FjdGlvbl90b19zdHJp bmcoYW9kZXYtPmFjdGlvbiksCi0gICAgICAgICAgICAgICAgICAgIGxpYnhsX19kZXZpY2Vfa2lu ZF90b19zdHJpbmcoYW9kZXYtPmRldi0+a2luZCksCi0gICAgICAgICAgICAgICAgICAgIGFvZGV2 LT5kZXYtPmRldmlkKTsKKyAgICAgICAgTE9HRUQoRVJST1IsIGFvZGV2LT5kZXYtPmRvbWlkLCAi VW5hYmxlIHRvICVzICVzIHdpdGggaWQgJXUiLAorICAgICAgICAgICAgICAgICAgICAgbGlieGxf X2RldmljZV9hY3Rpb25fdG9fc3RyaW5nKGFvZGV2LT5hY3Rpb24pLAorICAgICAgICAgICAgICAg ICAgICAgbGlieGxfX2RldmljZV9raW5kX3RvX3N0cmluZyhhb2Rldi0+ZGV2LT5raW5kKSwKKyAg ICAgICAgICAgICAgICAgICAgIGFvZGV2LT5kZXYtPmRldmlkKTsKICAgICAgICAgZ290byBvdXQ7 CiAgICAgfQogCkBAIC0zNzI4LDggKzM3MzAsOCBAQCBzdGF0aWMgdm9pZCBxZGlza19zcGF3bl9v dXRjb21lKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2RtX3NwYXduX3N0YXRlICpkbXNzLAogewog ICAgIFNUQVRFX0FPX0dDKGRtc3MtPnNwYXduLmFvKTsKIAotICAgIExPRyhERUJVRywgInFkaXNr IGJhY2tlbmQgc3Bhd24gZm9yIGRvbWFpbiAldSAlcyIsIGRtc3MtPmd1ZXN0X2RvbWlkLAotICAg ICAgICAgICAgICAgcmMgPyAiZmFpbGVkIiA6ICJzdWNjZWVkIik7CisgICAgTE9HRChERUJVRywg ZG1zcy0+Z3Vlc3RfZG9taWQsICJxZGlzayBiYWNrZW5kIHNwYXduICVzIiwKKyAgICAgICAgICAg ICAgICByYyA/ICJmYWlsZWQiIDogInN1Y2NlZWQiKTsKIAogICAgIGxpYnhsX19uZXN0ZWRfYW9f ZnJlZShkbXNzLT5zcGF3bi5hbyk7CiB9CkBAIC0zODgyLDggKzM4ODQsNyBAQCBzdGF0aWMgdm9p ZCBiYWNrZW5kX3dhdGNoX2NhbGxiYWNrKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2V2X3hzd2F0 Y2ggKndhdGNoLAogICAgICAgICBkZ3Vlc3QtPmRvbWlkID0gZGV2LT5kb21pZDsKICAgICAgICAg TElCWExfU0xJU1RfSU5JVCgmZGd1ZXN0LT5kZXZpY2VzKTsKICAgICAgICAgTElCWExfU0xJU1Rf SU5TRVJUX0hFQUQoJmRkb21haW4tPmd1ZXN0cywgZGd1ZXN0LCBuZXh0KTsKLSAgICAgICAgTE9H KERFQlVHLCAiYWRkZWQgZG9tYWluICV1IHRvIHRoZSBsaXN0IG9mIGFjdGl2ZSBndWVzdHMiLAot ICAgICAgICAgICAgICAgICAgIGRndWVzdC0+ZG9taWQpOworICAgICAgICBMT0dEKERFQlVHLCBk Z3Vlc3QtPmRvbWlkLCAiQWRkZWQgZG9tYWluIHRvIHRoZSBsaXN0IG9mIGFjdGl2ZSBndWVzdHMi KTsKICAgICB9CiAgICAgZGRldiA9IHNlYXJjaF9mb3JfZGV2aWNlKGRndWVzdCwgZGV2KTsKICAg ICBpZiAoZGRldiA9PSBOVUxMICYmIHN0YXRlID09IFhlbmJ1c1N0YXRlQ2xvc2VkKSB7CkBAIC0z OTAwLDcgKzM5MDEsOCBAQCBzdGF0aWMgdm9pZCBiYWNrZW5kX3dhdGNoX2NhbGxiYWNrKGxpYnhs X19lZ2MgKmVnYywgbGlieGxfX2V2X3hzd2F0Y2ggKndhdGNoLAogICAgICAgICBkZGV2ID0gbGli eGxfX3phbGxvYyhOT0dDLCBzaXplb2YoKmRkZXYpKTsKICAgICAgICAgZGRldi0+ZGV2ID0gZGV2 OwogICAgICAgICBMSUJYTF9TTElTVF9JTlNFUlRfSEVBRCgmZGd1ZXN0LT5kZXZpY2VzLCBkZGV2 LCBuZXh0KTsKLSAgICAgICAgTE9HKERFQlVHLCAiYWRkZWQgZGV2aWNlICVzIHRvIHRoZSBsaXN0 IG9mIGFjdGl2ZSBkZXZpY2VzIiwgcGF0aCk7CisgICAgICAgIExPR0QoREVCVUcsIGRldi0+ZG9t aWQsICJBZGRlZCBkZXZpY2UgJXMgdG8gdGhlIGxpc3Qgb2YgYWN0aXZlIGRldmljZXMiLAorICAg ICAgICAgICAgIHBhdGgpOwogICAgICAgICByYyA9IGFkZF9kZXZpY2UoZWdjLCBuZXN0ZWRfYW8s IGRndWVzdCwgZGRldik7CiAgICAgICAgIGlmIChyYyA+IDApCiAgICAgICAgICAgICBmcmVlX2Fv ID0gdHJ1ZTsKQEAgLTM5MTQsNyArMzkxNiw4IEBAIHN0YXRpYyB2b2lkIGJhY2tlbmRfd2F0Y2hf Y2FsbGJhY2sobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfeHN3YXRjaCAqd2F0Y2gsCiAgICAg ICAgICAqLwogICAgICAgICBMSUJYTF9TTElTVF9SRU1PVkUoJmRndWVzdC0+ZGV2aWNlcywgZGRl diwgbGlieGxfX2Rkb21haW5fZGV2aWNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV4 dCk7Ci0gICAgICAgIExPRyhERUJVRywgInJlbW92ZWQgZGV2aWNlICVzIGZyb20gdGhlIGxpc3Qg b2YgYWN0aXZlIGRldmljZXMiLCBwYXRoKTsKKyAgICAgICAgTE9HRChERUJVRywgZGV2LT5kb21p ZCwgIlJlbW92ZWQgZGV2aWNlICVzIGZyb20gdGhlIGxpc3Qgb2YgYWN0aXZlIGRldmljZXMiLAor ICAgICAgICAgICAgIHBhdGgpOwogICAgICAgICByYyA9IHJlbW92ZV9kZXZpY2UoZWdjLCBuZXN0 ZWRfYW8sIGRndWVzdCwgZGRldik7CiAgICAgICAgIGlmIChyYyA+IDApCiAgICAgICAgICAgICBm cmVlX2FvID0gdHJ1ZTsKQEAgLTM5MjUsOCArMzkyOCw3IEBAIHN0YXRpYyB2b2lkIGJhY2tlbmRf d2F0Y2hfY2FsbGJhY2sobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfeHN3YXRjaCAqd2F0Y2gs CiAgICAgICAgIGlmIChudW1fZGV2cyA9PSAwKSB7CiAgICAgICAgICAgICBMSUJYTF9TTElTVF9S RU1PVkUoJmRkb21haW4tPmd1ZXN0cywgZGd1ZXN0LCBsaWJ4bF9fZGRvbWFpbl9ndWVzdCwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXh0KTsKLSAgICAgICAgICAgIExPRyhERUJV RywgInJlbW92ZWQgZG9tYWluICV1IGZyb20gdGhlIGxpc3Qgb2YgYWN0aXZlIGd1ZXN0cyIsCi0g ICAgICAgICAgICAgICAgICAgICAgIGRndWVzdC0+ZG9taWQpOworICAgICAgICAgICAgTE9HRChE RUJVRywgZGd1ZXN0LT5kb21pZCwgIlJlbW92ZWQgZG9tYWluIGZyb20gdGhlIGxpc3Qgb2YgYWN0 aXZlIGd1ZXN0cyIpOwogICAgICAgICAgICAgLyogQ2xlYXIgYW55IGxlZnRvdmVycyBpbiBsaWJ4 bC88ZG9taWQ+ICovCiAgICAgICAgICAgICBsaWJ4bF9feHNfcm1fY2hlY2tlZChnYywgWEJUX05V TEwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ1NQUklOVEYoImxpYnhsLyV1 IiwgZGd1ZXN0LT5kb21pZCkpOwpAQCAtNDExMSw3ICs0MTEzLDcgQEAgcmV0cnlfdHJhbnNhY3Rp b246CiAgICAgaWYgKHRhcmdldCkgewogICAgICAgICAqdGFyZ2V0X21lbWtiID0gc3RydG91bGwo dGFyZ2V0LCAmZW5kcHRyLCAxMCk7CiAgICAgICAgIGlmICgqZW5kcHRyICE9ICdcMCcpIHsKLSAg ICAgICAgICAgIExPR0UoRVJST1IsICJpbnZhbGlkIG1lbW9yeSB0YXJnZXQgJXMgZnJvbSAlc1xu IiwgdGFyZ2V0LAorICAgICAgICAgICAgTE9HRUQoRVJST1IsIDAsICJJbnZhbGlkIG1lbW9yeSB0 YXJnZXQgJXMgZnJvbSAlc1xuIiwgdGFyZ2V0LAogICAgICAgICAgICAgICAgICB0YXJnZXRfcGF0 aCk7CiAgICAgICAgICAgICByYyA9IEVSUk9SX0ZBSUw7CiAgICAgICAgICAgICBnb3RvIG91dDsK QEAgLTQxMjEsNyArNDEyMyw4IEBAIHJldHJ5X3RyYW5zYWN0aW9uOgogICAgIGlmIChzdGF0aWNt YXgpIHsKICAgICAgICAgKm1heF9tZW1rYiA9IHN0cnRvdWxsKHN0YXRpY21heCwgJmVuZHB0ciwg MTApOwogICAgICAgICBpZiAoKmVuZHB0ciAhPSAnXDAnKSB7Ci0gICAgICAgICAgICBMT0dFKEVS Uk9SLCAiaW52YWxpZCBtZW1vcnkgc3RhdGljLW1heCAlcyBmcm9tICVzXG4iLCBzdGF0aWNtYXgs CisgICAgICAgICAgICBMT0dFRChFUlJPUiwgMCwgIkludmFsaWQgbWVtb3J5IHN0YXRpYy1tYXgg JXMgZnJvbSAlc1xuIiwKKyAgICAgICAgICAgICAgICAgc3RhdGljbWF4LAogICAgICAgICAgICAg ICAgICBtYXhfcGF0aCk7CiAgICAgICAgICAgICByYyA9IEVSUk9SX0ZBSUw7CiAgICAgICAgICAg ICBnb3RvIG91dDsKLS0gCjIuMTAuMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=