From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Leonard Subject: [PATCH ARM v7 12/13] mini-os: arm: show registers, stack and exception vector on fault Date: Fri, 8 Aug 2014 16:47:41 +0100 Message-ID: <1407512862-9373-13-git-send-email-talex5@gmail.com> References: <1407512862-9373-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.bemta14.messagelabs.com ([193.109.254.103]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1XFmOO-0007Ed-Hc for xen-devel@lists.xenproject.org; Fri, 08 Aug 2014 15:47:44 +0000 Received: by mail-wi0-f173.google.com with SMTP id f8so1249888wiw.12 for ; Fri, 08 Aug 2014 08:47:42 -0700 (PDT) In-Reply-To: <1407512862-9373-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+CgotLS0KCi0g RXhpdCB3aXRoIFNIVVRET1dOX2NyYXNoIG9uIEJVRyBvciBmYXVsdCAoc3VnZ2VzdGVkIGJ5IElh biBDYW1wYmVsbCkuCi0gRml4ZWQgcHJpbnRrIGZvcm1hdCB0eXBlcy4KLS0tCiBleHRyYXMvbWlu aS1vcy9BUk0tVE9ETy50eHQgICAgIHwgIDEgLQogZXh0cmFzL21pbmktb3MvYXJjaC9hcm0vYXJt MzIuUyB8IDc1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0KIGV4dHJhcy9taW5pLW9z L2FyY2gvYXJtL3BhbmljLmMgfCA5OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxNjYgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMo LSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBleHRyYXMvbWluaS1vcy9hcmNoL2FybS9wYW5pYy5jCgpk aWZmIC0tZ2l0IGEvZXh0cmFzL21pbmktb3MvQVJNLVRPRE8udHh0IGIvZXh0cmFzL21pbmktb3Mv QVJNLVRPRE8udHh0CmluZGV4IDMyMjZkMzkuLjFlNDBkYjEgMTAwNjQ0Ci0tLSBhL2V4dHJhcy9t aW5pLW9zL0FSTS1UT0RPLnR4dAorKysgYi9leHRyYXMvbWluaS1vcy9BUk0tVE9ETy50eHQKQEAg LTEsNCArMSwzIEBACi0qIHN1cHBvcnQgYWJvcnQgZXhjZXB0aW9uIGhhbmRsaW5nICggYW5kIG90 aGVycyApCiAqIGdpYyByZXF1ZXN0X2lycSBpbXBsZW1lbnRhdGlvbiwgY3VycmVudGx5IGFsbCBJ UlFzIGFsbCBoYXJkY29kZWQgaW4gZ2ljIGlycSBoYW5kbGVyLgogKiBiaW5kXyoKICogYWRkIG11 bHRpcGxlIGNwdSBzdXBwb3J0ICg/KQpkaWZmIC0tZ2l0IGEvZXh0cmFzL21pbmktb3MvYXJjaC9h cm0vYXJtMzIuUyBiL2V4dHJhcy9taW5pLW9zL2FyY2gvYXJtL2FybTMyLlMKaW5kZXggNzMyMjNj OC4uYTA4YTE3MCAxMDA2NDQKLS0tIGEvZXh0cmFzL21pbmktb3MvYXJjaC9hcm0vYXJtMzIuUwor KysgYi9leHRyYXMvbWluaS1vcy9hcmNoL2FybS9hcm0zMi5TCkBAIC0xNjIsOCArMTYyLDY5IEBA IGlycXN0YWNrOgogCS5maWxsICgxMDI0KSwgNCwgMHgwCiBpcnFzdGFja19lbmQ6CiAKK2ZhdWx0 X2R1bXA6CisJLmZpbGwgMTgsIDQsIDB4MAkJQCBPbiBmYXVsdCwgd2Ugc2F2ZSB0aGUgcmVnaXN0 ZXJzICsgQ1BTUiArIGhhbmRsZXIgYWRkcmVzcworCiAucG9wc2VjdGlvbgogCitmYXVsdDoKKwlj cHNpZAlhaWYJCQlAIERpc2FibGUgaW50ZXJydXB0cworCisJbGRyCXIxMywgPWZhdWx0X2R1bXAK KwlzdG1pYQlyMTMsIHtyMC1yMTJ9CQlAIER1bXAgdGhlIG5vbi1iYW5rZWQgcmVnaXN0ZXJzIGRp cmVjdGx5ICh3ZWxsLCB1bmxlc3MgZnJvbSBGSVEgbW9kZSkKKwlzdHIJcjE0LCBbcjEzLCAjMTUg PDwgMl0JQCBPdXIgcjE0IGlzIHRoZSBmYXVsdGluZyByMTUKKwltb3YJcjAsIHIxMworCisJQCBT YXZlIHRoZSBjYWxsZXIncyBDUFNSIChvdXIgU1BTUikgdG9vLgorCW1ycwlyMSwgU1BTUgorCXN0 cglyMSwgW3IxMywgIzE2IDw8IDJdCisKKwlAIFN3aXRjaCB0byB0aGUgbW9kZSB3ZSBjYW1lIGZy b20gdG8gZ2V0IHIxMyBhbmQgcjE0LgorCUAgSWYgY29taW5nIGZyb20gdXNlciBtb2RlLCB1c2Ug U3lzdGVtIG1vZGUgaW5zdGVhZCBzbyB3ZSdyZSBzdGlsbAorCUAgcHJpdmlsZWdlZC4KKwlhbmQJ cjEsIHIxLCAjMHgxZgkJQCByMSA9IFNQU1IgbW9kZQorCWNtcAlyMSwgIzB4MTAJCUAgSWYgZnJv bSBVc2VyIG1vZGUKKwltb3ZlcQlyMSwgIzB4MWYJCUAgVGhlbiB1c2UgU3lzdGVtIG1vZGUgaW5z dGVhZAorCisJbXJzCXIzLCBDUFNSCQlAIHIzID0gb3VyIENQU1IKKwliaWMJcjIsIHIzLCAjMHgx ZgorCW9ycglyMiwgcjIsIHIxCisJbXNyCUNQU1IsIHIyCQlAIENoYW5nZSB0byBtb2RlIHIxCisK KwlAIFNhdmUgb2xkIG1vZGUncyByMTMsIHIxNAorCXN0cglyMTMsIFtyMCwgIzEzIDw8IDJdCisJ c3RyCXIxNCwgW3IwLCAjMTQgPDwgMl0KKworCW1zcglDUFNSLCByMwkJQCBCYWNrIHRvIGZhdWx0 IG1vZGUKKworCWxkcglyMSwgW3IwLCAjMTcgPDwgMl0KKwlzdWIJcjEsIHIxLCAjMTIJCUAgRml4 IHRvIHBvaW50IGF0IHN0YXJ0IG9mIGhhbmRsZXIKKwlzdHIJcjEsIFtyMCwgIzE3IDw8IDJdCisK KwlAIENhbGwgQyBjb2RlIHRvIGZvcm1hdCB0aGUgcmVnaXN0ZXIgZHVtcC4KKwlAIENsb2JiZXJz IHRoZSBzdGFjaywgYnV0IHdlJ3JlIG5vdCBnb2luZyB0byByZXR1cm4gYW55d2F5LgorCWxkcglz cCwgPV9ib290X3N0YWNrX2VuZAorCWJsCWR1bXBfcmVnaXN0ZXJzCisJYglkb19leGl0CisKK0Ag V2Ugd2FudCB0byBzdG9yZSBhIHVuaXF1ZSB2YWx1ZSB0byBpZGVudGlmeSB0aGlzIGhhbmRsZXIs IHdpdGhvdXQgY29ycnVwdGluZworQCBhbnkgb2YgdGhlIHJlZ2lzdGVycy4gU28sIHdlIHN0b3Jl IHIxNSAod2hpY2ggd2lsbCBwb2ludCBqdXN0IGFmdGVyIHRoZSBicmFuY2gpLgorQCBMYXRlciwg d2Ugc3VidHJhY3QgMTIgc28gdGhlIHVzZXIgZ2V0cyBwb2ludGVkIGF0IHRoZSBzdGFydCBvZiB0 aGUgZXhjZXB0aW9uCitAIGhhbmRsZXIuCisjZGVmaW5lIEZBVUxUKG5hbWUpCQkJXAorLmdsb2Js IGZhdWx0XyMjbmFtZTsJCQlcCitmYXVsdF8jI25hbWU6CQkJCVwKKwlsZHIJcjEzLCA9ZmF1bHRf ZHVtcDsJXAorCXN0cglyMTUsIFtyMTMsICMxNyA8PCAyXTsJXAorCWIJZmF1bHQKKworRkFVTFQo cmVzZXQpCitGQVVMVCh1bmRlZmluZWRfaW5zdHJ1Y3Rpb24pCitGQVVMVChzdmMpCitGQVVMVChw cmVmZXRjaF9jYWxsKQorRkFVTFQocHJlZmV0Y2hfYWJvcnQpCitGQVVMVChkYXRhX2Fib3J0KQor CiBAIGV4Y2VwdGlvbiBiYXNlIGFkZHJlc3MKIC5hbGlnbiA1CiAuZ2xvYmwgZXhjZXB0aW9uX3Zl Y3Rvcl90YWJsZQpAQCAtMTczLDEzICsyMzQsMTMgQEAgaXJxc3RhY2tfZW5kOgogQCAgaW5zdHJ1 Y3Rpb24gdG8gY2xlYXIgYW4gZXhpc3RpbmcgdGFnIGlzIHJlcXVpcmVkIG9uIGNvbnRleHQgc3dp dGNoZXMuIgogQCAtLSBBUk0gQ29ydGV4LUEgU2VyaWVzIFByb2dyYW1tZXLigJlzIEd1aWRlIChW ZXJzaW9uOiA0LjApCiBleGNlcHRpb25fdmVjdG9yX3RhYmxlOgotCWIJLiBAIHJlc2V0Ci0JYgku IEAgdW5kZWZpbmVkIGluc3RydWN0aW9uCi0JYgkuIEAgc3VwZXJ2aXNvciBjYWxsCi0JYgkuIEAg cHJlZmV0Y2ggY2FsbAotCWIJLiBAIHByZWZldGNoIGFib3J0Ci0JYgkuIEAgZGF0YSBhYm9ydAot CWIJaXJxX2hhbmRsZXIgQCBpcnEKKwliCWZhdWx0X3Jlc2V0CisJYglmYXVsdF91bmRlZmluZWRf aW5zdHJ1Y3Rpb24KKwliCWZhdWx0X3N2YworCWIJZmF1bHRfcHJlZmV0Y2hfY2FsbAorCWIJZmF1 bHRfcHJlZmV0Y2hfYWJvcnQKKwliCWZhdWx0X2RhdGFfYWJvcnQKKwliCWlycV9oYW5kbGVyIEAg SVJRCiAJLndvcmQgMHhlN2YwMDBmMCAgICBAIGFib3J0IG9uIEZJUQogCiBAIENhbGwgZmF1bHRf dW5kZWZpbmVkX2luc3RydWN0aW9uIGluICJVbmRlZmluZWQgbW9kZSIKZGlmZiAtLWdpdCBhL2V4 dHJhcy9taW5pLW9zL2FyY2gvYXJtL3BhbmljLmMgYi9leHRyYXMvbWluaS1vcy9hcmNoL2FybS9w YW5pYy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEwNDlkMDUKLS0tIC9k ZXYvbnVsbAorKysgYi9leHRyYXMvbWluaS1vcy9hcmNoL2FybS9wYW5pYy5jCkBAIC0wLDAgKzEs OTggQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIHBhbmljLmMKKyAqCisgKiBEaXNwbGF5 cyBhIHJlZ2lzdGVyIGR1bXAgYW5kIHN0YWNrIHRyYWNlIGZvciBkZWJ1Z2dpbmcuCisgKgorICog Q29weXJpZ2h0IChjKSAyMDE0LCBUaG9tYXMgTGVvbmFyZAorICogCisgKiBQZXJtaXNzaW9uIGlz IGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcg YSBjb3B5CisgKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24g ZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8KKyAqIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhv dXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlCisgKiByaWdo dHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJs aWNlbnNlLCBhbmQvb3IKKyAqIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBl cm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCisgKiBmdXJuaXNoZWQgdG8gZG8g c28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICogCisgKiBUaGUgYWJv dmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBp bmNsdWRlZCBpbgorICogYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUg U29mdHdhcmUuCisgKiAKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRI T1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SIAorICogSU1QTElFRCwgSU5DTFVE SU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFks IAorICogRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVO VC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIAorICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVS UyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUiAKKyAqIExJQUJJTElU WSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBB UklTSU5HIAorICogRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdB UkUgT1IgVEhFIFVTRSBPUiBPVEhFUiAKKyAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KKyAq LworCisjaW5jbHVkZSA8bWluaS1vcy9vcy5oPgorI2luY2x1ZGUgPG1pbmktb3MvY29uc29sZS5o PgorI2luY2x1ZGUgPGFyY2hfbW0uaD4KKworZXh0ZXJuIGludCBpcnFzdGFja1tdOworZXh0ZXJu IGludCBpcnFzdGFja19lbmRbXTsKKwordHlwZWRlZiB2b2lkIGhhbmRsZXIodm9pZCk7CisKK2V4 dGVybiBoYW5kbGVyIGZhdWx0X3Jlc2V0OworZXh0ZXJuIGhhbmRsZXIgZmF1bHRfdW5kZWZpbmVk X2luc3RydWN0aW9uOworZXh0ZXJuIGhhbmRsZXIgZmF1bHRfc3ZjOworZXh0ZXJuIGhhbmRsZXIg ZmF1bHRfcHJlZmV0Y2hfY2FsbDsKK2V4dGVybiBoYW5kbGVyIGZhdWx0X3ByZWZldGNoX2Fib3J0 OworZXh0ZXJuIGhhbmRsZXIgZmF1bHRfZGF0YV9hYm9ydDsKKwordm9pZCBkdW1wX3JlZ2lzdGVy cyhpbnQgKnNhdmVkX3JlZ2lzdGVycykgeworICAgIHN0YXRpYyBpbnQgaW5fZHVtcCA9IDA7Cisg ICAgaW50ICpzcCwgKnN0YWNrX3RvcCwgKng7CisgICAgY2hhciAqZmF1bHRfbmFtZTsKKyAgICB2 b2lkICpmYXVsdF9oYW5kbGVyOworICAgIGludCBpOworCisgICAgaWYgKGluX2R1bXApCisgICAg eworICAgICAgICBwcmludGsoIkNyYXNoIHdoaWxlIGluIGR1bXBfcmVnaXN0ZXJzISBOb3QgZ2Vu ZXJhdGluZyBhIHNlY29uZCByZXBvcnQuXG4iKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwor ICAgIGluX2R1bXAgPSAxOworCisgICAgZmF1bHRfaGFuZGxlciA9IChoYW5kbGVyICopIHNhdmVk X3JlZ2lzdGVyc1sxN107CisgICAgaWYgKGZhdWx0X2hhbmRsZXIgPT0gZmF1bHRfcmVzZXQpCisg ICAgICAgIGZhdWx0X25hbWUgPSAicmVzZXQiOworICAgIGVsc2UgaWYgKGZhdWx0X2hhbmRsZXIg PT0gZmF1bHRfdW5kZWZpbmVkX2luc3RydWN0aW9uKQorICAgICAgICBmYXVsdF9uYW1lID0gInVu ZGVmaW5lZF9pbnN0cnVjdGlvbiI7CisgICAgZWxzZSBpZiAoZmF1bHRfaGFuZGxlciA9PSBmYXVs dF9zdmMpCisgICAgICAgIGZhdWx0X25hbWUgPSAic3ZjIjsKKyAgICBlbHNlIGlmIChmYXVsdF9o YW5kbGVyID09IGZhdWx0X3ByZWZldGNoX2NhbGwpCisgICAgICAgIGZhdWx0X25hbWUgPSAicHJl ZmV0Y2hfY2FsbCI7CisgICAgZWxzZSBpZiAoZmF1bHRfaGFuZGxlciA9PSBmYXVsdF9wcmVmZXRj aF9hYm9ydCkKKyAgICAgICAgZmF1bHRfbmFtZSA9ICJwcmVmZXRjaF9hYm9ydCI7CisgICAgZWxz ZSBpZiAoZmF1bHRfaGFuZGxlciA9PSBmYXVsdF9kYXRhX2Fib3J0KQorICAgICAgICBmYXVsdF9u YW1lID0gImRhdGFfYWJvcnQiOworICAgIGVsc2UKKyAgICAgICAgZmF1bHRfbmFtZSA9ICJ1bmtu b3duIGZhdWx0IHR5cGUhIjsKKworICAgIHByaW50aygiRmF1bHQgaGFuZGxlciBhdCAlcCBjYWxs ZWQgKCVzKVxuIiwgZmF1bHRfaGFuZGxlciwgZmF1bHRfbmFtZSk7CisKKyAgICBmb3IgKGkgPSAw OyBpIDwgMTY7IGkrKykgeworICAgICAgICBwcmludGsoInIlZCA9ICV4XG4iLCBpLCBzYXZlZF9y ZWdpc3RlcnNbaV0pOworICAgIH0KKyAgICBwcmludGsoIkNQU1IgPSAleFxuIiwgc2F2ZWRfcmVn aXN0ZXJzWzE2XSk7CisKKyAgICBwcmludGsoIlN0YWNrIGR1bXAgKGlubmVybW9zdCBsYXN0KVxu Iik7CisgICAgc3AgPSAoaW50ICopIHNhdmVkX3JlZ2lzdGVyc1sxM107CisKKyAgICBpZiAoc3Ag Pj0gX2Jvb3Rfc3RhY2sgJiYgc3AgPD0gX2Jvb3Rfc3RhY2tfZW5kKQorICAgICAgICBzdGFja190 b3AgPSBfYm9vdF9zdGFja19lbmQ7ICAgICAgICAgICAgICAgICAgICAvKiBUaGUgYm9vdCBzdGFj ayAqLworICAgIGVsc2UgaWYgKHNwID49IGlycXN0YWNrICYmIHNwIDw9IGlycXN0YWNrX2VuZCkK KyAgICAgICAgc3RhY2tfdG9wID0gaXJxc3RhY2tfZW5kOyAgICAgICAgICAgICAgICAgICAgICAg LyogVGhlIElSUSBzdGFjayAqLworICAgIGVsc2UKKyAgICAgICAgc3RhY2tfdG9wID0gKGludCAq KSAoKCgodW5zaWduZWQgbG9uZykgc3ApIHwgKF9fU1RBQ0tfU0laRS0xKSkgKyAxKTsgICAgICAg IC8qIEEgbm9ybWFsIHRocmVhZCBzdGFjayAqLworCisgICAgZm9yICh4ID0gc3RhY2tfdG9wIC0g MTsgeCA+PSBzcDsgeC0tKQorICAgIHsKKyAgICAgICAgcHJpbnRrKCIgIFslOHBdICU4eFxuIiwg eCwgKngpOworICAgIH0KKyAgICBwcmludGsoIkVuZCBvZiBzdGFja1xuIik7CisKKyAgICBpbl9k dW1wID0gMDsKK30KLS0gCjIuMC4zCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVu Lm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK