From: Thomas Leonard Subject: [PATCH ARM v4 08/12] mini-os: arm: show registers, stack and exception vector on fault Date: Wed, 18 Jun 2014 16:08:22 +0100 Message-ID: <1403104106-32538-9-git-send-email-talex5@gmail.com> References: <1403104106-32538-1-git-send-email-talex5@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1WxHTp-0007rD-1h for xen-devel@lists.xenproject.org; Wed, 18 Jun 2014 15:08:53 +0000 Received: by mail-wg0-f48.google.com with SMTP id n12so999517wgh.19 for ; Wed, 18 Jun 2014 08:08:50 -0700 (PDT) In-Reply-To: <1403104106-32538-1-git-send-email-talex5@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xenproject.org Cc: Thomas Leonard , Dave.Scott@eu.citrix.com, anil@recoil.org, stefano.stabellini@eu.citrix.com, samuel.thibault@ens-lyon.org List-Id: xen-devel@lists.xenproject.org U2lnbmVkLW9mZi1ieTogVGhvbWFzIExlb25hcmQgPHRhbGV4NUBnbWFpbC5jb20+Ci0tLQogZXh0 cmFzL21pbmktb3MvQVJNLVRPRE8udHh0ICAgICAgICAgIHwgIDEgLQogZXh0cmFzL21pbmktb3Mv YXJjaC9hcm0vYXJtMzIuUyAgICAgIHwgODEgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0K IGV4dHJhcy9taW5pLW9zL2FyY2gvYXJtL3BhbmljLmMgICAgICB8IDk5ICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwogZXh0cmFzL21pbmktb3MvaW5jbHVkZS9hcm0vYXJjaF9t bS5oIHwgIDIgKy0KIGV4dHJhcy9taW5pLW9zL2luY2x1ZGUvYXJtL29zLmggICAgICB8ICAyICst CiA1IGZpbGVzIGNoYW5nZWQsIDE3NSBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMoLSkKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBleHRyYXMvbWluaS1vcy9hcmNoL2FybS9wYW5pYy5jCgpkaWZmIC0t Z2l0IGEvZXh0cmFzL21pbmktb3MvQVJNLVRPRE8udHh0IGIvZXh0cmFzL21pbmktb3MvQVJNLVRP RE8udHh0CmluZGV4IDNkOWJlMTAuLjhmNGYxZGEgMTAwNjQ0Ci0tLSBhL2V4dHJhcy9taW5pLW9z L0FSTS1UT0RPLnR4dAorKysgYi9leHRyYXMvbWluaS1vcy9BUk0tVE9ETy50eHQKQEAgLTEsNCAr MSwzIEBACi0qIHN1cHBvcnQgYWJvcnQgZXhjZXB0aW9uIGhhbmRsaW5nICggYW5kIG90aGVycyAp CiAqIHNjaGVkdWxpbmchCiAqIGdpYyByZXF1ZXN0X2lycSBpbXBsZW1lbnRhdGlvbiwgY3VycmVu dGx5IGFsbCBJUlFzIGFsbCBoYXJkY29kZWQgaW4gZ2ljIGlycSBoYW5kbGVyLgogKiB1c2UgZGV2 aWNlIHRyZWUgaW5zdGVhZCBvZiB0aGUgY3VycmVudGx5IGhhcmRjb2RlZCB2YWx1ZXMKZGlmZiAt LWdpdCBhL2V4dHJhcy9taW5pLW9zL2FyY2gvYXJtL2FybTMyLlMgYi9leHRyYXMvbWluaS1vcy9h cmNoL2FybS9hcm0zMi5TCmluZGV4IDRmOTUzZWMuLjI5ZmJhNzIgMTAwNjQ0Ci0tLSBhL2V4dHJh cy9taW5pLW9zL2FyY2gvYXJtL2FybTMyLlMKKysrIGIvZXh0cmFzL21pbmktb3MvYXJjaC9hcm0v YXJtMzIuUwpAQCAtODAsMTYgKzgwLDgzIEBAIHNoYXJlZF9pbmZvX3BhZ2U6CiAKIC5hbGlnbiAz CiAuZ2xvYmwgc3RhY2sKKy5nbG9ibCBzdGFja19lbmQKIHN0YWNrOgogCS5maWxsICg0KjEwMjQp LCA0LCAweDAKIHN0YWNrX2VuZDoKIAogLmFsaWduIDMKKy5nbG9ibCBpcnFzdGFjaworLmdsb2Js IGlycXN0YWNrX2VuZAogaXJxc3RhY2s6CiAJLmZpbGwgKDEwMjQpLCA0LCAweDAKIGlycXN0YWNr X2VuZDoKKworZmF1bHRfZHVtcDoKKwkuZmlsbCAxOCwgNCwgMHgwCQlAIE9uIGZhdWx0LCB3ZSBz YXZlIHRoZSByZWdpc3RlcnMgKyBDUFNSICsgaGFuZGxlciBhZGRyZXNzCisKIC5wb3BzZWN0aW9u CiAKK2ZhdWx0OgorCWNwc2lkCWFpZgkJCUAgRGlzYWJsZSBpbnRlcnJ1cHRzCisKKwlsZHIJcjEz LCA9ZmF1bHRfZHVtcAorCXN0bWlhCXIxMywge3IwLXIxMn0JCUAgRHVtcCB0aGUgbm9uLWJhbmtl ZCByZWdpc3RlcnMgZGlyZWN0bHkgKHdlbGwsIHVubGVzcyBmcm9tIEZJUSBtb2RlKQorCXN0cgly MTQsIFtyMTMsICMxNSA8PCAyXQlAIE91ciByMTQgaXMgdGhlIGZhdWx0aW5nIHIxNQorCW1vdgly MCwgcjEzCisKKwlAIFNhdmUgdGhlIGNhbGxlcidzIENQU1IgKG91ciBTUFNSKSB0b28uCisJbXJz CXIxLCBTUFNSCisJc3RyCXIxLCBbcjEzLCAjMTYgPDwgMl0KKworCUAgU3dpdGNoIHRvIHRoZSBt b2RlIHdlIGNhbWUgZnJvbSB0byBnZXQgcjEzIGFuZCByMTQuCisJQCBJZiBjb21pbmcgZnJvbSB1 c2VyIG1vZGUsIHVzZSBTeXN0ZW0gbW9kZSBpbnN0ZWFkIHNvIHdlJ3JlIHN0aWxsCisJQCBwcml2 aWxlZ2VkLgorCWFuZAlyMSwgcjEsICMweDFmCQlAIHIxID0gU1BTUiBtb2RlCisJY21wCXIxLCAj MHgxMAkJQCBJZiBmcm9tIFVzZXIgbW9kZQorCW1vdmVxCXIxLCAjMHgxZgkJQCBUaGVuIHVzZSBT eXN0ZW0gbW9kZSBpbnN0ZWFkCisKKwltcnMJcjMsIENQU1IJCUAgcjMgPSBvdXIgQ1BTUgorCWJp YwlyMiwgcjMsICMweDFmCisJb3JyCXIyLCByMiwgcjEKKwltc3IJQ1BTUiwgcjIJCUAgQ2hhbmdl IHRvIG1vZGUgcjEKKworCUAgU2F2ZSBvbGQgbW9kZSdzIHIxMywgcjE0CisJc3RyCXIxMywgW3Iw LCAjMTMgPDwgMl0KKwlzdHIJcjE0LCBbcjAsICMxNCA8PCAyXQorCisJbXNyCUNQU1IsIHIzCQlA IEJhY2sgdG8gZmF1bHQgbW9kZQorCisJbGRyCXIxLCBbcjAsICMxNyA8PCAyXQorCXN1YglyMSwg cjEsICMxMgkJQCBGaXggdG8gcG9pbnQgYXQgc3RhcnQgb2YgaGFuZGxlcgorCXN0cglyMSwgW3Iw LCAjMTcgPDwgMl0KKworCUAgQ2FsbCBDIGNvZGUgdG8gZm9ybWF0IHRoZSByZWdpc3RlciBkdW1w LgorCUAgQ2xvYmJlcnMgdGhlIHN0YWNrLCBidXQgd2UncmUgbm90IGdvaW5nIHRvIHJldHVybiBh bnl3YXkuCisJbGRyCXIxMywgPXN0YWNrX2VuZAorCWJsCWR1bXBfcmVnaXN0ZXJzCisxOgorCXdm aQorCWIJMWIKKworQCBXZSB3YW50IHRvIHN0b3JlIGEgdW5pcXVlIHZhbHVlIHRvIGlkZW50aWZ5 IHRoaXMgaGFuZGxlciwgd2l0aG91dCBjb3JydXB0aW5nCitAIGFueSBvZiB0aGUgcmVnaXN0ZXJz LiBTbywgd2Ugc3RvcmUgcjE1ICh3aGljaCB3aWxsIHBvaW50IGp1c3QgYWZ0ZXIgdGhlIGJyYW5j aCkuCitAIExhdGVyLCB3ZSBzdWJ0cmFjdCAxMiBzbyB0aGUgdXNlciBnZXRzIHBvaW50ZWQgYXQg dGhlIHN0YXJ0IG9mIHRoZSBleGNlcHRpb24KK0AgaGFuZGxlci4KKyNkZWZpbmUgRkFVTFQobmFt ZSkJCQlcCisuZ2xvYmwgZmF1bHRfIyNuYW1lOwkJCVwKK2ZhdWx0XyMjbmFtZToJCQkJXAorCWxk cglyMTMsID1mYXVsdF9kdW1wOwlcCisJc3RyCXIxNSwgW3IxMywgIzE3IDw8IDJdOwlcCisJYglm YXVsdAorCitGQVVMVChyZXNldCkKK0ZBVUxUKHVuZGVmaW5lZF9pbnN0cnVjdGlvbikKK0ZBVUxU KHN2YykKK0ZBVUxUKHByZWZldGNoX2NhbGwpCitGQVVMVChwcmVmZXRjaF9hYm9ydCkKK0ZBVUxU KGRhdGFfYWJvcnQpCisKIEAgZXhjZXB0aW9uIGJhc2UgYWRkcmVzcwogLmFsaWduIDUKIC5nbG9i bCBleGNlcHRpb25fdmVjdG9yX3RhYmxlCkBAIC05OSwxMyArMTY2LDEzIEBAIGlycXN0YWNrX2Vu ZDoKIEAgIGluc3RydWN0aW9uIHRvIGNsZWFyIGFuIGV4aXN0aW5nIHRhZyBpcyByZXF1aXJlZCBv biBjb250ZXh0IHN3aXRjaGVzLiIKIEAgLS0gQVJNIENvcnRleC1BIFNlcmllcyBQcm9ncmFtbWVy 4oCZcyBHdWlkZSAoVmVyc2lvbjogNC4wKQogZXhjZXB0aW9uX3ZlY3Rvcl90YWJsZToKLQliCS4g QCByZXNldAotCWIJLiBAIHVuZGVmaW5lZCBpbnN0cnVjdGlvbgotCWIJLiBAIHN1cGVydmlzb3Ig Y2FsbAotCWIJLiBAIHByZWZldGNoIGNhbGwKLQliCS4gQCBwcmVmZXRjaCBhYm9ydAotCWIJLiBA IGRhdGEgYWJvcnQKLQliCWlycV9oYW5kbGVyIEAgaXJxCisJYglmYXVsdF9yZXNldAorCWIJZmF1 bHRfdW5kZWZpbmVkX2luc3RydWN0aW9uCisJYglmYXVsdF9zdmMKKwliCWZhdWx0X3ByZWZldGNo X2NhbGwKKwliCWZhdWx0X3ByZWZldGNoX2Fib3J0CisJYglmYXVsdF9kYXRhX2Fib3J0CisJYglp cnFfaGFuZGxlciBAIElSUQogCS53b3JkIDB4ZTdmMDAwZjAgICAgQCBhYm9ydCBvbiBGSVEKIAog aXJxX2hhbmRsZXI6CmRpZmYgLS1naXQgYS9leHRyYXMvbWluaS1vcy9hcmNoL2FybS9wYW5pYy5j IGIvZXh0cmFzL21pbmktb3MvYXJjaC9hcm0vcGFuaWMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwLi4xMjczNWQ2Ci0tLSAvZGV2L251bGwKKysrIGIvZXh0cmFzL21pbmktb3Mv YXJjaC9hcm0vcGFuaWMuYwpAQCAtMCwwICsxLDk5IEBACisvKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq CisgKiBwYW5pYy5jCisgKgorICogRGlzcGxheXMgYSByZWdpc3RlciBkdW1wIGFuZCBzdGFjayB0 cmFjZSBmb3IgZGVidWdnaW5nLgorICoKKyAqIENvcHlyaWdodCAoYykgMjAxNCwgVGhvbWFzIExl b25hcmQKKyAqIAorICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFy Z2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weQorICogb2YgdGhpcyBzb2Z0d2FyZSBh bmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksIHRvCisg KiBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0 aG91dCBsaW1pdGF0aW9uIHRoZQorICogcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJn ZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yCisgKiBzZWxsIGNvcGll cyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0 d2FyZSBpcworICogZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcg Y29uZGl0aW9uczoKKyAqIAorICogVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMg cGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4KKyAqIGFsbCBjb3BpZXMgb3Ig c3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgorICogCisgKiBUSEUgU09GVFdB UkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQ UkVTUyBPUiAKKyAqIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdB UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLCAKKyAqIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSAKKyAq IEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERB TUFHRVMgT1IgT1RIRVIgCisgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENP TlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyAKKyAqIEZST00sIE9VVCBPRiBPUiBJ TiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgCisgKiBE RUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCisgKi8KKworI2luY2x1ZGUgPG1pbmktb3Mvb3MuaD4K KyNpbmNsdWRlIDxhcmNoX21tLmg+CisKK2V4dGVybiBpbnQgc3RhY2tbXTsKK2V4dGVybiBpbnQg c3RhY2tfZW5kW107CitleHRlcm4gaW50IGlycXN0YWNrW107CitleHRlcm4gaW50IGlycXN0YWNr X2VuZFtdOworCit0eXBlZGVmIHZvaWQgaGFuZGxlcih2b2lkKTsKKworZXh0ZXJuIGhhbmRsZXIg ZmF1bHRfcmVzZXQ7CitleHRlcm4gaGFuZGxlciBmYXVsdF91bmRlZmluZWRfaW5zdHJ1Y3Rpb247 CitleHRlcm4gaGFuZGxlciBmYXVsdF9zdmM7CitleHRlcm4gaGFuZGxlciBmYXVsdF9wcmVmZXRj aF9jYWxsOworZXh0ZXJuIGhhbmRsZXIgZmF1bHRfcHJlZmV0Y2hfYWJvcnQ7CitleHRlcm4gaGFu ZGxlciBmYXVsdF9kYXRhX2Fib3J0OworCit2b2lkIGR1bXBfcmVnaXN0ZXJzKGludCAqc2F2ZWRf cmVnaXN0ZXJzKSB7CisgICAgc3RhdGljIGludCBpbl9kdW1wID0gMDsKKyAgICBpbnQgKnNwLCAq c3RhY2tfdG9wLCAqeDsKKyAgICBjaGFyICpmYXVsdF9uYW1lOworICAgIHZvaWQgKmZhdWx0X2hh bmRsZXI7CisgICAgaW50IGk7CisKKyAgICBpZiAoaW5fZHVtcCkKKyAgICB7CisgICAgICAgIHBy aW50aygiQ3Jhc2ggd2hpbGUgaW4gZHVtcF9yZWdpc3RlcnMhIE5vdCBnZW5lcmF0aW5nIGEgc2Vj b25kIHJlcG9ydC5cbiIpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaW5fZHVtcCA9 IDE7CisKKyAgICBmYXVsdF9oYW5kbGVyID0gKGhhbmRsZXIgKikgc2F2ZWRfcmVnaXN0ZXJzWzE3 XTsKKyAgICBpZiAoZmF1bHRfaGFuZGxlciA9PSBmYXVsdF9yZXNldCkKKyAgICAgICAgZmF1bHRf bmFtZSA9ICJyZXNldCI7CisgICAgZWxzZSBpZiAoZmF1bHRfaGFuZGxlciA9PSBmYXVsdF91bmRl ZmluZWRfaW5zdHJ1Y3Rpb24pCisgICAgICAgIGZhdWx0X25hbWUgPSAidW5kZWZpbmVkX2luc3Ry dWN0aW9uIjsKKyAgICBlbHNlIGlmIChmYXVsdF9oYW5kbGVyID09IGZhdWx0X3N2YykKKyAgICAg ICAgZmF1bHRfbmFtZSA9ICJzdmMiOworICAgIGVsc2UgaWYgKGZhdWx0X2hhbmRsZXIgPT0gZmF1 bHRfcHJlZmV0Y2hfY2FsbCkKKyAgICAgICAgZmF1bHRfbmFtZSA9ICJwcmVmZXRjaF9jYWxsIjsK KyAgICBlbHNlIGlmIChmYXVsdF9oYW5kbGVyID09IGZhdWx0X3ByZWZldGNoX2Fib3J0KQorICAg ICAgICBmYXVsdF9uYW1lID0gInByZWZldGNoX2Fib3J0IjsKKyAgICBlbHNlIGlmIChmYXVsdF9o YW5kbGVyID09IGZhdWx0X2RhdGFfYWJvcnQpCisgICAgICAgIGZhdWx0X25hbWUgPSAiZGF0YV9h Ym9ydCI7CisgICAgZWxzZQorICAgICAgICBmYXVsdF9uYW1lID0gInVua25vd24gZmF1bHQgdHlw ZSEiOworCisgICAgcHJpbnRrKCJGYXVsdCBoYW5kbGVyIGF0ICV4IGNhbGxlZCAoJXMpXG4iLCBm YXVsdF9oYW5kbGVyLCBmYXVsdF9uYW1lKTsKKworICAgIGZvciAoaSA9IDA7IGkgPCAxNjsgaSsr KSB7CisgICAgICAgIHByaW50aygiciVkID0gJXhcbiIsIGksIHNhdmVkX3JlZ2lzdGVyc1tpXSk7 CisgICAgfQorICAgIHByaW50aygiQ1BTUiA9ICV4XG4iLCBzYXZlZF9yZWdpc3RlcnNbMTZdKTsK KworICAgIHByaW50aygiU3RhY2sgZHVtcCAoaW5uZXJtb3N0IGxhc3QpXG4iKTsKKyAgICBzcCA9 IChpbnQgKikgc2F2ZWRfcmVnaXN0ZXJzWzEzXTsKKworICAgIGlmIChzcCA+PSBzdGFjayAmJiBz cCA8PSBzdGFja19lbmQpCisgICAgICAgIHN0YWNrX3RvcCA9IHN0YWNrX2VuZDsgICAgICAgICAg ICAgICAgICAgICAgICAgIC8qIFRoZSBzbWFsbCBib290IHN0YWNrICovCisgICAgZWxzZSBpZiAo c3AgPj0gaXJxc3RhY2sgJiYgc3AgPD0gaXJxc3RhY2tfZW5kKQorICAgICAgICBzdGFja190b3Ag PSBpcnFzdGFja19lbmQ7ICAgICAgICAgICAgICAgICAgICAgICAvKiBUaGUgc21hbGwgSVJRIHN0 YWNrICovCisgICAgZWxzZQorICAgICAgICBzdGFja190b3AgPSAoaW50ICopICgoKCh1bnNpZ25l ZCBsb25nKSBzcCkgfCAoX19TVEFDS19TSVpFLTEpKSArIDEpOyAgICAgICAgLyogQSBub3JtYWwg dGhyZWFkIHN0YWNrICovCisKKyAgICBmb3IgKHggPSBzdGFja190b3AgLSAxOyB4ID49IHNwOyB4 LS0pCisgICAgeworICAgICAgICBwcmludGsoIiAgWyU4cF0gJTh4XG4iLCB4LCAqeCk7CisgICAg fQorICAgIHByaW50aygiRW5kIG9mIHN0YWNrXG4iKTsKKworICAgIGluX2R1bXAgPSAwOworfQpk aWZmIC0tZ2l0IGEvZXh0cmFzL21pbmktb3MvaW5jbHVkZS9hcm0vYXJjaF9tbS5oIGIvZXh0cmFz L21pbmktb3MvaW5jbHVkZS9hcm0vYXJjaF9tbS5oCmluZGV4IGJlMTRhZGEuLmU5NDNhOWIgMTAw NjQ0Ci0tLSBhL2V4dHJhcy9taW5pLW9zL2luY2x1ZGUvYXJtL2FyY2hfbW0uaAorKysgYi9leHRy YXMvbWluaS1vcy9pbmNsdWRlL2FybS9hcmNoX21tLmgKQEAgLTIsNyArMiw3IEBACiAjZGVmaW5l IF9BUkNIX01NX0hfCiAKIGV4dGVybiBjaGFyIF90ZXh0LCBfZXRleHQsIF9lcm9kYXRhLCBfZWRh dGEsIF9lbmQsIF9fYnNzX3N0YXJ0OwotZXh0ZXJuIGNoYXIgc3RhY2tbXTsKK2V4dGVybiBpbnQg c3RhY2tbXTsKIAogI2RlZmluZSBQQUdFX1NISUZUICAgICAgICAxMgogI2RlZmluZSBQQUdFX1NJ WkUgICAgICAgICgxIDw8IFBBR0VfU0hJRlQpCmRpZmYgLS1naXQgYS9leHRyYXMvbWluaS1vcy9p bmNsdWRlL2FybS9vcy5oIGIvZXh0cmFzL21pbmktb3MvaW5jbHVkZS9hcm0vb3MuaAppbmRleCAy MWU5Mjc2Li44ZDc2MDg5IDEwMDY0NAotLS0gYS9leHRyYXMvbWluaS1vcy9pbmNsdWRlL2FybS9v cy5oCisrKyBiL2V4dHJhcy9taW5pLW9zL2luY2x1ZGUvYXJtL29zLmgKQEAgLTEwLDcgKzEwLDcg QEAKIHZvaWQgYXJjaF9maW5pKHZvaWQpOwogdm9pZCB0aW1lcl9oYW5kbGVyKGV2dGNobl9wb3J0 X3QgcG9ydCwgc3RydWN0IHB0X3JlZ3MgKnJlZ3MsIHZvaWQgKmlnbik7CiAKLSNkZWZpbmUgQlVH KCkgd2hpbGUoMSl7fQorI2RlZmluZSBCVUcoKSB3aGlsZSgxKXthc20gdm9sYXRpbGUgKCIud29y ZCAweGU3ZjAwMGYwXG4iKTt9IC8qIFVuZGVmaW5lZCBpbnN0cnVjdGlvbjsgd2lsbCBjYWxsIG91 ciBmYXVsdCBoYW5kbGVyLiAqLwogCiAjZGVmaW5lIHNtcF9wcm9jZXNzb3JfaWQoKSAwCiAKLS0g CjIuMC4wCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K WGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlz dHMueGVuLm9yZy94ZW4tZGV2ZWwK