From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2260 invoked by alias); 1 Nov 2018 09:12:48 -0000 Mailing-List: contact elfutils-devel-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Post: List-Help: List-Subscribe: Sender: elfutils-devel-owner@sourceware.org Received: (qmail 2242 invoked by uid 89); 1 Nov 2018 09:12:47 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.100.1 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 spammy=Deutschland, deutschland, FDE, experts X-Spam-Status: No, score=-26.9 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=ham version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-HELO: mail.kdab.com Received: from mail.kdab.com (HELO mail.kdab.com) (176.9.126.58) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 01 Nov 2018 09:12:46 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kdab.com; h= content-type:content-type:mime-version:references:in-reply-to :organization:message-id:date:date:subject:subject:from:from; s= dkim; t=1541063563; x=1541927564; bh=H+0DCmAtI2Yu8wFWpjapo8BQ9qw wR8V75AzVF+DoQmE=; b=Gux34pF798c/SYJIiLZg3HrnDA8LzLCW7jrJ9RW4aY1 T9cBeIs88euuasNKkGPDCAJQEN1hVZpZPbXClpYJm1IQ/7B/jqsyDoFb2EJIe4E0 7ZJakGIdsJuA+tLKy4CyHiLNln7OkI8MRG9bLDtlYatnHlD23x/GP+N6qhSAodtU = X-Virus-Scanned: amavisd-new at kdab.com From: Milian Wolff To: elfutils-devel@sourceware.org Cc: mark@klomp.org Subject: Re: [PATCH] Fix CFI interpretation for locations on DW_CFA_*_loc boundaries Date: Thu, 01 Nov 2018 09:12:00 -0000 Message-ID: <1857278.YmUYHDWrPl@agathebauer> Organization: KDAB In-Reply-To: <20181101084818.16153-1-milian.wolff@kdab.com> References: <20181101084818.16153-1-milian.wolff@kdab.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart4271684.gStNvB214b"; micalg="sha256"; protocol="application/pkcs7-signature" X-SW-Source: 2018-q4/txt/msg00091.txt.bz2 --nextPart4271684.gStNvB214b Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="iso-8859-1" Content-length: 1308 Please ignore this patch for now - I only looked at one specific case where= =20 this changed the behavior to be in line with libunwind. Sadly, it breaks ot= her=20 previously working situations. I need to look at this in more detail. Cheers On Donnerstag, 1. November 2018 09:48:18 CET Milian Wolff wrote: > According to the DWARF v3 standard =A76.4.3 3., all call frame > instructions up to L1 <=3D L2 should be interpreted for an FDE. > Elfutils currently only interprets L1 < L2, potentially missing > some instructions when L1 directly points at a DW_CFA_*_loc boundary. >=20 > This patch changes the behavior and makes elfutils behave like > libunwind in that regard. > --- > libdw/cfi.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) >=20 > diff --git a/libdw/cfi.c b/libdw/cfi.c > index 341e055b..332c6b8b 100644 > --- a/libdw/cfi.c > +++ b/libdw/cfi.c > @@ -125,7 +125,7 @@ execute_cfi (Dwarf_CFI *cache, > fs->regs[regno].value =3D (r_value); \ > } while (0) >=20 > - while (program < end) > + while (program <=3D end) > { > uint8_t opcode =3D *program++; > Dwarf_Word regno; --=20 Milian Wolff | milian.wolff@kdab.com | Senior Software Engineer KDAB (Deutschland) GmbH, a KDAB Group company Tel: +49-30-521325470 KDAB - The Qt, C++ and OpenGL Experts= --nextPart4271684.gStNvB214b Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Disposition: attachment; filename="smime.p7s" Content-Transfer-Encoding: base64 Content-length: 5190 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG 9w0BBwEAAKCCDEIwggXmMIIDzqADAgECAhBqm+E4O/8ra58B1dm4p1JWMA0G CSqGSIb3DQEBDAUAMIGFMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRl ciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01P RE8gQ0EgTGltaXRlZDErMCkGA1UEAxMiQ09NT0RPIFJTQSBDZXJ0aWZpY2F0 aW9uIEF1dGhvcml0eTAeFw0xMzAxMTAwMDAwMDBaFw0yODAxMDkyMzU5NTla MIGXMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVy MRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01PRE8gQ0EgTGltaXRl ZDE9MDsGA1UEAxM0Q09NT0RPIFJTQSBDbGllbnQgQXV0aGVudGljYXRpb24g YW5kIFNlY3VyZSBFbWFpbCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC AQoCggEBAL6znlesKHZ1QBbHOAOY08YYdiFQ8yV5C0y1oNF9Olg+nKcxLqf2 NHbZhGra0D00SOTq9bus3/mxgUsg/Wh/eXQ0pnp8tZ8XZWAnlyKMpjL+qUBy RjXCA6RQyDMqVaVUkbIr5SU0RDX/kSsKwer3H1pT/HUrBN0X8sKtPTdGX8XA Wt/VdMLBrZBlgvnkCos+KQWWCo63OTTqRvaq8aWccm+KOMjTcE6s2mj6Rkal weyDI7X+7U5lNo6jzC8RTXtVV4/Vwdax720YpMPJQaDaElmOupyTf1Qib+cp ukNJnQmwygjD8m046DQkLnpXNCAGjuJy1F5NATksUsbfJAr7FLUCAwEAAaOC ATwwggE4MB8GA1UdIwQYMBaAFLuvfgI9+qbxPISOre44mOzZMjLUMB0GA1Ud DgQWBBSCr2yM+MX+lmF86B89K3FIXsSLwDAOBgNVHQ8BAf8EBAMCAYYwEgYD VR0TAQH/BAgwBgEB/wIBADARBgNVHSAECjAIMAYGBFUdIAAwTAYDVR0fBEUw QzBBoD+gPYY7aHR0cDovL2NybC5jb21vZG9jYS5jb20vQ09NT0RPUlNBQ2Vy dGlmaWNhdGlvbkF1dGhvcml0eS5jcmwwcQYIKwYBBQUHAQEEZTBjMDsGCCsG AQUFBzAChi9odHRwOi8vY3J0LmNvbW9kb2NhLmNvbS9DT01PRE9SU0FBZGRU cnVzdENBLmNydDAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AuY29tb2RvY2Eu Y29tMA0GCSqGSIb3DQEBDAUAA4ICAQB4XLKBKDRPPO5fVs6fl1bsj6JrF/bz 9kkIBtTYLzXN30D+03Hj6OxCDBEaIeNmsBhrJmuubvyE7HtoSmR809AgcYbo W+rcTNZ/8u/Hv+GTrNI/AhqX2/kiQNxmgUPt/eJPs92Qclj0HnVyy9TnSvGk SDU7I5Px+TbO+88G4zipA2psZaWeEykgzClZlPz1FjTCkk77ZXp5cQYYexE6 zeeN4/0OqqoAloFrjAF4o50YJafX8mnahjp3I2Y2mkjhk0xQfhNqbzlLWPoT 3m7j7U26u7zg6swjOq8hITYc3/np5tM5aVyu6t99p17bTbY7+1RTWBviN9YJ zK8HxzObXYWBf/L+VGOYNsQDTxAk0Hbvb1j6KjUhg7fO294F29QIhhmiNOr8 4JHoy+fNLpfvYc/Q9EtFOI5ISYgOxLk3nD/whbUe9rmEQXLp8MB933Ij474g wwCPUpwv9mj2PMnXoc7mbrS22XUSeTwxCTP9bcmUdp4jmIoWfhQm7X9w/Zgd dg+JZ/YnIHOwsGsaTUgj7fIvxqith7DoJC91WJ8Lce3CVJqb1XWeKIJ84F7Y LXZN0oa7TktYgDdmQVxYkZo1c5noaDKH9Oq9cbm/vOYRUM1cWcef20Wkyk5S /GFyyPJwG0fR1nRas3DqAf4cXxMiEKcff7PNa4M3RGTqH0pWR8p6EjCCBlQw ggU8oAMCAQICEAf6KCF9+1doL2oEOTPysLwwDQYJKoZIhvcNAQELBQAwgZcx CzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO BgNVBAcTB1NhbGZvcmQxGjAYBgNVBAoTEUNPTU9ETyBDQSBMaW1pdGVkMT0w OwYDVQQDEzRDT01PRE8gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQg U2VjdXJlIEVtYWlsIENBMB4XDTE3MDUyMzAwMDAwMFoXDTIwMDUyMjIzNTk1 OVowggFZMQswCQYDVQQGEwJTRTEPMA0GA1UEERMGNjgzIDMxMRIwEAYDVQQI EwlWYWVybWxhbmQxEDAOBgNVBAcTB0hhZ2ZvcnMxGDAWBgNVBAkTD05vcnJp bmdzIHZhZWcgMjEPMA0GA1UEEhMGQm94IDMwMSYwJAYDVQQKDB1LbGFyw6Rs dmRhbGVucyBEYXRha29uc3VsdCBBQjEdMBsGA1UECxMUQSBLREFCIEdyb3Vw IENvbXBhbnkxQzBBBgNVBAsMOklzc3VlZCB0aHJvdWdoIEtsYXLDpGx2ZGFs ZW5zIERhdGFrb25zdWx0IEFCIEUtUEtJIE1hbmFnZXIxHzAdBgNVBAsTFkNv cnBvcmF0ZSBTZWN1cmUgRW1haWwxFTATBgNVBAMTDE1pbGlhbiBXb2xmZjEk MCIGCSqGSIb3DQEJARYVbWlsaWFuLndvbGZmQGtkYWIuY29tMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxrzfNBVvRbiAknuTBXuQnNm9sLIF Lo0vbPB6kswk78A3tA++Zn5clQUHhGlQq1cdYxagnUpqwvG3Sod15mPSOLkA Pf/mabLN7p+lFbRaUP+97ZkTZtvb4BCC3osIEFI4G393OSFWqc2qmIPE/SwS ASbAA20Fcaa2M6P1lhOk/ttUh2jIurTPF0wUycIA7lBddrOgaOA8e2m6iLTN HtlrfRbBaUX91D5ebY+UWmIjXSQ9+CtutMzBkwnF0rZKririvOkklg9VzEGN QVHrQfDF2s/UpOtmtuVSwElauGT/KALyCFuIrYC1pmaKH8S1xODJqiRaf6jH 8E+KQzKjyM/ErwIDAQABo4IB1TCCAdEwHwYDVR0jBBgwFoAUgq9sjPjF/pZh fOgfPStxSF7Ei8AwHQYDVR0OBBYEFN+m99RtIuA1bSdw6b1brOX7X3AJMA4G A1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUF BwMEBggrBgEFBQcDAjBGBgNVHSAEPzA9MDsGDCsGAQQBsjEBAgEDBTArMCkG CCsGAQUFBwIBFh1odHRwczovL3NlY3VyZS5jb21vZG8ubmV0L0NQUzBaBgNV HR8EUzBRME+gTaBLhklodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9S U0FDbGllbnRBdXRoZW50aWNhdGlvbmFuZFNlY3VyZUVtYWlsQ0EuY3JsMIGL BggrBgEFBQcBAQR/MH0wVQYIKwYBBQUHMAKGSWh0dHA6Ly9jcnQuY29tb2Rv Y2EuY29tL0NPTU9ET1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJl RW1haWxDQS5jcnQwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmNvbW9kb2Nh LmNvbTAgBgNVHREEGTAXgRVtaWxpYW4ud29sZmZAa2RhYi5jb20wDQYJKoZI hvcNAQELBQADggEBABf47LSJADqH+ow9INv3QM1NC/qq2bjxGvsZ68iD11VE UAFlsYfsVTgQqUirwPVTYenXtwVBELHZyywsui1JxL7HKQetLQegDDP/Ryfj ReVaWxhy3OpuItsgLVbru9QVgPifnoBFPtfZcwjeJDmeSbLT8oj4Rd0KYBOI ve7WKvsfNPsNwfbLwY2zILkELjxZcVi2AwZHDyab+dzL/3YcLuJj1lSawBGn 7ilpcdZydlv4aye51pD/MemLIYLcylt+ImrmjnTVy+QlAHRF3s5FE8yAr+W1 MBD/1bKZCSgFt8VQoAlz3hiQh8QqZp4Zl8WuVL4+mP/mT6VDEWgq/0Bocukx ggJuMIICagIBATCBrDCBlzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0 ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N T0RPIENBIExpbWl0ZWQxPTA7BgNVBAMTNENPTU9ETyBSU0EgQ2xpZW50IEF1 dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1haWwgQ0ECEAf6KCF9+1doL2oE OTPysLwwDQYJYIZIAWUDBAIBBQCggZMwGAYJKoZIhvcNAQkDMQsGCSqGSIb3 DQEHATAcBgkqhkiG9w0BCQUxDxcNMTgxMTAxMDkxMjQyWjAoBgkqhkiG9w0B CQ8xGzAZMAsGCWCGSAFlAwQBAjAKBggqhkiG9w0DBzAvBgkqhkiG9w0BCQQx IgQgF/eRyl1h3JxLbI4WS88Briut1uTcRFEzjTfSdba6RIMwDQYJKoZIhvcN AQEBBQAEggEAFHotwi4R8Pb0Slpg0sljsuxw+vZuU5BG4I+4b4Fk82dWJ78E QbnRqQIZxquPtuF9aNB2YBnmr+qCiV7m82CRHnkqtONAGPpAOj2km0BsRS3K Q2jsQwqkRfyXZM2ywC3AHsoW9325zz0EfxaJfz6TWmZKxFxeYTP5LUy8TDlf Y1CFcIexjKiBNi25lr2vl/ZuFuSWgdaInZNvoIzD7bRuiJuOudaCTBldp/xr GYECUzVByO1c5S9ANNgLVUvSTCyqnwBw1vcd9j9kG+wgdu1QVRW682ufiIdN uEqpgoTc2u6A//Tia7McWIy4C/xAion8xGxESo++6iPqUTcW7f1fWgAAAAAA AA== --nextPart4271684.gStNvB214b--