From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= Subject: [PATCH v2 15/35] libxl/libxl_dm.c: used LOG*D functions Date: Thu, 17 Nov 2016 18:35:57 +0100 Message-ID: <20161117173617.6697-16-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 RnJvbTogQ2VkcmljIEJvc2Rvbm5hdCA8Y2Jvc2Rvbm5hdEBzdXNlLmNvbT4KClVzZSBMT0cqRCBs b2dnaW5nIGZ1bmN0aW9ucyB3aGVyZSBwb3NzaWJsZSBpbnN0ZWFkIG9mIHRoZSBMT0cqIG9uZXMu CgpTaWduZWQtb2ZmLWJ5OiBDw6lkcmljIEJvc2Rvbm5hdCA8Y2Jvc2Rvbm5hdEBzdXNlLmNvbT4K LS0tCiB0b29scy9saWJ4bC9saWJ4bF9kbS5jIHwgMTExICsrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1OSBpbnNlcnRpb25z KCspLCA1MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS90b29scy9saWJ4bC9saWJ4bF9kbS5j IGIvdG9vbHMvbGlieGwvbGlieGxfZG0uYwppbmRleCBhZDM2NmE4Li5iZTkyOGFkIDEwMDY0NAot LS0gYS90b29scy9saWJ4bC9saWJ4bF9kbS5jCisrKyBiL3Rvb2xzL2xpYnhsL2xpYnhsX2RtLmMK QEAgLTQ1NSw3ICs0NTUsNyBAQCBzdGF0aWMgaW50IGxpYnhsX19idWlsZF9kZXZpY2VfbW9kZWxf YXJnc19vbGQobGlieGxfX2djICpnYywKICAgICAgICAgaWYgKHZuYy0+bGlzdGVuKSB7CiAgICAg ICAgICAgICBpZiAoc3RyY2hyKHZuYy0+bGlzdGVuLCAnOicpICE9IE5VTEwpIHsKICAgICAgICAg ICAgICAgICBpZiAodm5jLT5kaXNwbGF5KSB7Ci0gICAgICAgICAgICAgICAgICAgIExPRyhFUlJP UiwgInZuY2Rpc3BsYXkgc2V0LCB2bmNsaXN0ZW4gY29udGFpbnMgZGlzcGxheSIpOworICAgICAg ICAgICAgICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgInZuY2Rpc3BsYXkgc2V0LCB2bmNsaXN0 ZW4gY29udGFpbnMgZGlzcGxheSIpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4gRVJST1Jf SU5WQUw7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHZuY2FyZyA9IHZuYy0+ bGlzdGVuOwpAQCAtNTAyLDE1ICs1MDIsMTUgQEAgc3RhdGljIGludCBsaWJ4bF9fYnVpbGRfZGV2 aWNlX21vZGVsX2FyZ3Nfb2xkKGxpYnhsX19nYyAqZ2MsCiAgICAgICAgIGNoYXIgKnM7CiAKICAg ICAgICAgaWYgKGJfaW5mby0+a2VybmVsKSB7Ci0gICAgICAgICAgICBMT0coRVJST1IsICJIVk0g ZGlyZWN0IGtlcm5lbCBib290IGlzIG5vdCBzdXBwb3J0ZWQgYnkgIgotICAgICAgICAgICAgICAg ICJxZW11LXhlbi10cmFkaXRpb25hbCIpOworICAgICAgICAgICAgTE9HRChFUlJPUiwgZG9taWQs ICJIVk0gZGlyZWN0IGtlcm5lbCBib290IGlzIG5vdCBzdXBwb3J0ZWQgYnkgIgorICAgICAgICAg ICAgICAgICAicWVtdS14ZW4tdHJhZGl0aW9uYWwiKTsKICAgICAgICAgICAgIHJldHVybiBFUlJP Ul9JTlZBTDsKICAgICAgICAgfQogCiAgICAgICAgIGlmIChiX2luZm8tPnUuaHZtLnNlcmlhbCB8 fCBiX2luZm8tPnUuaHZtLnNlcmlhbF9saXN0KSB7CiAgICAgICAgICAgICBpZiAoIGJfaW5mby0+ dS5odm0uc2VyaWFsICYmIGJfaW5mby0+dS5odm0uc2VyaWFsX2xpc3QgKQogICAgICAgICAgICAg ewotICAgICAgICAgICAgICAgIExPRyhFUlJPUiwgIkJvdGggc2VyaWFsIGFuZCBzZXJpYWxfbGlz dCBzZXQiKTsKKyAgICAgICAgICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIkJvdGggc2VyaWFs IGFuZCBzZXJpYWxfbGlzdCBzZXQiKTsKICAgICAgICAgICAgICAgICByZXR1cm4gRVJST1JfSU5W QUw7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoYl9pbmZvLT51Lmh2bS5zZXJpYWwp IHsKQEAgLTU1MCw3ICs1NTAsNyBAQCBzdGF0aWMgaW50IGxpYnhsX19idWlsZF9kZXZpY2VfbW9k ZWxfYXJnc19vbGQobGlieGxfX2djICpnYywKICAgICAgICAgY2FzZSBMSUJYTF9WR0FfSU5URVJG QUNFX1RZUEVfUVhMOgogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6Ci0gICAg ICAgICAgICBMT0coRVJST1IsICJJbnZhbGlkIGVtdWxhdGVkIHZpZGVvIGNhcmQgc3BlY2lmaWVk Iik7CisgICAgICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIkludmFsaWQgZW11bGF0ZWQgdmlk ZW8gY2FyZCBzcGVjaWZpZWQiKTsKICAgICAgICAgICAgIHJldHVybiBFUlJPUl9JTlZBTDsKICAg ICAgICAgfQogCkBAIC01NjIsNyArNTYyLDcgQEAgc3RhdGljIGludCBsaWJ4bF9fYnVpbGRfZGV2 aWNlX21vZGVsX2FyZ3Nfb2xkKGxpYnhsX19nYyAqZ2MsCiAgICAgICAgICAgICB8fCBiX2luZm8t PnUuaHZtLnVzYmRldmljZV9saXN0KSB7CiAgICAgICAgICAgICBpZiAoIGJfaW5mby0+dS5odm0u dXNiZGV2aWNlICYmIGJfaW5mby0+dS5odm0udXNiZGV2aWNlX2xpc3QgKQogICAgICAgICAgICAg ewotICAgICAgICAgICAgICAgIExPRyhFUlJPUiwgIkJvdGggdXNiZGV2aWNlIGFuZCB1c2JkZXZp Y2VfbGlzdCBzZXQiKTsKKyAgICAgICAgICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIkJvdGgg dXNiZGV2aWNlIGFuZCB1c2JkZXZpY2VfbGlzdCBzZXQiKTsKICAgICAgICAgICAgICAgICByZXR1 cm4gRVJST1JfSU5WQUw7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBmbGV4YXJyYXlfYXBw ZW5kKGRtX2FyZ3MsICItdXNiIik7CkBAIC02MzIsNyArNjMyLDcgQEAgc3RhdGljIGludCBsaWJ4 bF9fYnVpbGRfZGV2aWNlX21vZGVsX2FyZ3Nfb2xkKGxpYnhsX19nYyAqZ2MsCiAgICAgICAgICAg ICAgICAgZmxleGFycmF5X2FwcGVuZChkbV9hcmdzLCAiLWdmeF9wYXNzdGhydSIpOwogICAgICAg ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgICAgICBM T0coRVJST1IsICJ1bnN1cHBvcnRlZCBnZnhfcGFzc3RocnVfa2luZC4iKTsKKyAgICAgICAgICAg ICAgICBMT0dEKEVSUk9SLCBkb21pZCwgInVuc3VwcG9ydGVkIGdmeF9wYXNzdGhydV9raW5kLiIp OwogICAgICAgICAgICAgICAgIHJldHVybiBFUlJPUl9JTlZBTDsKICAgICAgICAgICAgIH0KICAg ICAgICAgfQpAQCAtOTcwLDcgKzk3MCw3IEBAIHN0YXRpYyBpbnQgbGlieGxfX2J1aWxkX2Rldmlj ZV9tb2RlbF9hcmdzX25ldyhsaWJ4bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgIGJyZWFrOwog ICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAvKiBXZSd2ZSBmb3Jnb3R0ZW4g dG8gYWRkIHRoZSBjbGF1c2UgKi8KLSAgICAgICAgICAgICAgICBMT0coRVJST1IsICIlczogdW5r bm93biBjaGFubmVsIGNvbm5lY3Rpb24gJWQiLAorICAgICAgICAgICAgICAgIExPR0QoRVJST1Is IGd1ZXN0X2RvbWlkLCAiJXM6IHVua25vd24gY2hhbm5lbCBjb25uZWN0aW9uICVkIiwKICAgICAg ICAgICAgICAgICAgICAgX19mdW5jX18sIGNvbm5lY3Rpb24pOwogICAgICAgICAgICAgICAgIHJl dHVybiBFUlJPUl9JTlZBTDsKICAgICAgICAgfQpAQCAtMTAxNCw3ICsxMDE0LDggQEAgc3RhdGlj IGludCBsaWJ4bF9fYnVpbGRfZGV2aWNlX21vZGVsX2FyZ3NfbmV3KGxpYnhsX19nYyAqZ2MsCiAg ICAgICAgIGlmICh2bmMtPmxpc3RlbikgewogICAgICAgICAgICAgaWYgKHN0cmNocih2bmMtPmxp c3RlbiwgJzonKSAhPSBOVUxMKSB7CiAgICAgICAgICAgICAgICAgaWYgKHZuYy0+ZGlzcGxheSkg ewotICAgICAgICAgICAgICAgICAgICBMT0coRVJST1IsICJ2bmNkaXNwbGF5IHNldCwgdm5jbGlz dGVuIGNvbnRhaW5zIGRpc3BsYXkiKTsKKyAgICAgICAgICAgICAgICAgICAgTE9HRChFUlJPUiwg Z3Vlc3RfZG9taWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgInZuY2Rpc3BsYXkgc2V0LCB2 bmNsaXN0ZW4gY29udGFpbnMgZGlzcGxheSIpOwogICAgICAgICAgICAgICAgICAgICByZXR1cm4g RVJST1JfSU5WQUw7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHZuY2FyZyA9 IHZuYy0+bGlzdGVuOwpAQCAtMTA3NSw3ICsxMDc2LDcgQEAgc3RhdGljIGludCBsaWJ4bF9fYnVp bGRfZGV2aWNlX21vZGVsX2FyZ3NfbmV3KGxpYnhsX19nYyAqZ2MsCiAgICAgICAgIGlmIChiX2lu Zm8tPnUuaHZtLnNlcmlhbCB8fCBiX2luZm8tPnUuaHZtLnNlcmlhbF9saXN0KSB7CiAgICAgICAg ICAgICBpZiAoIGJfaW5mby0+dS5odm0uc2VyaWFsICYmIGJfaW5mby0+dS5odm0uc2VyaWFsX2xp c3QgKQogICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIExPRyhFUlJPUiwgIkJvdGggc2Vy aWFsIGFuZCBzZXJpYWxfbGlzdCBzZXQiKTsKKyAgICAgICAgICAgICAgICBMT0dEKEVSUk9SLCBn dWVzdF9kb21pZCwgIkJvdGggc2VyaWFsIGFuZCBzZXJpYWxfbGlzdCBzZXQiKTsKICAgICAgICAg ICAgICAgICByZXR1cm4gRVJST1JfSU5WQUw7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBp ZiAoYl9pbmZvLT51Lmh2bS5zZXJpYWwpIHsKQEAgLTExMzMsNyArMTEzNCw3IEBAIHN0YXRpYyBp bnQgbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbF9hcmdzX25ldyhsaWJ4bF9fZ2MgKmdjLAogICAg ICAgICAgICAgICAgIChiX2luZm8tPnZpZGVvX21lbWtiLzIvMTAyNCksIChiX2luZm8tPnZpZGVv X21lbWtiLzIvMTAyNCkgKSApOwogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIGRlZmF1bHQ6 Ci0gICAgICAgICAgICBMT0coRVJST1IsICJJbnZhbGlkIGVtdWxhdGVkIHZpZGVvIGNhcmQgc3Bl Y2lmaWVkIik7CisgICAgICAgICAgICBMT0dEKEVSUk9SLCBndWVzdF9kb21pZCwgIkludmFsaWQg ZW11bGF0ZWQgdmlkZW8gY2FyZCBzcGVjaWZpZWQiKTsKICAgICAgICAgICAgIHJldHVybiBFUlJP Ul9JTlZBTDsKICAgICAgICAgfQogCkBAIC0xMTQ2LDcgKzExNDcsNyBAQCBzdGF0aWMgaW50IGxp YnhsX19idWlsZF9kZXZpY2VfbW9kZWxfYXJnc19uZXcobGlieGxfX2djICpnYywKICAgICAgICAg ICAgIHx8IGJfaW5mby0+dS5odm0udXNiZGV2aWNlX2xpc3QpIHsKICAgICAgICAgICAgIGlmICgg Yl9pbmZvLT51Lmh2bS51c2JkZXZpY2UgJiYgYl9pbmZvLT51Lmh2bS51c2JkZXZpY2VfbGlzdCAp CiAgICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgTE9HKEVSUk9SLCAiQm90aCB1c2JkZXZp Y2UgYW5kIHVzYmRldmljZV9saXN0IHNldCIpOworICAgICAgICAgICAgICAgIExPR0QoRVJST1Is IGd1ZXN0X2RvbWlkLCAiQm90aCB1c2JkZXZpY2UgYW5kIHVzYmRldmljZV9saXN0IHNldCIpOwog ICAgICAgICAgICAgICAgIHJldHVybiBFUlJPUl9JTlZBTDsKICAgICAgICAgICAgIH0KICAgICAg ICAgICAgIGZsZXhhcnJheV9hcHBlbmQoZG1fYXJncywgIi11c2IiKTsKQEAgLTExODMsNyArMTE4 NCw3IEBAIHN0YXRpYyBpbnQgbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbF9hcmdzX25ldyhsaWJ4 bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgICAgICAiLWRldmljZSIsICJuZWMtdXNiLXhoY2ks aWQ9dXNiIiwgTlVMTCk7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICBkZWZh dWx0OgotICAgICAgICAgICAgICAgIExPRyhFUlJPUiwgInVzYnZlcnNpb24gcGFyYW1ldGVyIGlz IGludmFsaWQsICIKKyAgICAgICAgICAgICAgICBMT0dEKEVSUk9SLCBndWVzdF9kb21pZCwgInVz YnZlcnNpb24gcGFyYW1ldGVyIGlzIGludmFsaWQsICIKICAgICAgICAgICAgICAgICAgICAgIm11 c3QgYmUgYmV0d2VlbiAxIGFuZCAzIik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIEVSUk9SX0lO VkFMOwogICAgICAgICAgICAgfQpAQCAtMTE5Niw3ICsxMTk3LDcgQEAgc3RhdGljIGludCBsaWJ4 bF9fYnVpbGRfZGV2aWNlX21vZGVsX2FyZ3NfbmV3KGxpYnhsX19nYyAqZ2MsCiAgICAgICAgICAg ICAgICAgICAgICAgICBHQ1NQUklOVEYoInVzYi1yZWRpcixjaGFyZGV2PXVzYnJjJWQsIgogICAg ICAgICAgICAgICAgICAgICAgICAgImlkPXVzYnJjJWQiLCBpLCBpKSwgTlVMTCk7CiAgICAgICAg ICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAgIExPRyhFUlJPUiwgInVzYnJlZGlyZWN0aW9u IHBhcmFtZXRlciBpcyBpbnZhbGlkLCAiCisgICAgICAgICAgICAgICAgTE9HRChFUlJPUiwgZ3Vl c3RfZG9taWQsICJ1c2JyZWRpcmVjdGlvbiBwYXJhbWV0ZXIgaXMgaW52YWxpZCwgIgogICAgICAg ICAgICAgICAgICAgICAiaXQgbXVzdCBiZSBiZXR3ZWVuIDEgYW5kIDQiKTsKICAgICAgICAgICAg ICAgICByZXR1cm4gRVJST1JfSU5WQUw7CiAgICAgICAgICAgICB9CkBAIC0xMjgyLDggKzEyODMs OCBAQCBzdGF0aWMgaW50IGxpYnhsX19idWlsZF9kZXZpY2VfbW9kZWxfYXJnc19uZXcobGlieGxf X2djICpnYywKICAgICAgICAgICAgICAgICAoYl9pbmZvLT51Lmh2bS5tbWlvX2hvbGVfbWVta2Ig PDwgMTApOwogCiAgICAgICAgICAgICBpZiAobWF4X3JhbV9iZWxvd180ZyA+IEhWTV9CRUxPV180 R19NTUlPX1NUQVJUKSB7Ci0gICAgICAgICAgICAgICAgTE9HKFdBUk4sICJtbWlvX2hvbGVfbWVt a2I9JSJQUkl1NjQKLSAgICAgICAgICAgICAgICAgICAgIiBpbnZhbGlkIGlnbm9yZWQuXG4iLAor ICAgICAgICAgICAgICAgIExPR0QoV0FSTiwgZ3Vlc3RfZG9taWQsICJtbWlvX2hvbGVfbWVta2I9 JSJQUkl1NjQKKyAgICAgICAgICAgICAgICAgICAgICIgaW52YWxpZCBpZ25vcmVkLlxuIiwKICAg ICAgICAgICAgICAgICAgICAgYl9pbmZvLT51Lmh2bS5tbWlvX2hvbGVfbWVta2IpOwogICAgICAg ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICBtYWNoaW5lYXJnID0gR0NTUFJJTlRGKCIl cyxtYXgtcmFtLWJlbG93LTRnPSUiUFJJdTY0LApAQCAtMTI5OSwxMCArMTMwMCwxMCBAQCBzdGF0 aWMgaW50IGxpYnhsX19idWlsZF9kZXZpY2VfbW9kZWxfYXJnc19uZXcobGlieGxfX2djICpnYywK ICAgICAgICAgICAgICAgICBtYWNoaW5lYXJnID0gR0NTUFJJTlRGKCIlcyxpZ2QtcGFzc3RocnU9 b24iLCBtYWNoaW5lYXJnKTsKICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNh c2UgTElCWExfR0ZYX1BBU1NUSFJVX0tJTkRfREVGQVVMVDoKLSAgICAgICAgICAgICAgICBMT0co RVJST1IsICJ1bmFibGUgdG8gZGV0ZWN0IHJlcXVpcmVkIGdmeF9wYXNzdGhydV9raW5kIik7Cisg ICAgICAgICAgICAgICAgTE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsICJ1bmFibGUgdG8gZGV0ZWN0 IHJlcXVpcmVkIGdmeF9wYXNzdGhydV9raW5kIik7CiAgICAgICAgICAgICAgICAgcmV0dXJuIEVS Uk9SX0ZBSUw7CiAgICAgICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgICAgIExPRyhFUlJP UiwgImludmFsaWQgdmFsdWUgZm9yIGdmeF9wYXNzdGhydV9raW5kIik7CisgICAgICAgICAgICAg ICAgTE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsICJpbnZhbGlkIHZhbHVlIGZvciBnZnhfcGFzc3Ro cnVfa2luZCIpOwogICAgICAgICAgICAgICAgIHJldHVybiBFUlJPUl9JTlZBTDsKICAgICAgICAg ICAgIH0KICAgICAgICAgfQpAQCAtMTMzMiw4ICsxMzMzLDggQEAgc3RhdGljIGludCBsaWJ4bF9f YnVpbGRfZGV2aWNlX21vZGVsX2FyZ3NfbmV3KGxpYnhsX19nYyAqZ2MsCiAgICAgICAgICAgICBp bnQgY29sb19tb2RlOwogCiAgICAgICAgICAgICBpZiAoZGV2X251bWJlciA9PSAtMSkgewotICAg ICAgICAgICAgICAgIExPRyhXQVJOLCAidW5hYmxlIHRvIGRldGVybWluZSIiIGRpc2sgbnVtYmVy IGZvciAlcyIsCi0gICAgICAgICAgICAgICAgICAgIGRpc2tzW2ldLnZkZXYpOworICAgICAgICAg ICAgICAgIExPR0QoV0FSTiwgZ3Vlc3RfZG9taWQsICJ1bmFibGUgdG8gZGV0ZXJtaW5lIiIgZGlz ayBudW1iZXIgZm9yICVzIiwKKyAgICAgICAgICAgICAgICAgICAgIGRpc2tzW2ldLnZkZXYpOwog ICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgfQogCkBAIC0xMzQ4LDE3ICsx MzQ5LDE3IEBAIHN0YXRpYyBpbnQgbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbF9hcmdzX25ldyhs aWJ4bF9fZ2MgKmdjLAogCiAgICAgICAgICAgICBpZiAoZGlza3NbaV0uZm9ybWF0ID09IExJQlhM X0RJU0tfRk9STUFUX0VNUFRZKSB7CiAgICAgICAgICAgICAgICAgaWYgKCFkaXNrc1tpXS5pc19j ZHJvbSkgewotICAgICAgICAgICAgICAgICAgICBMT0coV0FSTiwgIkNhbm5vdCBzdXBwb3J0IGVt cHR5IGRpc2sgZm9ybWF0IGZvciAlcyIsCi0gICAgICAgICAgICAgICAgICAgICAgICBkaXNrc1tp XS52ZGV2KTsKKyAgICAgICAgICAgICAgICAgICAgTE9HRChXQVJOLCBndWVzdF9kb21pZCwgIkNh bm5vdCBzdXBwb3J0IGVtcHR5IGRpc2sgZm9ybWF0IGZvciAlcyIsCisgICAgICAgICAgICAgICAg ICAgICAgICAgZGlza3NbaV0udmRldik7CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwog ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAg aWYgKGZvcm1hdCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgICAgIExPRyhXQVJOLAotICAg ICAgICAgICAgICAgICAgICAgICAgIlVuYWJsZSB0byBkZXRlcm1pbmUgZGlzayBpbWFnZSBmb3Jt YXQ6ICVzXG4iCi0gICAgICAgICAgICAgICAgICAgICAgICAiRGlzayB3aWxsIGJlIGF2YWlsYWJs ZSB2aWEgUFYgZHJpdmVycyBidXQgbm90IGFzIGFuIgotICAgICAgICAgICAgICAgICAgICAgICAg ImVtdWxhdGVkIGRpc2suIiwKLSAgICAgICAgICAgICAgICAgICAgICAgIGRpc2tzW2ldLnZkZXYp OworICAgICAgICAgICAgICAgICAgICBMT0dEKFdBUk4sIGd1ZXN0X2RvbWlkLAorICAgICAgICAg ICAgICAgICAgICAgICAgICJVbmFibGUgdG8gZGV0ZXJtaW5lIGRpc2sgaW1hZ2UgZm9ybWF0OiAl c1xuIgorICAgICAgICAgICAgICAgICAgICAgICAgICJEaXNrIHdpbGwgYmUgYXZhaWxhYmxlIHZp YSBQViBkcml2ZXJzIGJ1dCBub3QgYXMgYW4iCisgICAgICAgICAgICAgICAgICAgICAgICAgImVt dWxhdGVkIGRpc2suIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBkaXNrc1tpXS52ZGV2KTsK ICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgfQogCkBAIC0x Mzc4LDEwICsxMzc5LDEwIEBAIHN0YXRpYyBpbnQgbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbF9h cmdzX25ldyhsaWJ4bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGd1ZXN0X2RvbWlkLCAmZGlza3NbaV0sIHRydWUpOwogCiAgICAgICAg ICAgICAgICAgaWYgKCF0YXJnZXRfcGF0aCkgewotICAgICAgICAgICAgICAgICAgICBMT0coV0FS TiwgIk5vIHdheSB0byBnZXQgbG9jYWwgYWNjZXNzIGRpc2sgdG8gaW1hZ2U6ICVzXG4iCi0gICAg ICAgICAgICAgICAgICAgICAgICAiRGlzayB3aWxsIGJlIGF2YWlsYWJsZSB2aWEgUFYgZHJpdmVy cyBidXQgbm90IGFzIGFuIgotICAgICAgICAgICAgICAgICAgICAgICAgImVtdWxhdGVkIGRpc2su IiwKLSAgICAgICAgICAgICAgICAgICAgICAgIGRpc2tzW2ldLnZkZXYpOworICAgICAgICAgICAg ICAgICAgICBMT0dEKFdBUk4sIGd1ZXN0X2RvbWlkLCAiTm8gd2F5IHRvIGdldCBsb2NhbCBhY2Nl c3MgZGlzayB0byBpbWFnZTogJXNcbiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAiRGlzayB3 aWxsIGJlIGF2YWlsYWJsZSB2aWEgUFYgZHJpdmVycyBidXQgbm90IGFzIGFuIgorICAgICAgICAg ICAgICAgICAgICAgICAgICJlbXVsYXRlZCBkaXNrLiIsCisgICAgICAgICAgICAgICAgICAgICAg ICAgZGlza3NbaV0udmRldik7CiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAg ICAgICAgICAgIH0KICAgICAgICAgICAgIH0KQEAgLTE0MjYsNyArMTQyNyw4IEBAIHN0YXRpYyBp bnQgbGlieGxfX2J1aWxkX2RldmljZV9tb2RlbF9hcmdzX25ldyhsaWJ4bF9fZ2MgKmdjLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xv X21vZGUpOwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZGlzayA8IDYgJiYgYl9pbmZvLT51 Lmh2bS5oZHR5cGUgPT0gTElCWExfSERUWVBFX0FIQ0kpIHsKICAgICAgICAgICAgICAgICAgICAg aWYgKCFkaXNrc1tpXS5yZWFkd3JpdGUpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIExPRyhF UlJPUiwgInFlbXUteGVuIGRvZXNuJ3Qgc3VwcG9ydCByZWFkLW9ubHkgQUhDSSBkaXNrIGRyaXZl cnMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIExPR0QoRVJST1IsIGd1ZXN0X2RvbWlkLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicWVtdS14ZW4gZG9lc24ndCBzdXBwb3J0IHJl YWQtb25seSBBSENJIGRpc2sgZHJpdmVycyIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0 dXJuIEVSUk9SX0lOVkFMOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAg ICAgIGZsZXhhcnJheV92YXBwZW5kKGRtX2FyZ3MsICItZHJpdmUiLApAQCAtMTQzNyw3ICsxNDM5 LDggQEAgc3RhdGljIGludCBsaWJ4bF9fYnVpbGRfZGV2aWNlX21vZGVsX2FyZ3NfbmV3KGxpYnhs X19nYyAqZ2MsCiAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAg IH0gZWxzZSBpZiAoZGlzayA8IDQpIHsKICAgICAgICAgICAgICAgICAgICAgaWYgKCFkaXNrc1tp XS5yZWFkd3JpdGUpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIExPRyhFUlJPUiwgInFlbXUt eGVuIGRvZXNuJ3Qgc3VwcG9ydCByZWFkLW9ubHkgSURFIGRpc2sgZHJpdmVycyIpOworICAgICAg ICAgICAgICAgICAgICAgICAgTE9HRChFUlJPUiwgZ3Vlc3RfZG9taWQsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJxZW11LXhlbiBkb2Vzbid0IHN1cHBvcnQgcmVhZC1vbmx5IElERSBk aXNrIGRyaXZlcnMiKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBFUlJPUl9JTlZB TDsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICBpZiAoY29sb19t b2RlID09IExJQlhMX19DT0xPX1NFQ09OREFSWSkgewpAQCAtMTQ5MCwxNCArMTQ5MywxNCBAQCBz dGF0aWMgaW50IGxpYnhsX19idWlsZF9kZXZpY2VfbW9kZWxfYXJnc19uZXcobGlieGxfX2djICpn YywKICAgICAgICAgaWYgKHJldCA8IDApCiAgICAgICAgICAgICByZXR1cm4gcmV0OwogICAgICAg ICBpZiAocmV0ID4gMCkgewotICAgICAgICAgICAgTE9HKFdBUk4sICJDb3VsZCBub3QgZmluZCB1 c2VyICVzJWQsIGZhbGxpbmcgYmFjayB0byAlcyIsCisgICAgICAgICAgICBMT0dEKFdBUk4sIGd1 ZXN0X2RvbWlkLCAiQ291bGQgbm90IGZpbmQgdXNlciAlcyVkLCBmYWxsaW5nIGJhY2sgdG8gJXMi LAogICAgICAgICAgICAgICAgICAgICBMSUJYTF9RRU1VX1VTRVJfQkFTRSwgZ3Vlc3RfZG9taWQs IExJQlhMX1FFTVVfVVNFUl9TSEFSRUQpOwogICAgICAgICAgICAgZ290byBlbmRfc2VhcmNoOwog ICAgICAgICB9CiAKICAgICAgICAgdXNlciA9IE5VTEw7Ci0gICAgICAgIExPRyhERUJVRywgIkNv dWxkIG5vdCBmaW5kIHVzZXIgJXMsIHN0YXJ0aW5nIFFFTVUgYXMgcm9vdCIsCi0gICAgICAgICAg ICBMSUJYTF9RRU1VX1VTRVJfU0hBUkVEKTsKKyAgICAgICAgTE9HRChERUJVRywgZ3Vlc3RfZG9t aWQsICJDb3VsZCBub3QgZmluZCB1c2VyICVzLCBzdGFydGluZyBRRU1VIGFzIHJvb3QiLAorICAg ICAgICAgICAgIExJQlhMX1FFTVVfVVNFUl9TSEFSRUQpOwogCiBlbmRfc2VhcmNoOgogICAgICAg ICBpZiAodXNlciAhPSBOVUxMICYmIHN0cmNtcCh1c2VyLCAicm9vdCIpKSB7CkBAIC0xNTM2LDgg KzE1MzksOCBAQCBzdGF0aWMgaW50IGxpYnhsX19idWlsZF9kZXZpY2VfbW9kZWxfYXJncyhsaWJ4 bF9fZ2MgKmdjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBhcmdzLCBlbnZzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzdGF0ZSwgZG1fc3RhdGVfZmQpOwogICAgIGRlZmF1bHQ6Ci0gICAgICAgIExP R0UoRVJST1IsICJ1bmtub3duIGRldmljZSBtb2RlbCB2ZXJzaW9uICVkIiwKLSAgICAgICAgICAg ICBndWVzdF9jb25maWctPmJfaW5mby5kZXZpY2VfbW9kZWxfdmVyc2lvbik7CisgICAgICAgIExP R0VEKEVSUk9SLCBndWVzdF9kb21pZCwgInVua25vd24gZGV2aWNlIG1vZGVsIHZlcnNpb24gJWQi LAorICAgICAgICAgICAgICBndWVzdF9jb25maWctPmJfaW5mby5kZXZpY2VfbW9kZWxfdmVyc2lv bik7CiAgICAgICAgIHJldHVybiBFUlJPUl9JTlZBTDsKICAgICB9CiB9CkBAIC0xNzY0LDcgKzE3 NjcsOCBAQCB2b2lkIGxpYnhsX19zcGF3bl9zdHViX2RtKGxpYnhsX19lZ2MgKmVnYywgbGlieGxf X3N0dWJfZG1fc3Bhd25fc3RhdGUgKnNkc3MpCiAgICAgICAgICAgICAgICAgICAgICAiJWQiLCBn dWVzdF9kb21pZCk7CiAgICAgcmV0ID0geGNfZG9tYWluX3NldF90YXJnZXQoY3R4LT54Y2gsIGRt X2RvbWlkLCBndWVzdF9kb21pZCk7CiAgICAgaWYgKHJldDwwKSB7Ci0gICAgICAgIExPR0UoRVJS T1IsICJzZXR0aW5nIHRhcmdldCBkb21haW4gJWQgLT4gJWQiLCBkbV9kb21pZCwgZ3Vlc3RfZG9t aWQpOworICAgICAgICBMT0dFRChFUlJPUiwgZ3Vlc3RfZG9taWQsICJzZXR0aW5nIHRhcmdldCBk b21haW4gJWQgLT4gJWQiLAorICAgICAgICAgICAgICBkbV9kb21pZCwgZ3Vlc3RfZG9taWQpOwog ICAgICAgICByZXQgPSBFUlJPUl9GQUlMOwogICAgICAgICBnb3RvIG91dDsKICAgICB9CkBAIC0x ODE0LDcgKzE4MTgsNyBAQCBzdGF0aWMgdm9pZCBzcGF3bl9zdHViX2xhdW5jaF9kbShsaWJ4bF9f ZWdjICplZ2MsCiAgICAgdWludDMyX3QgZG1fZG9taWQgPSBzZHNzLT5wdnFlbXUuZ3Vlc3RfZG9t aWQ7CiAKICAgICBpZiAocmV0KSB7Ci0gICAgICAgIExPRyhFUlJPUiwgImVycm9yIGNvbm5lY3Rp bmcgZGlzayBkZXZpY2VzIik7CisgICAgICAgIExPR0QoRVJST1IsIGd1ZXN0X2RvbWlkLCAiZXJy b3IgY29ubmVjdGluZyBkaXNrIGRldmljZXMiKTsKICAgICAgICAgZ290byBvdXQ7CiAgICAgIH0K IApAQCAtMTkyOSw3ICsxOTMzLDggQEAgc3RhdGljIHZvaWQgc3R1YmRvbV9wdnFlbXVfY2IobGli eGxfX2VnYyAqZWdjLAogICAgIGxpYnhsX194c3dhaXRfaW5pdCgmc2Rzcy0+eHN3YWl0KTsKIAog ICAgIGlmIChyYykgewotICAgICAgICBMT0dFKEVSUk9SLCAiZXJyb3IgY29ubmVjdGluZyBuaWNz IGRldmljZXMiKTsKKyAgICAgICAgTE9HRUQoRVJST1IsIHNkc3MtPmRtLmd1ZXN0X2RvbWlkLAor ICAgICAgICAgICAgICAiZXJyb3IgY29ubmVjdGluZyBuaWNzIGRldmljZXMiKTsKICAgICAgICAg Z290byBvdXQ7CiAgICAgfQogCkBAIC0xOTYwLDcgKzE5NjUsOCBAQCBzdGF0aWMgdm9pZCBzdHVi ZG9tX3hzd2FpdF9jYihsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX194c3dhaXRfc3RhdGUgKnhzd2Fp dCwKIAogICAgIGlmIChyYykgewogICAgICAgICBpZiAocmMgPT0gRVJST1JfVElNRURPVVQpCi0g ICAgICAgICAgICBMT0coRVJST1IsICIlczogc3RhcnR1cCB0aW1lZCBvdXQiLCB4c3dhaXQtPndo YXQpOworICAgICAgICAgICAgTE9HRChFUlJPUiwgc2Rzcy0+ZG0uZ3Vlc3RfZG9taWQsCisgICAg ICAgICAgICAgICAgICIlczogc3RhcnR1cCB0aW1lZCBvdXQiLCB4c3dhaXQtPndoYXQpOwogICAg ICAgICBnb3RvIG91dDsKICAgICB9CiAKQEAgLTIwMjEsNyArMjAyNyw3IEBAIHZvaWQgbGlieGxf X3NwYXduX2xvY2FsX2RtKGxpYnhsX19lZ2MgKmVnYywgbGlieGxfX2RtX3NwYXduX3N0YXRlICpk bXNzKQogICAgICAgICBnb3RvIG91dDsKICAgICB9CiAgICAgaWYgKGFjY2VzcyhkbSwgWF9PSykg PCAwKSB7Ci0gICAgICAgIExPR0UoRVJST1IsICJkZXZpY2UgbW9kZWwgJXMgaXMgbm90IGV4ZWN1 dGFibGUiLCBkbSk7CisgICAgICAgIExPR0VEKEVSUk9SLCBkb21pZCwgImRldmljZSBtb2RlbCAl cyBpcyBub3QgZXhlY3V0YWJsZSIsIGRtKTsKICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwogICAg ICAgICBnb3RvIG91dDsKICAgICB9CkBAIC0yMDY0LDcgKzIwNzAsNyBAQCB2b2lkIGxpYnhsX19z cGF3bl9sb2NhbF9kbShsaWJ4bF9fZWdjICplZ2MsIGxpYnhsX19kbV9zcGF3bl9zdGF0ZSAqZG1z cykKICAgICB9CiAgICAgbnVsbCA9IG9wZW4oIi9kZXYvbnVsbCIsIE9fUkRPTkxZKTsKICAgICBp ZiAobnVsbCA8IDApIHsKLSAgICAgICAgTE9HRShFUlJPUiwgInVuYWJsZSB0byBvcGVuIC9kZXYv bnVsbCIpOworICAgICAgICBMT0dFRChFUlJPUiwgZG9taWQsICJ1bmFibGUgdG8gb3BlbiAvZGV2 L251bGwiKTsKICAgICAgICAgcmMgPSBFUlJPUl9GQUlMOwogICAgICAgICBnb3RvIG91dF9jbG9z ZTsKICAgICB9CkBAIC0yMDkxLDEzICsyMDk3LDEzIEBAIHJldHJ5X3RyYW5zYWN0aW9uOgogICAg ICAgICB9CiAgICAgfQogCi0gICAgTE9HKERFQlVHLCAiU3Bhd25pbmcgZGV2aWNlLW1vZGVsICVz IHdpdGggYXJndW1lbnRzOiIsIGRtKTsKKyAgICBMT0dEKERFQlVHLCBkb21pZCwgIlNwYXduaW5n IGRldmljZS1tb2RlbCAlcyB3aXRoIGFyZ3VtZW50czoiLCBkbSk7CiAgICAgZm9yIChhcmcgPSBh cmdzOyAqYXJnOyBhcmcrKykKLSAgICAgICAgTE9HKERFQlVHLCAiICAlcyIsICphcmcpOworICAg ICAgICBMT0dEKERFQlVHLCBkb21pZCwgIiAgJXMiLCAqYXJnKTsKICAgICBpZiAoKmVudnMpIHsK LSAgICAgICAgTE9HKERFQlVHLCAiU3Bhd25pbmcgZGV2aWNlLW1vZGVsICVzIHdpdGggYWRkaXRp b25hbCBlbnZpcm9ubWVudDoiLCBkbSk7CisgICAgICAgIExPR0QoREVCVUcsIGRvbWlkLCAiU3Bh d25pbmcgZGV2aWNlLW1vZGVsICVzIHdpdGggYWRkaXRpb25hbCBlbnZpcm9ubWVudDoiLCBkbSk7 CiAgICAgICAgIGZvciAoYXJnID0gZW52czsgKmFyZzsgYXJnICs9IDIpCi0gICAgICAgICAgICBM T0coREVCVUcsICIgICVzPSVzIiwgYXJnWzBdLCBhcmdbMV0pOworICAgICAgICAgICAgTE9HRChE RUJVRywgZG9taWQsICIgICVzPSVzIiwgYXJnWzBdLCBhcmdbMV0pOwogICAgIH0KIAogICAgIHNw YXduLT53aGF0ID0gR0NTUFJJTlRGKCJkb21haW4gJWQgZGV2aWNlIG1vZGVsIiwgZG9taWQpOwpA QCAtMjE4NiwxNCArMjE5MiwxNSBAQCBzdGF0aWMgdm9pZCBkZXZpY2VfbW9kZWxfc3Bhd25fb3V0 Y29tZShsaWJ4bF9fZWdjICplZ2MsCiAgICAgaW50IHJldDI7CiAKICAgICBpZiAocmMpCi0gICAg ICAgIExPRyhFUlJPUiwgIiVzOiBzcGF3biBmYWlsZWQgKHJjPSVkKSIsIGRtc3MtPnNwYXduLndo YXQsIHJjKTsKKyAgICAgICAgTE9HRChFUlJPUiwgZG1zcy0+Z3Vlc3RfZG9taWQsCisgICAgICAg ICAgICAgIiVzOiBzcGF3biBmYWlsZWQgKHJjPSVkKSIsIGRtc3MtPnNwYXduLndoYXQsIHJjKTsK IAogICAgIGxpYnhsX19kb21haW5fYnVpbGRfc3RhdGUgKnN0YXRlID0gZG1zcy0+YnVpbGRfc3Rh dGU7CiAKICAgICBpZiAoc3RhdGUtPnNhdmVkX3N0YXRlKSB7CiAgICAgICAgIHJldDIgPSB1bmxp bmsoc3RhdGUtPnNhdmVkX3N0YXRlKTsKICAgICAgICAgaWYgKHJldDIpIHsKLSAgICAgICAgICAg IExPR0UoRVJST1IsICIlczogZmFpbGVkIHRvIHJlbW92ZSBkZXZpY2UtbW9kZWwgc3RhdGUgJXMi LAorICAgICAgICAgICAgTE9HRUQoRVJST1IsIGRtc3MtPmd1ZXN0X2RvbWlkLCAiJXM6IGZhaWxl ZCB0byByZW1vdmUgZGV2aWNlLW1vZGVsIHN0YXRlICVzIiwKICAgICAgICAgICAgICAgICAgZG1z cy0+c3Bhd24ud2hhdCwgc3RhdGUtPnNhdmVkX3N0YXRlKTsKICAgICAgICAgICAgIHJjID0gRVJS T1JfRkFJTDsKICAgICAgICAgICAgIGdvdG8gb3V0OwpAQCAtMjMzOSw3ICsyMzQ2LDcgQEAgaW50 IGxpYnhsX19kZXN0cm95X2RldmljZV9tb2RlbChsaWJ4bF9fZ2MgKmdjLCB1aW50MzJfdCBkb21p ZCkKIHsKICAgICBjaGFyICpwYXRoID0gREVWSUNFX01PREVMX1hTX1BBVEgoZ2MsIExJQlhMX1RP T0xTVEFDS19ET01JRCwgZG9taWQsICIiKTsKICAgICBpZiAoIXhzX3JtKENUWC0+eHNoLCBYQlRf TlVMTCwgcGF0aCkpCi0gICAgICAgIExPRyhFUlJPUiwgInhzX3JtIGZhaWxlZCBmb3IgJXMiLCBw YXRoKTsKKyAgICAgICAgTE9HRChFUlJPUiwgZG9taWQsICJ4c19ybSBmYWlsZWQgZm9yICVzIiwg cGF0aCk7CiAgICAgLyogV2Ugc2hvdWxkIHRyeSB0byBkZXN0cm95IHRoZSBkZXZpY2UgbW9kZWwg YW55d2F5LiAqLwogICAgIHJldHVybiBraWxsX2RldmljZV9tb2RlbChnYywKICAgICAgICAgICAg ICAgICBHQ1NQUklOVEYoIi9sb2NhbC9kb21haW4vJWQvaW1hZ2UvZGV2aWNlLW1vZGVsLXBpZCIs IGRvbWlkKSk7CkBAIC0yNDIwLDcgKzI0MjcsNyBAQCBpbnQgbGlieGxfX2RtX2NoZWNrX3N0YXJ0 KGxpYnhsX19nYyAqZ2MsIGxpYnhsX2RvbWFpbl9jb25maWcgKmRfY29uZmlnLAogICAgIGlmICgh cmMpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgTE9HKEVSUk9SLCAiZGV2aWNlIG1vZGVsIHJl cXVpcmVkIGJ1dCBub3QgcnVubmluZyIpOworICAgIExPR0QoRVJST1IsIGRvbWlkLCAiZGV2aWNl IG1vZGVsIHJlcXVpcmVkIGJ1dCBub3QgcnVubmluZyIpOwogICAgIHJjID0gRVJST1JfRkFJTDsK IAogb3V0OgotLSAKMi4xMC4xCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9y ZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==