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: Fri, 2 Dec 2016 16:08:10 +0100 Message-ID: <20161202150841.31227-5-cbosdonnat@suse.com> References: <20161202150841.31227-1-cbosdonnat@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20161202150841.31227-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: Ian Jackson , Wei Liu , Cedric Bosdonnat List-Id: xen-devel@lists.xenproject.org RnJvbTogQ2VkcmljIEJvc2Rvbm5hdCA8Y2Jvc2Rvbm5hdEBzdXNlLmNvbT4KClVzZSBMT0cqRCBm dW5jdGlvbnMgdG8gb3V0cHV0IHRoZSBkb21haW4gSUQgaW4gbG9ncyBhcyBtdWNoIGFzCnBvc3Np YmxlLiBUaGlzIHdpbGwgaGVscCBjb25zdW1lciBjb2RlIHNvcnRpbmcgdGhlIGxvZ3MgYnkKZG9t YWluLgoKVGhpcyBjb21taXQgaW5jbHVkZXMgYWxsIExPRyogdG8gTE9HKkQgY2hhbmdlcyB3aGVy ZSB0aGUgZG9tYWluCklEIGlzIG5vdCBqdXN0IGEgZG9taWQgdmFyaWFibGUuCgpXZSB3YW50IHRo ZSBkb21haW4gSUQgcHJvdmlkZWQgdG8gdGhlIExPRypEIGZ1bmN0aW9ucyB0byBiZSB0aGUKb25l IG9mIHRoZSBwdWJsaWNseSBrbm93biBkb21haW4sIG5vdCBhIHN0dWJkb20gb25lLgoKU2lnbmVk LW9mZi1ieTogQ8OpZHJpYyBCb3Nkb25uYXQgPGNib3Nkb25uYXRAc3VzZS5jb20+CkFja2VkLWJ5 OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgotLS0KIHRvb2xzL2xpYnhsL2xpYnhsLmMg fCA3OSArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogMSBmaWxlIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDM4IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsLmMgYi90b29scy9saWJ4bC9saWJ4bC5jCmluZGV4 IDBlZTdkOWYuLjZmZDRmZTEgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xpYnhsL2xpYnhsLmMKKysrIGIv dG9vbHMvbGlieGwvbGlieGwuYwpAQCAtMTEyNSw3ICsxMTI1LDcgQEAgc3RhdGljIHZvaWQgZG9t YWluX2RlYXRoX29jY3VycmVkKGxpYnhsX19lZ2MgKmVnYywKICAgICBFR0NfR0M7CiAgICAgbGli eGxfZXZnZW5fZG9tYWluX2RlYXRoICpjb25zdCBldmcgPSAqZXZnX3VwZDsKIAotICAgIExPRyhE RUJVRywgIiVzIiwgd2h5KTsKKyAgICBMT0dEKERFQlVHLCBldmctPmRvbWlkLCAiJXMiLCB3aHkp OwogCiAgICAgbGlieGxfZXZnZW5fZG9tYWluX2RlYXRoICpldmdfbmV4dCA9IExJQlhMX1RBSUxR X05FWFQoZXZnLCBlbnRyeSk7CiAgICAgKmV2Z191cGQgPSBldmdfbmV4dDsKQEAgLTExNjUsMTAg KzExNjUsMTAgQEAgc3RhdGljIHZvaWQgZG9tYWluX2RlYXRoX3hzd2F0Y2hfY2FsbGJhY2sobGli eGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfeHN3YXRjaCAqdywKICAgICAgICAgfQogICAgICAgICBn b3RlbmQgPSAmZG9tYWluaW5mb3NbcmNdOwogCi0gICAgICAgIExPRyhERUJVRywgIltldmc9JXA6 JSJQUkl1MzIiXSBuZW50cmllcz0lZCByYz0lZCAlbGQuLiVsZCIsCi0gICAgICAgICAgICBldmcs IGV2Zy0+ZG9taWQsIG5lbnRyaWVzLCByYywKLSAgICAgICAgICAgIHJjPjAgPyAobG9uZylkb21h aW5pbmZvc1swXS5kb21haW4gOiAwLAotICAgICAgICAgICAgcmM+MCA/IChsb25nKWRvbWFpbmlu Zm9zW3JjLTFdLmRvbWFpbiA6IDApOworICAgICAgICBMT0dEKERFQlVHLCBldmctPmRvbWlkLCAi W2V2Zz0lcF0gbmVudHJpZXM9JWQgcmM9JWQgJWxkLi4lbGQiLAorICAgICAgICAgICAgIGV2Zywg bmVudHJpZXMsIHJjLAorICAgICAgICAgICAgIHJjPjAgPyAobG9uZylkb21haW5pbmZvc1swXS5k b21haW4gOiAwLAorICAgICAgICAgICAgIHJjPjAgPyAobG9uZylkb21haW5pbmZvc1tyYy0xXS5k b21haW4gOiAwKTsKIAogICAgICAgICBmb3IgKDs7KSB7CiAgICAgICAgICAgICBpZiAoIWV2Zykg ewpAQCAtMTE3NiwxMCArMTE3NiwxMCBAQCBzdGF0aWMgdm9pZCBkb21haW5fZGVhdGhfeHN3YXRj aF9jYWxsYmFjayhsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19ldl94c3dhdGNoICp3LAogICAgICAg ICAgICAgICAgIGdvdG8gYWxsX3JlcG9ydGVkOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAg ICBMT0coREVCVUcsICJbZXZnPSVwOiUiUFJJdTMyIl0iCi0gICAgICAgICAgICAgICAgIiAgIGdv dD1kb21haW5pbmZvc1slZF0gZ290LT5kb21haW49JWxkIiwKLSAgICAgICAgICAgICAgICBldmcs IGV2Zy0+ZG9taWQsIChpbnQpKGdvdCAtIGRvbWFpbmluZm9zKSwKLSAgICAgICAgICAgICAgICBn b3QgPCBnb3RlbmQgPyAobG9uZylnb3QtPmRvbWFpbiA6IC0xTCk7CisgICAgICAgICAgICBMT0dE KERFQlVHLCBldmctPmRvbWlkLCAiW2V2Zz0lcF0iCisgICAgICAgICAgICAgICAgICIgICBnb3Q9 ZG9tYWluaW5mb3NbJWRdIGdvdC0+ZG9tYWluPSVsZCIsCisgICAgICAgICAgICAgICAgIGV2Zywg KGludCkoZ290IC0gZG9tYWluaW5mb3MpLAorICAgICAgICAgICAgICAgICBnb3QgPCBnb3RlbmQg PyAobG9uZylnb3QtPmRvbWFpbiA6IC0xTCk7CiAKICAgICAgICAgICAgIGlmICghcmMpIHsKICAg ICAgICAgICAgICAgICBkb21haW5fZGVhdGhfb2NjdXJyZWQoZWdjLCAmZXZnLCAiZW1wdHkgbGlz dCIpOwpAQCAtMTIwNCw4ICsxMjA0LDggQEAgc3RhdGljIHZvaWQgZG9tYWluX2RlYXRoX3hzd2F0 Y2hfY2FsbGJhY2sobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fZXZfeHN3YXRjaCAqdywKICAgICAg ICAgICAgIH0KIAogICAgICAgICAgICAgYXNzZXJ0KGV2Zy0+ZG9taWQgPT0gZ290LT5kb21haW4p OwotICAgICAgICAgICAgTE9HKERFQlVHLCAiIGV4aXN0cyBzaHV0ZG93bl9yZXBvcnRlZD0lZCIi IGRvbWluZi5mbGFncz0leCIsCi0gICAgICAgICAgICAgICAgZXZnLT5zaHV0ZG93bl9yZXBvcnRl ZCwgZ290LT5mbGFncyk7CisgICAgICAgICAgICBMT0dEKERFQlVHLCBldmctPmRvbWlkLCAiRXhp c3RzIHNodXRkb3duX3JlcG9ydGVkPSVkIiIgZG9taW5mLmZsYWdzPSV4IiwKKyAgICAgICAgICAg ICAgICAgZXZnLT5zaHV0ZG93bl9yZXBvcnRlZCwgZ290LT5mbGFncyk7CiAKICAgICAgICAgICAg IGlmIChnb3QtPmZsYWdzICYgWEVOX0RPTUlORl9keWluZykgewogICAgICAgICAgICAgICAgIGRv bWFpbl9kZWF0aF9vY2N1cnJlZChlZ2MsICZldmcsICJkeWluZyIpOwpAQCAtMTQ1NSw3ICsxNDU1 LDcgQEAgc3RhdGljIHZvaWQgZG9tYWluX2Rlc3Ryb3lfY2IobGlieGxfX2VnYyAqZWdjLCBsaWJ4 bF9fZG9tYWluX2Rlc3Ryb3lfc3RhdGUgKmRkcywKICAgICBTVEFURV9BT19HQyhkZHMtPmFvKTsK IAogICAgIGlmIChyYykKLSAgICAgICAgTE9HKEVSUk9SLCAiZGVzdHJ1Y3Rpb24gb2YgZG9tYWlu ICV1IGZhaWxlZCIsIGRkcy0+ZG9taWQpOworICAgICAgICBMT0dEKEVSUk9SLCBkZHMtPmRvbWlk LCAiRGVzdHJ1Y3Rpb24gb2YgZG9tYWluIGZhaWxlZCIpOwogCiAgICAgbGlieGxfX2FvX2NvbXBs ZXRlKGVnYywgYW8sIHJjKTsKIH0KQEAgLTE1MDQsNyArMTUwNCw4IEBAIHN0YXRpYyB2b2lkIHN0 dWJkb21fZGVzdHJveV9jYWxsYmFjayhsaWJ4bF9fZWdjICplZ2MsCiAgICAgY29uc3QgY2hhciAq c2F2ZWZpbGU7CiAKICAgICBpZiAocmMpIHsKLSAgICAgICAgTE9HKEVSUk9SLCAidW5hYmxlIHRv IGRlc3Ryb3kgc3R1YmRvbSB3aXRoIGRvbWlkICV1IiwgZGlzLT5kb21pZCk7CisgICAgICAgIExP R0QoRVJST1IsIGRkcy0+ZG9tYWluLmRvbWlkLCAiVW5hYmxlIHRvIGRlc3Ryb3kgc3R1YmRvbSB3 aXRoIGRvbWlkICV1IiwKKyAgICAgICAgICAgICBkaXMtPmRvbWlkKTsKICAgICAgICAgZGRzLT5y YyA9IHJjOwogICAgIH0KIApAQCAtMTUxMiw3ICsxNTEzLDggQEAgc3RhdGljIHZvaWQgc3R1YmRv bV9kZXN0cm95X2NhbGxiYWNrKGxpYnhsX19lZ2MgKmVnYywKICAgICBzYXZlZmlsZSA9IGxpYnhs X19kZXZpY2VfbW9kZWxfc2F2ZWZpbGUoZ2MsIGRpcy0+ZG9taWQpOwogICAgIHJjID0gbGlieGxf X3JlbW92ZV9maWxlKGdjLCBzYXZlZmlsZSk7CiAgICAgaWYgKHJjKSB7Ci0gICAgICAgIExPRyhF UlJPUiwgImZhaWxlZCB0byByZW1vdmUgZGV2aWNlLW1vZGVsIHNhdmVmaWxlICVzIiwgc2F2ZWZp bGUpOworICAgICAgICBMT0dEKEVSUk9SLCBkZHMtPmRvbWFpbi5kb21pZCwgIkZhaWxlZCB0byBy ZW1vdmUgZGV2aWNlLW1vZGVsIHNhdmVmaWxlICVzIiwKKyAgICAgICAgICAgICBzYXZlZmlsZSk7 CiAgICAgfQogCiAgICAgZGVzdHJveV9maW5pc2hfY2hlY2soZWdjLCBkZHMpOwpAQCAtMTUyNiw3 ICsxNTI4LDcgQEAgc3RhdGljIHZvaWQgZG9tYWluX2Rlc3Ryb3lfY2FsbGJhY2sobGlieGxfX2Vn YyAqZWdjLAogICAgIGxpYnhsX19kb21haW5fZGVzdHJveV9zdGF0ZSAqZGRzID0gQ09OVEFJTkVS X09GKGRpcywgKmRkcywgZG9tYWluKTsKIAogICAgIGlmIChyYykgewotICAgICAgICBMT0coRVJS T1IsICJ1bmFibGUgdG8gZGVzdHJveSBndWVzdCB3aXRoIGRvbWlkICV1IiwgZGlzLT5kb21pZCk7 CisgICAgICAgIExPR0QoRVJST1IsIGRpcy0+ZG9taWQsICJVbmFibGUgdG8gZGVzdHJveSBndWVz dCIpOwogICAgICAgICBkZHMtPnJjID0gcmM7CiAgICAgfQogCkBAIC0xNzIzLDggKzE3MjUsOCBA QCBzdGF0aWMgdm9pZCBkb21haW5fZGVzdHJveV9kb21pZF9jYihsaWJ4bF9fZWdjICplZ2MsCiAK ICAgICBpZiAoc3RhdHVzKSB7CiAgICAgICAgIGlmIChXSUZFWElURUQoc3RhdHVzKSAmJiBXRVhJ VFNUQVRVUyhzdGF0dXMpPDEyNikgewotICAgICAgICAgICAgTE9HRVYoRVJST1IsIFdFWElUU1RB VFVTKHN0YXR1cyksCi0gICAgICAgICAgICAgICAgICAieGNfZG9tYWluX2Rlc3Ryb3kgZmFpbGVk IGZvciAlIlBSSXUzMiIiLCBkaXMtPmRvbWlkKTsKKyAgICAgICAgICAgIExPR0VWRChFUlJPUiwg V0VYSVRTVEFUVVMoc3RhdHVzKSwgZGlzLT5kb21pZCwKKyAgICAgICAgICAgICAgICAgICAieGNf ZG9tYWluX2Rlc3Ryb3kgZmFpbGVkIik7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBs aWJ4bF9yZXBvcnRfY2hpbGRfZXhpdHN0YXR1cyhDVFgsIFhUTF9FUlJPUiwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhc3luYyBkb21haW4gZGVzdHJveSIsIHBp ZCwgc3RhdHVzKTsKQEAgLTE5OTksNyArMjAwMSw3IEBAIHZvaWQgZGV2aWNlX2FkZHJtX2FvY29t cGxldGUobGlieGxfX2VnYyAqZWdjLCBsaWJ4bF9fYW9fZGV2aWNlICphb2RldikKIAogICAgIGlm IChhb2Rldi0+cmMpIHsKICAgICAgICAgaWYgKGFvZGV2LT5kZXYpIHsKLSAgICAgICAgICAgIExP RyhFUlJPUiwgInVuYWJsZSB0byAlcyAlcyB3aXRoIGlkICV1IiwKKyAgICAgICAgICAgIExPR0Qo RVJST1IsIGFvZGV2LT5kZXYtPmRvbWlkLCAiVW5hYmxlIHRvICVzICVzIHdpdGggaWQgJXUiLAog ICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2RldmljZV9hY3Rpb25fdG9fc3RyaW5nKGFv ZGV2LT5hY3Rpb24pLAogICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2RldmljZV9raW5k X3RvX3N0cmluZyhhb2Rldi0+ZGV2LT5raW5kKSwKICAgICAgICAgICAgICAgICAgICAgICAgIGFv ZGV2LT5kZXYtPmRldmlkKTsKQEAgLTI5MDUsOSArMjkwNyw5IEBAIGNoYXIgKmxpYnhsX19kZXZp Y2VfZGlza19maW5kX2xvY2FsX3BhdGgobGlieGxfX2djICpnYywKICAgICAgICAgY2hhciAqYmVf cGF0aCwgKnBkcGF0aDsKICAgICAgICAgaW50IHJjOwogCi0gICAgICAgIExPRyhERUJVRywKLSAg ICAgICAgICAgICJSdW4gZnJvbSBhIHNjcmlwdDsgY2hlY2tpbmcgZm9yIHBoeXNpY2FsLWRldmlj ZS1wYXRoICh2ZGV2ICVzKSIsCi0gICAgICAgICAgICBkaXNrLT52ZGV2KTsKKyAgICAgICAgTE9H RChERUJVRywgZ3Vlc3RfZG9taWQsCisgICAgICAgICAgICAgIlJ1biBmcm9tIGEgc2NyaXB0OyBj aGVja2luZyBmb3IgcGh5c2ljYWwtZGV2aWNlLXBhdGggKHZkZXYgJXMpIiwKKyAgICAgICAgICAg ICBkaXNrLT52ZGV2KTsKIAogICAgICAgICByYyA9IGxpYnhsX19kZXZpY2VfZnJvbV9kaXNrKGdj LCBndWVzdF9kb21pZCwgZGlzaywgJmRldmljZSk7CiAgICAgICAgIGlmIChyYyA8IDApCkBAIC0y OTE3LDEzICsyOTE5LDEzIEBAIGNoYXIgKmxpYnhsX19kZXZpY2VfZGlza19maW5kX2xvY2FsX3Bh dGgobGlieGxfX2djICpnYywKIAogICAgICAgICBwZHBhdGggPSBsaWJ4bF9fc3ByaW50ZihnYywg IiVzL3BoeXNpY2FsLWRldmljZS1wYXRoIiwgYmVfcGF0aCk7CiAKLSAgICAgICAgTE9HKERFQlVH LCAiQXR0ZW1wdGluZyB0byByZWFkIG5vZGUgJXMiLCBwZHBhdGgpOworICAgICAgICBMT0dEKERF QlVHLCBndWVzdF9kb21pZCwgIkF0dGVtcHRpbmcgdG8gcmVhZCBub2RlICVzIiwgcGRwYXRoKTsK ICAgICAgICAgcGF0aCA9IGxpYnhsX194c19yZWFkKGdjLCBYQlRfTlVMTCwgcGRwYXRoKTsKIAog ICAgICAgICBpZiAocGF0aCkKLSAgICAgICAgICAgIExPRyhERUJVRywgIkFjY2Vzc2luZyBjb29r ZWQgYmxvY2sgZGV2aWNlICVzIiwgcGF0aCk7CisgICAgICAgICAgICBMT0dEKERFQlVHLCBndWVz dF9kb21pZCwgIkFjY2Vzc2luZyBjb29rZWQgYmxvY2sgZGV2aWNlICVzIiwgcGF0aCk7CiAgICAg ICAgIGVsc2UKLSAgICAgICAgICAgIExPRyhERUJVRywgIk5vIHBoeXNpY2FsLWRldmljZS1wYXRo LCBjYW4ndCBhY2Nlc3MgbG9jYWxseS4iKTsKKyAgICAgICAgICAgIExPR0QoREVCVUcsIGd1ZXN0 X2RvbWlkLCAiTm8gcGh5c2ljYWwtZGV2aWNlLXBhdGgsIGNhbid0IGFjY2VzcyBsb2NhbGx5LiIp OwogCiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KQEAgLTMwNjQsMTAgKzMwNjYsMTAgQEAgc3Rh dGljIHZvaWQgbG9jYWxfZGV2aWNlX2RldGFjaF9jYihsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19h b19kZXZpY2UgKmFvZGV2KQogICAgIGludCByYzsKIAogICAgIGlmIChhb2Rldi0+cmMpIHsKLSAg ICAgICAgTE9HRShFUlJPUiwgInVuYWJsZSB0byAlcyAlcyB3aXRoIGlkICV1IiwKLSAgICAgICAg ICAgICAgICAgICAgbGlieGxfX2RldmljZV9hY3Rpb25fdG9fc3RyaW5nKGFvZGV2LT5hY3Rpb24p LAotICAgICAgICAgICAgICAgICAgICBsaWJ4bF9fZGV2aWNlX2tpbmRfdG9fc3RyaW5nKGFvZGV2 LT5kZXYtPmtpbmQpLAotICAgICAgICAgICAgICAgICAgICBhb2Rldi0+ZGV2LT5kZXZpZCk7Cisg ICAgICAgIExPR0VEKEVSUk9SLCBhb2Rldi0+ZGV2LT5kb21pZCwgIlVuYWJsZSB0byAlcyAlcyB3 aXRoIGlkICV1IiwKKyAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19kZXZpY2VfYWN0aW9uX3Rv X3N0cmluZyhhb2Rldi0+YWN0aW9uKSwKKyAgICAgICAgICAgICAgICAgICAgIGxpYnhsX19kZXZp Y2Vfa2luZF90b19zdHJpbmcoYW9kZXYtPmRldi0+a2luZCksCisgICAgICAgICAgICAgICAgICAg ICBhb2Rldi0+ZGV2LT5kZXZpZCk7CiAgICAgICAgIGdvdG8gb3V0OwogICAgIH0KIApAQCAtMzcy OCw4ICszNzMwLDggQEAgc3RhdGljIHZvaWQgcWRpc2tfc3Bhd25fb3V0Y29tZShsaWJ4bF9fZWdj ICplZ2MsIGxpYnhsX19kbV9zcGF3bl9zdGF0ZSAqZG1zcywKIHsKICAgICBTVEFURV9BT19HQyhk bXNzLT5zcGF3bi5hbyk7CiAKLSAgICBMT0coREVCVUcsICJxZGlzayBiYWNrZW5kIHNwYXduIGZv ciBkb21haW4gJXUgJXMiLCBkbXNzLT5ndWVzdF9kb21pZCwKLSAgICAgICAgICAgICAgIHJjID8g ImZhaWxlZCIgOiAic3VjY2VlZCIpOworICAgIExPR0QoREVCVUcsIGRtc3MtPmd1ZXN0X2RvbWlk LCAicWRpc2sgYmFja2VuZCBzcGF3biAlcyIsCisgICAgICAgICAgICAgICAgcmMgPyAiZmFpbGVk IiA6ICJzdWNjZWVkIik7CiAKICAgICBsaWJ4bF9fbmVzdGVkX2FvX2ZyZWUoZG1zcy0+c3Bhd24u YW8pOwogfQpAQCAtMzg4Miw4ICszODg0LDcgQEAgc3RhdGljIHZvaWQgYmFja2VuZF93YXRjaF9j YWxsYmFjayhsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19ldl94c3dhdGNoICp3YXRjaCwKICAgICAg ICAgZGd1ZXN0LT5kb21pZCA9IGRldi0+ZG9taWQ7CiAgICAgICAgIExJQlhMX1NMSVNUX0lOSVQo JmRndWVzdC0+ZGV2aWNlcyk7CiAgICAgICAgIExJQlhMX1NMSVNUX0lOU0VSVF9IRUFEKCZkZG9t YWluLT5ndWVzdHMsIGRndWVzdCwgbmV4dCk7Ci0gICAgICAgIExPRyhERUJVRywgImFkZGVkIGRv bWFpbiAldSB0byB0aGUgbGlzdCBvZiBhY3RpdmUgZ3Vlc3RzIiwKLSAgICAgICAgICAgICAgICAg ICBkZ3Vlc3QtPmRvbWlkKTsKKyAgICAgICAgTE9HRChERUJVRywgZGd1ZXN0LT5kb21pZCwgIkFk ZGVkIGRvbWFpbiB0byB0aGUgbGlzdCBvZiBhY3RpdmUgZ3Vlc3RzIik7CiAgICAgfQogICAgIGRk ZXYgPSBzZWFyY2hfZm9yX2RldmljZShkZ3Vlc3QsIGRldik7CiAgICAgaWYgKGRkZXYgPT0gTlVM TCAmJiBzdGF0ZSA9PSBYZW5idXNTdGF0ZUNsb3NlZCkgewpAQCAtMzkwMCw3ICszOTAxLDggQEAg c3RhdGljIHZvaWQgYmFja2VuZF93YXRjaF9jYWxsYmFjayhsaWJ4bF9fZWdjICplZ2MsIGxpYnhs X19ldl94c3dhdGNoICp3YXRjaCwKICAgICAgICAgZGRldiA9IGxpYnhsX196YWxsb2MoTk9HQywg c2l6ZW9mKCpkZGV2KSk7CiAgICAgICAgIGRkZXYtPmRldiA9IGRldjsKICAgICAgICAgTElCWExf U0xJU1RfSU5TRVJUX0hFQUQoJmRndWVzdC0+ZGV2aWNlcywgZGRldiwgbmV4dCk7Ci0gICAgICAg IExPRyhERUJVRywgImFkZGVkIGRldmljZSAlcyB0byB0aGUgbGlzdCBvZiBhY3RpdmUgZGV2aWNl cyIsIHBhdGgpOworICAgICAgICBMT0dEKERFQlVHLCBkZXYtPmRvbWlkLCAiQWRkZWQgZGV2aWNl ICVzIHRvIHRoZSBsaXN0IG9mIGFjdGl2ZSBkZXZpY2VzIiwKKyAgICAgICAgICAgICBwYXRoKTsK ICAgICAgICAgcmMgPSBhZGRfZGV2aWNlKGVnYywgbmVzdGVkX2FvLCBkZ3Vlc3QsIGRkZXYpOwog ICAgICAgICBpZiAocmMgPiAwKQogICAgICAgICAgICAgZnJlZV9hbyA9IHRydWU7CkBAIC0zOTE0 LDcgKzM5MTYsOCBAQCBzdGF0aWMgdm9pZCBiYWNrZW5kX3dhdGNoX2NhbGxiYWNrKGxpYnhsX19l Z2MgKmVnYywgbGlieGxfX2V2X3hzd2F0Y2ggKndhdGNoLAogICAgICAgICAgKi8KICAgICAgICAg TElCWExfU0xJU1RfUkVNT1ZFKCZkZ3Vlc3QtPmRldmljZXMsIGRkZXYsIGxpYnhsX19kZG9tYWlu X2RldmljZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5leHQpOwotICAgICAgICBMT0co REVCVUcsICJyZW1vdmVkIGRldmljZSAlcyBmcm9tIHRoZSBsaXN0IG9mIGFjdGl2ZSBkZXZpY2Vz IiwgcGF0aCk7CisgICAgICAgIExPR0QoREVCVUcsIGRldi0+ZG9taWQsICJSZW1vdmVkIGRldmlj ZSAlcyBmcm9tIHRoZSBsaXN0IG9mIGFjdGl2ZSBkZXZpY2VzIiwKKyAgICAgICAgICAgICBwYXRo KTsKICAgICAgICAgcmMgPSByZW1vdmVfZGV2aWNlKGVnYywgbmVzdGVkX2FvLCBkZ3Vlc3QsIGRk ZXYpOwogICAgICAgICBpZiAocmMgPiAwKQogICAgICAgICAgICAgZnJlZV9hbyA9IHRydWU7CkBA IC0zOTI1LDggKzM5MjgsNyBAQCBzdGF0aWMgdm9pZCBiYWNrZW5kX3dhdGNoX2NhbGxiYWNrKGxp YnhsX19lZ2MgKmVnYywgbGlieGxfX2V2X3hzd2F0Y2ggKndhdGNoLAogICAgICAgICBpZiAobnVt X2RldnMgPT0gMCkgewogICAgICAgICAgICAgTElCWExfU0xJU1RfUkVNT1ZFKCZkZG9tYWluLT5n dWVzdHMsIGRndWVzdCwgbGlieGxfX2Rkb21haW5fZ3Vlc3QsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbmV4dCk7Ci0gICAgICAgICAgICBMT0coREVCVUcsICJyZW1vdmVkIGRvbWFp biAldSBmcm9tIHRoZSBsaXN0IG9mIGFjdGl2ZSBndWVzdHMiLAotICAgICAgICAgICAgICAgICAg ICAgICBkZ3Vlc3QtPmRvbWlkKTsKKyAgICAgICAgICAgIExPR0QoREVCVUcsIGRndWVzdC0+ZG9t aWQsICJSZW1vdmVkIGRvbWFpbiBmcm9tIHRoZSBsaXN0IG9mIGFjdGl2ZSBndWVzdHMiKTsKICAg ICAgICAgICAgIC8qIENsZWFyIGFueSBsZWZ0b3ZlcnMgaW4gbGlieGwvPGRvbWlkPiAqLwogICAg ICAgICAgICAgbGlieGxfX3hzX3JtX2NoZWNrZWQoZ2MsIFhCVF9OVUxMLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgR0NTUFJJTlRGKCJsaWJ4bC8ldSIsIGRndWVzdC0+ZG9taWQp KTsKQEAgLTQxMTEsNyArNDExMyw3IEBAIHJldHJ5X3RyYW5zYWN0aW9uOgogICAgIGlmICh0YXJn ZXQpIHsKICAgICAgICAgKnRhcmdldF9tZW1rYiA9IHN0cnRvdWxsKHRhcmdldCwgJmVuZHB0ciwg MTApOwogICAgICAgICBpZiAoKmVuZHB0ciAhPSAnXDAnKSB7Ci0gICAgICAgICAgICBMT0dFKEVS Uk9SLCAiaW52YWxpZCBtZW1vcnkgdGFyZ2V0ICVzIGZyb20gJXNcbiIsIHRhcmdldCwKKyAgICAg ICAgICAgIExPR0VEKEVSUk9SLCAwLCAiSW52YWxpZCBtZW1vcnkgdGFyZ2V0ICVzIGZyb20gJXNc biIsIHRhcmdldCwKICAgICAgICAgICAgICAgICAgdGFyZ2V0X3BhdGgpOwogICAgICAgICAgICAg cmMgPSBFUlJPUl9GQUlMOwogICAgICAgICAgICAgZ290byBvdXQ7CkBAIC00MTIxLDcgKzQxMjMs OCBAQCByZXRyeV90cmFuc2FjdGlvbjoKICAgICBpZiAoc3RhdGljbWF4KSB7CiAgICAgICAgICpt YXhfbWVta2IgPSBzdHJ0b3VsbChzdGF0aWNtYXgsICZlbmRwdHIsIDEwKTsKICAgICAgICAgaWYg KCplbmRwdHIgIT0gJ1wwJykgewotICAgICAgICAgICAgTE9HRShFUlJPUiwgImludmFsaWQgbWVt b3J5IHN0YXRpYy1tYXggJXMgZnJvbSAlc1xuIiwgc3RhdGljbWF4LAorICAgICAgICAgICAgTE9H RUQoRVJST1IsIDAsICJJbnZhbGlkIG1lbW9yeSBzdGF0aWMtbWF4ICVzIGZyb20gJXNcbiIsCisg ICAgICAgICAgICAgICAgIHN0YXRpY21heCwKICAgICAgICAgICAgICAgICAgbWF4X3BhdGgpOwog ICAgICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwogICAgICAgICAgICAgZ290byBvdXQ7Ci0tIAoy LjEwLjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlz dHMueGVuLm9yZy94ZW4tZGV2ZWwK