From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============6320482951356729469==" MIME-Version: 1.0 From: Mark Wielaard To: elfutils-devel@lists.fedorahosted.org Subject: Re: [PATCH] libebl: Add ebl_unwind_ret_mask. Date: Sun, 15 Jun 2014 22:21:31 +0200 Message-ID: <1402863691.21102.23.camel@bordewijk.wildebeest.org> In-Reply-To: 20140615195956.GA10001@roeckx.be --===============6320482951356729469== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable On Sun, 2014-06-15 at 21:59 +0200, Kurt Roeckx wrote: > On Sun, Jun 15, 2014 at 09:27:32PM +0200, Kurt Roeckx wrote: > > = > > I'm not sure what that code is doing there. But it seems to be > > looking at a 64 bit core file (x86_64, arm64, s390x) and then > > create a 64 bit pointer is trying to dereference that. > = > That would be a pointer to a 64 bit object of course. Sparc > probably has stricter alignment requirements than the other > arches. I just wonder why it worked before. Indeed. You seem to be right that we are trying to read possibly unaligned data which would cause a bus error on sparc. There was even a helpful FIXME in the code about it. Why we didn't see that before is a mystery. But the attached patch should solve it. Could you test it? Thanks, Mark --===============6320482951356729469== Content-Type: text/x-patch MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-libdwfl-linux-core-attach.c-handle-possible-unaligne.patch" PkZyb20gN2E2ZDhhMGUzNjk0YWY0OGEzOGUwNDYxZTE1ZmNkZTBhMDZiYWQ1OCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTWFyayBXaWVsYWFyZCA8bWp3QHJlZGhhdC5jb20+CkRhdGU6 IFN1biwgMTUgSnVuIDIwMTQgMjI6MTQ6MDQgKzAyMDAKU3ViamVjdDogW1BBVENIXSBsaWJkd2Zs OiBsaW51eC1jb3JlLWF0dGFjaC5jIGhhbmRsZSBwb3NzaWJsZSB1bmFsaWduZWQgZGF0YSBhY2Nl c3MuCgpVc2UgbGliZHcvbWVtb3J5LWFjY2Vzcy5oIG1hY3JvcyByZWFkXzR1Ynl0ZV91bmFsaWdu ZWRfbm9uY3Z0IGFuZApyZWFkXzh1Ynl0ZV91bmFsaWduZWRfbm9uY3Z0IHRvIGFjY2VzcyBwb3Nz aWJseSB1bmFsaWduZWQgZGF0YSBpbgpjb3JlIGZpbGVzLgoKU2lnbmVkLW9mZi1ieTogTWFyayBX aWVsYWFyZCA8bWp3QHJlZGhhdC5jb20+Ci0tLQogbGliZHdmbC9DaGFuZ2VMb2cgICAgICAgICAg IHwgICAgOSArKysrKysrKysKIGxpYmR3ZmwvbGludXgtY29yZS1hdHRhY2guYyB8ICAgMjIgKysr KysrKysrKystLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAyMCBpbnNlcnRpb25zKCspLCAx MSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9saWJkd2ZsL0NoYW5nZUxvZyBiL2xpYmR3Zmwv Q2hhbmdlTG9nCmluZGV4IGFjOTJhMjEuLmYxYmMxYTcgMTAwNjQ0Ci0tLSBhL2xpYmR3ZmwvQ2hh bmdlTG9nCisrKyBiL2xpYmR3ZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTQtMDYt MTUgIE1hcmsgV2llbGFhcmQgIDxtandAcmVkaGF0LmNvbT4KKworCSogbGludXgtY29yZS1hdHRh Y2guYyAoY29yZV9tZW1vcnlfcmVhZCk6IFVzZSBsaWJkdy9tZW1vcnktYWNjZXNzLmgKKwltYWNy b3MgcmVhZF80dWJ5dGVfdW5hbGlnbmVkX25vbmN2dCBhbmQgcmVhZF84dWJ5dGVfdW5hbGlnbmVk X25vbmN2dAorCXRvIHJlYWQgcG9zc2libHkgdW5hbGlnbmVkIGRhdGEuCisJKGNvcmVfbmV4dF90 aHJlYWQpOiBMaWtld2lzZS4KKwkoY29yZV9zZXRfaW5pdGlhbF9yZWdpc3RlcnMpOiBMaWtld2lz ZS4KKwkoZHdmbF9jb3JlX2ZpbGVfYXR0YWNoKTogTGlrZXdpc2UuCisKIDIwMTQtMDYtMTEgIE1h cmsgV2llbGFhcmQgIDxtandAcmVkaGF0LmNvbT4KIAogCSogZHdmbF9mcmFtZS5jIChfX2xpYmR3 ZmxfcHJvY2Vzc19mcmVlKTogUmVzZXQgZHdmbC0+YXR0YWNoZXJyLgpkaWZmIC0tZ2l0IGEvbGli ZHdmbC9saW51eC1jb3JlLWF0dGFjaC5jIGIvbGliZHdmbC9saW51eC1jb3JlLWF0dGFjaC5jCmlu ZGV4IDdlZjNmMjUuLjVhN2IzYjMgMTAwNjQ0Ci0tLSBhL2xpYmR3ZmwvbGludXgtY29yZS1hdHRh Y2guYworKysgYi9saWJkd2ZsL2xpbnV4LWNvcmUtYXR0YWNoLmMKQEAgLTMwLDYgKzMwLDggQEAK ICNpbmNsdWRlIDxmY250bC5oPgogI2luY2x1ZGUgInN5c3RlbS5oIgogCisjaW5jbHVkZSAiLi4v bGliZHcvbWVtb3J5LWFjY2Vzcy5oIgorCiAjaWZuZGVmIE1JTgogIyBkZWZpbmUgTUlOKGEsIGIp ICgoYSkgPCAoYikgPyAoYSkgOiAoYikpCiAjZW5kaWYKQEAgLTgzLDEyICs4NSwxMCBAQCBjb3Jl X21lbW9yeV9yZWFkIChEd2ZsICpkd2ZsLCBEd2FyZl9BZGRyIGFkZHIsIER3YXJmX1dvcmQgKnJl c3VsdCwKIAkgIHJldHVybiBmYWxzZTsKIAl9CiAgICAgICBhc3NlcnQgKGRhdGEtPmRfc2l6ZSA9 PSBieXRlcyk7Ci0gICAgICAvKiBGSVhNRTogQ3VycmVudGx5IGFueSBhcmNoIHN1cHBvcnRlZCBm b3IgdW53aW5kaW5nIHN1cHBvcnRzCi0JIHVuYWxpZ25lZCBhY2Nlc3MuICAqLwogICAgICAgaWYg KGJ5dGVzID09IDgpCi0JKnJlc3VsdCA9ICooY29uc3QgdWludDY0X3QgKikgZGF0YS0+ZF9idWY7 CisJKnJlc3VsdCA9IHJlYWRfOHVieXRlX3VuYWxpZ25lZF9ub25jdnQgKGRhdGEtPmRfYnVmKTsK ICAgICAgIGVsc2UKLQkqcmVzdWx0ID0gKihjb25zdCB1aW50MzJfdCAqKSBkYXRhLT5kX2J1ZjsK KwkqcmVzdWx0ID0gcmVhZF80dWJ5dGVfdW5hbGlnbmVkX25vbmN2dCAoZGF0YS0+ZF9idWYpOwog ICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICBfX2xpYmR3Zmxfc2V0ZXJybm8gKERXRkxfRV9B RERSX09VVE9GUkFOR0UpOwpAQCAtMTUwLDcgKzE1MCw3IEBAIGNvcmVfbmV4dF90aHJlYWQgKER3 ZmwgKmR3ZmwgX19hdHRyaWJ1dGVfXyAoKHVudXNlZCkpLCB2b2lkICpkd2ZsX2FyZywKIAkgIGJy ZWFrOwogICAgICAgaWYgKGl0ZW0gPT0gaXRlbXMgKyBuaXRlbXMpCiAJY29udGludWU7Ci0gICAg ICB1aW50MzJfdCB2YWwzMiA9ICooY29uc3QgdWludDMyX3QgKikgKGRlc2MgKyBpdGVtLT5vZmZz ZXQpOworICAgICAgdWludDMyX3QgdmFsMzIgPSByZWFkXzR1Ynl0ZV91bmFsaWduZWRfbm9uY3Z0 IChkZXNjICsgaXRlbS0+b2Zmc2V0KTsKICAgICAgIHZhbDMyID0gKGVsZl9nZXRpZGVudCAoY29y ZSwgTlVMTClbRUlfREFUQV0gPT0gRUxGREFUQTJNU0IKIAkJPyBiZTMydG9oICh2YWwzMikgOiBs ZTMydG9oICh2YWwzMikpOwogICAgICAgcGlkX3QgdGlkID0gKGludDMyX3QpIHZhbDMyOwpAQCAt MjAxLDcgKzIwMSw3IEBAIGNvcmVfc2V0X2luaXRpYWxfcmVnaXN0ZXJzIChEd2ZsX1RocmVhZCAq dGhyZWFkLCB2b2lkICp0aHJlYWRfYXJnX3ZvaWRwKQogICBhc3NlcnQgKGl0ZW0gPCBpdGVtcyAr IG5pdGVtcyk7CiAgIHBpZF90IHRpZDsKICAgewotICAgIHVpbnQzMl90IHZhbDMyID0gKihjb25z dCB1aW50MzJfdCAqKSAoZGVzYyArIGl0ZW0tPm9mZnNldCk7CisgICAgdWludDMyX3QgdmFsMzIg PSByZWFkXzR1Ynl0ZV91bmFsaWduZWRfbm9uY3Z0IChkZXNjICsgaXRlbS0+b2Zmc2V0KTsKICAg ICB2YWwzMiA9IChlbGZfZ2V0aWRlbnQgKGNvcmUsIE5VTEwpW0VJX0RBVEFdID09IEVMRkRBVEEy TVNCCiAJICAgICA/IGJlMzJ0b2ggKHZhbDMyKSA6IGxlMzJ0b2ggKHZhbDMyKSk7CiAgICAgdGlk ID0gKGludDMyX3QpIHZhbDMyOwpAQCAtMjE4LDE0ICsyMTgsMTQgQEAgY29yZV9zZXRfaW5pdGlh bF9yZWdpc3RlcnMgKER3ZmxfVGhyZWFkICp0aHJlYWQsIHZvaWQgKnRocmVhZF9hcmdfdm9pZHAp CiAgICAgICBzd2l0Y2ggKGdlbGZfZ2V0Y2xhc3MgKGNvcmUpID09IEVMRkNMQVNTMzIgPyAzMiA6 IDY0KQogICAgICAgewogCWNhc2UgMzI6OwotCSAgdWludDMyX3QgdmFsMzIgPSAqKGNvbnN0IHVp bnQzMl90ICopIChkZXNjICsgaXRlbS0+b2Zmc2V0KTsKKwkgIHVpbnQzMl90IHZhbDMyID0gcmVh ZF80dWJ5dGVfdW5hbGlnbmVkX25vbmN2dCAoZGVzYyArIGl0ZW0tPm9mZnNldCk7CiAJICB2YWwz MiA9IChlbGZfZ2V0aWRlbnQgKGNvcmUsIE5VTEwpW0VJX0RBVEFdID09IEVMRkRBVEEyTVNCCiAJ CSAgID8gYmUzMnRvaCAodmFsMzIpIDogbGUzMnRvaCAodmFsMzIpKTsKIAkgIC8qIERvIGEgaG9z dCB3aWR0aCBjb252ZXJzaW9uLiAgKi8KIAkgIHBjID0gdmFsMzI7CiAJICBicmVhazsKIAljYXNl IDY0OjsKLQkgIHVpbnQ2NF90IHZhbDY0ID0gKihjb25zdCB1aW50NjRfdCAqKSAoZGVzYyArIGl0 ZW0tPm9mZnNldCk7CisJICB1aW50NjRfdCB2YWw2NCA9IHJlYWRfOHVieXRlX3VuYWxpZ25lZF9u b25jdnQgKGRlc2MgKyBpdGVtLT5vZmZzZXQpOwogCSAgdmFsNjQgPSAoZWxmX2dldGlkZW50IChj b3JlLCBOVUxMKVtFSV9EQVRBXSA9PSBFTEZEQVRBMk1TQgogCQkgICA/IGJlNjR0b2ggKHZhbDY0 KSA6IGxlNjR0b2ggKHZhbDY0KSk7CiAJICBwYyA9IHZhbDY0OwpAQCAtMjU5LDcgKzI1OSw3IEBA IGNvcmVfc2V0X2luaXRpYWxfcmVnaXN0ZXJzIChEd2ZsX1RocmVhZCAqdGhyZWFkLCB2b2lkICp0 aHJlYWRfYXJnX3ZvaWRwKQogCSAgc3dpdGNoIChyZWdsb2MtPmJpdHMpCiAJICB7CiAJICAgIGNh c2UgMzI6OwotCSAgICAgIHVpbnQzMl90IHZhbDMyID0gKihjb25zdCB1aW50MzJfdCAqKSByZWdf ZGVzYzsKKwkgICAgICB1aW50MzJfdCB2YWwzMiA9IHJlYWRfNHVieXRlX3VuYWxpZ25lZF9ub25j dnQgKHJlZ19kZXNjKTsKIAkgICAgICByZWdfZGVzYyArPSBzaXplb2YgdmFsMzI7CiAJICAgICAg dmFsMzIgPSAoZWxmX2dldGlkZW50IChjb3JlLCBOVUxMKVtFSV9EQVRBXSA9PSBFTEZEQVRBMk1T QgogCQkgICAgICAgPyBiZTMydG9oICh2YWwzMikgOiBsZTMydG9oICh2YWwzMikpOwpAQCAtMjY3 LDcgKzI2Nyw3IEBAIGNvcmVfc2V0X2luaXRpYWxfcmVnaXN0ZXJzIChEd2ZsX1RocmVhZCAqdGhy ZWFkLCB2b2lkICp0aHJlYWRfYXJnX3ZvaWRwKQogCSAgICAgIHZhbCA9IHZhbDMyOwogCSAgICAg IGJyZWFrOwogCSAgICBjYXNlIDY0OjsKLQkgICAgICB1aW50NjRfdCB2YWw2NCA9ICooY29uc3Qg dWludDY0X3QgKikgcmVnX2Rlc2M7CisJICAgICAgdWludDY0X3QgdmFsNjQgPSByZWFkXzh1Ynl0 ZV91bmFsaWduZWRfbm9uY3Z0IChyZWdfZGVzYyk7CiAJICAgICAgcmVnX2Rlc2MgKz0gc2l6ZW9m IHZhbDY0OwogCSAgICAgIHZhbDY0ID0gKGVsZl9nZXRpZGVudCAoY29yZSwgTlVMTClbRUlfREFU QV0gPT0gRUxGREFUQTJNU0IKIAkJICAgICAgID8gYmU2NHRvaCAodmFsNjQpIDogbGU2NHRvaCAo dmFsNjQpKTsKQEAgLTM5Miw3ICszOTIsNyBAQCBkd2ZsX2NvcmVfZmlsZV9hdHRhY2ggKER3Zmwg KmR3ZmwsIEVsZiAqY29yZSkKIAkgIGJyZWFrOwogICAgICAgaWYgKGl0ZW0gPT0gaXRlbXMgKyBu aXRlbXMpCiAJY29udGludWU7Ci0gICAgICB1aW50MzJfdCB2YWwzMiA9ICooY29uc3QgdWludDMy X3QgKikgKGRlc2MgKyBpdGVtLT5vZmZzZXQpOworICAgICAgdWludDMyX3QgdmFsMzIgPSByZWFk XzR1Ynl0ZV91bmFsaWduZWRfbm9uY3Z0IChkZXNjICsgaXRlbS0+b2Zmc2V0KTsKICAgICAgIHZh bDMyID0gKGVsZl9nZXRpZGVudCAoY29yZSwgTlVMTClbRUlfREFUQV0gPT0gRUxGREFUQTJNU0IK IAkJPyBiZTMydG9oICh2YWwzMikgOiBsZTMydG9oICh2YWwzMikpOwogICAgICAgcGlkID0gKGlu dDMyX3QpIHZhbDMyOwotLSAKMS43LjEKCg== --===============6320482951356729469==--