From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.hazardy.de (mail.hazardy.de [78.94.181.132]) by sourceware.org (Postfix) with ESMTPS id 599E13858C66; Tue, 2 Jan 2024 23:13:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 599E13858C66 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=hazardy.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=hazardy.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 599E13858C66 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=78.94.181.132 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704237184; cv=none; b=kMV0mKyuWfLyUc6vVl/vEZKW+FjbDDfDB4A4Dro6HfCIQWGHed4v4z9KxePbQoPwzz7r61L1gzRYlPGNbHRL/uPcDrMxDL3NAMvIscOkC+24OLW6zaiUkx+8ujWTRlzE/RpLo2ucR02VOJF6yQ3al2K271MTvZsW3xteh0JQCuY= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1704237184; c=relaxed/simple; bh=vVpJlpMQFZ3pIKDTNXV/jT1GsC2KAEi4npOgW+BkO+c=; h=Message-ID:Date:MIME-Version:Subject:To:From; b=Tv/uPS57Ofm2Fwddo2cmyrARwTp9UTSxwFqmsMm200xtmni/17YimTRxD9ay5pwDtxxvQUrRZb1w36wCAuViossZvWNTogbeHwxaF53JEoFTxeSHN9en8IiQZJKemjafQxQlmw28Thhrgm0Q7QxYJ3AqUm6d5e8biy+1+xVOm/0= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from [10.0.1.129] (hades.hazardy.de [10.0.1.129]) by mail.hazardy.de (Postfix) with ESMTPSA id 6FCC4700203; Wed, 3 Jan 2024 00:12:58 +0100 (CET) Content-Type: multipart/mixed; boundary="------------RW4esfBH7IygPh0BTwdFUPVi" Message-ID: <0c08e584-499f-473f-8699-a41c6a967536@hazardy.de> Date: Wed, 3 Jan 2024 00:12:58 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 4/4] libbacktrace: get debug information for loaded dlls To: Ian Lance Taylor Cc: gcc-patches@gcc.gnu.org, gcc@gcc.gnu.org References: <20230120105409.54949-1-gcc@hazardy.de> <20230120105409.54949-4-gcc@hazardy.de> Content-Language: de-DE, en-US From: =?UTF-8?Q?Bj=C3=B6rn_Sch=C3=A4pers?= In-Reply-To: X-Spam-Status: No, score=-12.7 required=5.0 tests=BAYES_00,GIT_PATCH_0,KAM_DMARC_STATUS,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------RW4esfBH7IygPh0BTwdFUPVi Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Am 30.11.2023 um 20:53 schrieb Ian Lance Taylor: > On Fri, Jan 20, 2023 at 2:55 AM Björn Schäpers wrote: >> >> From: Björn Schäpers >> >> Fixes https://github.com/ianlancetaylor/libbacktrace/issues/53, except >> that libraries loaded after the backtrace_initialize are not handled. >> But as far as I can see that's the same for elf. > > Thanks, but I don't want a patch that loops using goto statements. > Please rewrite to avoid that. It may be simpler to call a function. > > Also starting with a module count of 1000 seems like a lot. Do > typical Windows programs load that many modules? > > Ian > > Rewritten using a function. If that is commited, could you attribute that commit to me (--author="Björn Schäpers ")? Thanks and kind regards, Björn. --------------RW4esfBH7IygPh0BTwdFUPVi Content-Type: text/plain; charset=UTF-8; name="0003-libbacktrace-get-debug-information-for-loaded-dlls.patch" Content-Disposition: attachment; filename*0="0003-libbacktrace-get-debug-information-for-loaded-dlls.patc"; filename*1="h" Content-Transfer-Encoding: base64 RnJvbSBiZDU1MjcxNmVlNzkzN2NhZDlkNTRkNDk2NjUzMmQ2ZWE2ZGJjMWJjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Qmo9QzM9QjZybj0yMFNjaD1DMz1B NHBlcnM/PSA8YmpvZXJuQGhhemFyZHkuZGU+CkRhdGU6IFN1biwgMzAgQXByIDIwMjMgMjM6 NTQ6MzIgKzAyMDAKU3ViamVjdDogW1BBVENIXSBsaWJiYWNrdHJhY2U6IGdldCBkZWJ1ZyBp bmZvcm1hdGlvbiBmb3IgbG9hZGVkIGRsbHMKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1U eXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rp bmc6IDhiaXQKCkZpeGVzIGh0dHBzOi8vZ2l0aHViLmNvbS9pYW5sYW5jZXRheWxvci9saWJi YWNrdHJhY2UvaXNzdWVzLzUzLCBleGNlcHQKdGhhdCBsaWJyYXJpZXMgbG9hZGVkIGFmdGVy IHRoZSBiYWNrdHJhY2VfaW5pdGlhbGl6ZSBhcmUgbm90IGhhbmRsZWQuCkJ1dCBhcyBmYXIg YXMgSSBjYW4gc2VlIHRoYXQncyB0aGUgc2FtZSBmb3IgZWxmLgoKVGVzdGVkIG9uIHg4Nl82 NC1saW51eCBhbmQgaTY4Ni13NjQtbWluZ3czMi4KCi0tID44IC0tCgoJKiBwZWNvZmYuYyAo Y29mZl9hZGQpOiBOZXcgYXJndW1lbnQgZm9yIHRoZSBtb2R1bGUgaGFuZGxlIG9mIHRoZQoJ ZmlsZSwgdG8gZ2V0IHRoZSBiYXNlIGFkZHJlc3MuCgkqIHBlY29mZi5jIChiYWNrdHJhY2Vf aW5pdGlhbGl6ZSk6IEl0ZXJhdGUgb3ZlciBsb2FkZWQgbGlicmFyaWVzCglhbmQgY2FsbCBj b2ZmX2FkZC4KClNpZ25lZC1vZmYtYnk6IEJqw7ZybiBTY2jDpHBlcnMgPGJqb2VybkBoYXph cmR5LmRlPgotLS0KIGxpYmJhY2t0cmFjZS9wZWNvZmYuYyB8IDEwNCArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA5NiBpbnNl cnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYmJhY2t0cmFjZS9w ZWNvZmYuYyBiL2xpYmJhY2t0cmFjZS9wZWNvZmYuYwppbmRleCBmOTc2YTk2M2JmMy4uM2Vi OWM0YTQ4NTMgMTAwNjQ0Ci0tLSBhL2xpYmJhY2t0cmFjZS9wZWNvZmYuYworKysgYi9saWJi YWNrdHJhY2UvcGVjb2ZmLmMKQEAgLTQ5LDYgKzQ5LDcgQEAgUE9TU0lCSUxJVFkgT0YgU1VD SCBEQU1BR0UuICAqLwogI2VuZGlmCiAKICNpbmNsdWRlIDx3aW5kb3dzLmg+CisjaW5jbHVk ZSA8cHNhcGkuaD4KICNlbmRpZgogCiAvKiBDb2ZmIGZpbGUgaGVhZGVyLiAgKi8KQEAgLTU5 Miw3ICs1OTMsOCBAQCBjb2ZmX3N5bWluZm8gKHN0cnVjdCBiYWNrdHJhY2Vfc3RhdGUgKnN0 YXRlLCB1aW50cHRyX3QgYWRkciwKIHN0YXRpYyBpbnQKIGNvZmZfYWRkIChzdHJ1Y3QgYmFj a3RyYWNlX3N0YXRlICpzdGF0ZSwgaW50IGRlc2NyaXB0b3IsCiAJICBiYWNrdHJhY2VfZXJy b3JfY2FsbGJhY2sgZXJyb3JfY2FsbGJhY2ssIHZvaWQgKmRhdGEsCi0JICBmaWxlbGluZSAq ZmlsZWxpbmVfZm4sIGludCAqZm91bmRfc3ltLCBpbnQgKmZvdW5kX2R3YXJmKQorCSAgZmls ZWxpbmUgKmZpbGVsaW5lX2ZuLCBpbnQgKmZvdW5kX3N5bSwgaW50ICpmb3VuZF9kd2FyZiwK KwkgIHVpbnRwdHJfdCBtb2R1bGVfaGFuZGxlIEFUVFJJQlVURV9VTlVTRUQpCiB7CiAgIHN0 cnVjdCBiYWNrdHJhY2VfdmlldyBmaGRyX3ZpZXc7CiAgIG9mZl90IGZoZHJfb2ZmOwpAQCAt ODcwLDEyICs4NzIsNyBAQCBjb2ZmX2FkZCAoc3RydWN0IGJhY2t0cmFjZV9zdGF0ZSAqc3Rh dGUsIGludCBkZXNjcmlwdG9yLAogICAgIH0KIAogI2lmZGVmIEhBVkVfV0lORE9XU19ICi0g IHsKLSAgICB1aW50cHRyX3QgbW9kdWxlX2hhbmRsZTsKLQotICAgIG1vZHVsZV9oYW5kbGUg PSAodWludHB0cl90KSBHZXRNb2R1bGVIYW5kbGUgKE5VTEwpOwotICAgIGJhc2VfYWRkcmVz cyA9IG1vZHVsZV9oYW5kbGUgLSBpbWFnZV9iYXNlOwotICB9CisgIGJhc2VfYWRkcmVzcyA9 IG1vZHVsZV9oYW5kbGUgLSBpbWFnZV9iYXNlOwogI2VuZGlmCiAKICAgaWYgKCFiYWNrdHJh Y2VfZHdhcmZfYWRkIChzdGF0ZSwgYmFzZV9hZGRyZXNzLCAmZHdhcmZfc2VjdGlvbnMsCkBA IC05MDMsNiArOTAwLDUzIEBAIGNvZmZfYWRkIChzdHJ1Y3QgYmFja3RyYWNlX3N0YXRlICpz dGF0ZSwgaW50IGRlc2NyaXB0b3IsCiAgIHJldHVybiAwOwogfQogCisjaWZkZWYgSEFWRV9X SU5ET1dTX0gKK3N0YXRpYyB2b2lkCitmcmVlX21vZHVsZXMgKHN0cnVjdCBiYWNrdHJhY2Vf c3RhdGUgKnN0YXRlLAorCSAgICAgIGJhY2t0cmFjZV9lcnJvcl9jYWxsYmFjayBlcnJvcl9j YWxsYmFjaywgdm9pZCAqZGF0YSwKKwkgICAgICBITU9EVUxFICoqbW9kdWxlcywgRFdPUkQg Ynl0ZXNfYWxsb2NhdGVkKQoreworICBiYWNrdHJhY2VfZnJlZSAoc3RhdGUsICptb2R1bGVz LCBieXRlc19hbGxvY2F0ZWQsIGVycm9yX2NhbGxiYWNrLCBkYXRhKTsKKyAgKm1vZHVsZXMg PSBOVUxMOworfQorCitzdGF0aWMgdm9pZAorZ2V0X2FsbF9tb2R1bGVzIChzdHJ1Y3QgYmFj a3RyYWNlX3N0YXRlICpzdGF0ZSwKKwkJIGJhY2t0cmFjZV9lcnJvcl9jYWxsYmFjayBlcnJv cl9jYWxsYmFjaywgdm9pZCAqZGF0YSwgCisJCSBITU9EVUxFICoqbW9kdWxlcywgRFdPUkQg Km1vZHVsZV9jb3VudCwgRFdPUkQgKmJ5dGVzX2FsbG9jYXRlZCkKK3sKKyAgRFdPUkQgYnl0 ZXNfbmVlZGVkID0gMDsKKworICBmb3IgKDs7KQorICAgIHsKKyAgICAgICpieXRlc19hbGxv Y2F0ZWQgPSAqbW9kdWxlX2NvdW50ICogc2l6ZW9mKEhNT0RVTEUpOworICAgICAgKm1vZHVs ZXMgPSBiYWNrdHJhY2VfYWxsb2MgKHN0YXRlLCAqYnl0ZXNfYWxsb2NhdGVkLCBlcnJvcl9j YWxsYmFjaywgZGF0YSk7CisKKyAgICAgIGlmICgqbW9kdWxlcyA9PSBOVUxMKQorCXJldHVy bjsKKworICAgICAgaWYgKCFFbnVtUHJvY2Vzc01vZHVsZXMgKEdldEN1cnJlbnRQcm9jZXNz ICgpLCAqbW9kdWxlcywgKm1vZHVsZV9jb3VudCwKKwkJCSAgICAgICAmYnl0ZXNfbmVlZGVk KSkKKwl7CisJICBlcnJvcl9jYWxsYmFjayhkYXRhLCAiQ291bGQgbm90IGVudW1lcmF0ZSBw cm9jZXNzIG1vZHVsZXMiLAorCQkJIChpbnQpIEdldExhc3RFcnJvciAoKSk7CisJICBmcmVl X21vZHVsZXMgKHN0YXRlLCBlcnJvcl9jYWxsYmFjaywgZGF0YSwgbW9kdWxlcywgKmJ5dGVz X2FsbG9jYXRlZCk7CisJICByZXR1cm47CisJfQorCisgICAgICAqbW9kdWxlX2NvdW50ID0g Ynl0ZXNfbmVlZGVkIC8gc2l6ZW9mKEhNT0RVTEUpOworICAgICAgaWYgKGJ5dGVzX25lZWRl ZCA8PSAqYnl0ZXNfYWxsb2NhdGVkKQorCXsKKwkgIHJldHVybjsKKwl9CisKKyAgICAgIGZy ZWVfbW9kdWxlcyAoc3RhdGUsIGVycm9yX2NhbGxiYWNrLCBkYXRhLCBtb2R1bGVzLCAqYnl0 ZXNfYWxsb2NhdGVkKTsKKyAgICAgIC8vIEFkZCBhbiBleHRyYSBvZiAyLCBvZiBzb21lIG1v ZHVsZSBpcyBsb2FkZWQgaW4gYW5vdGhlciB0aHJlYWQuCisgICAgICAqbW9kdWxlX2NvdW50 ICs9IDI7CisgICAgfQorfQorI2VuZGlmCisKIC8qIEluaXRpYWxpemUgdGhlIGJhY2t0cmFj ZSBkYXRhIHdlIG5lZWQgZnJvbSBhbiBFTEYgZXhlY3V0YWJsZS4gIEF0CiAgICB0aGUgRUxG IGxldmVsLCBhbGwgd2UgbmVlZCB0byBkbyBpcyBmaW5kIHRoZSBkZWJ1ZyBpbmZvCiAgICBz ZWN0aW9ucy4gICovCkBAIC05MTcsMTIgKzk2MSw1NiBAQCBiYWNrdHJhY2VfaW5pdGlhbGl6 ZSAoc3RydWN0IGJhY2t0cmFjZV9zdGF0ZSAqc3RhdGUsCiAgIGludCBmb3VuZF9zeW07CiAg IGludCBmb3VuZF9kd2FyZjsKICAgZmlsZWxpbmUgY29mZl9maWxlbGluZV9mbjsKKyAgdWlu dHB0cl90IG1vZHVsZV9oYW5kbGUgPSAwOworCisjaWZkZWYgSEFWRV9XSU5ET1dTX0gKKyAg RFdPUkQgaTsKKyAgRFdPUkQgbW9kdWxlX2NvdW50ID0gMTAwOworICBEV09SRCBieXRlc19h bGxvY2F0ZWRfZm9yX21vZHVsZXMgPSAwOworICBITU9EVUxFICptb2R1bGVzID0gTlVMTDsK KyAgY2hhciBtb2R1bGVfbmFtZVtNQVhfUEFUSF07CisgIGludCBtb2R1bGVfZm91bmRfc3lt OworICBmaWxlbGluZSBtb2R1bGVfZmlsZWxpbmVfZm47CisKKyAgbW9kdWxlX2hhbmRsZSA9 ICh1aW50cHRyX3QpIEdldE1vZHVsZUhhbmRsZSAoTlVMTCk7CisjZW5kaWYKIAogICByZXQg PSBjb2ZmX2FkZCAoc3RhdGUsIGRlc2NyaXB0b3IsIGVycm9yX2NhbGxiYWNrLCBkYXRhLAot CQkgICZjb2ZmX2ZpbGVsaW5lX2ZuLCAmZm91bmRfc3ltLCAmZm91bmRfZHdhcmYpOworCQkg ICZjb2ZmX2ZpbGVsaW5lX2ZuLCAmZm91bmRfc3ltLCAmZm91bmRfZHdhcmYsIG1vZHVsZV9o YW5kbGUpOwogICBpZiAoIXJldCkKICAgICByZXR1cm4gMDsKIAorI2lmZGVmIEhBVkVfV0lO RE9XU19ICisgIGdldF9hbGxfbW9kdWxlcyAoc3RhdGUsIGVycm9yX2NhbGxiYWNrLCBkYXRh LCAmbW9kdWxlcywgCisJCSAgICZtb2R1bGVfY291bnQsICZieXRlc19hbGxvY2F0ZWRfZm9y X21vZHVsZXMpOworCisgIGZvciAoaSA9IDA7IGkgPCBtb2R1bGVfY291bnQ7ICsraSkKKyAg ICB7CisgICAgICBpZiAoR2V0TW9kdWxlRmlsZU5hbWVBIChtb2R1bGVzW2ldLCBtb2R1bGVf bmFtZSwgTUFYX1BBVEggLSAxKSkKKwl7CisJICBpZiAoc3RyY21wIChmaWxlbmFtZSwgbW9k dWxlX25hbWUpID09IDApCisJICAgIGNvbnRpbnVlOworCisJICBtb2R1bGVfaGFuZGxlID0g KHVpbnRwdHJfdCkgR2V0TW9kdWxlSGFuZGxlQSAobW9kdWxlX25hbWUpOworCSAgaWYgKG1v ZHVsZV9oYW5kbGUgPT0gMCkKKwkgICAgY29udGludWU7CisKKwkgIGRlc2NyaXB0b3IgPSBi YWNrdHJhY2Vfb3BlbiAobW9kdWxlX25hbWUsIGVycm9yX2NhbGxiYWNrLCBkYXRhLCBOVUxM KTsKKwkgIGlmIChkZXNjcmlwdG9yIDwgMCkKKwkgICAgY29udGludWU7CisKKwkgIGNvZmZf YWRkIChzdGF0ZSwgZGVzY3JpcHRvciwgZXJyb3JfY2FsbGJhY2ssIGRhdGEsCisJCSAgICAm bW9kdWxlX2ZpbGVsaW5lX2ZuLCAmbW9kdWxlX2ZvdW5kX3N5bSwgJmZvdW5kX2R3YXJmLAor CQkgICAgbW9kdWxlX2hhbmRsZSk7CisJICBpZiAobW9kdWxlX2ZvdW5kX3N5bSkKKwkgICAg Zm91bmRfc3ltID0gMTsKKwl9CisgICAgfQorCisgIGlmIChtb2R1bGVzKQorICAgIGZyZWVf bW9kdWxlcyAoc3RhdGUsIGVycm9yX2NhbGxiYWNrLCBkYXRhLCAmbW9kdWxlcywgYnl0ZXNf YWxsb2NhdGVkX2Zvcl9tb2R1bGVzKTsKKyNlbmRpZgorCiAgIGlmICghc3RhdGUtPnRocmVh ZGVkKQogICAgIHsKICAgICAgIGlmIChmb3VuZF9zeW0pCi0tIAoyLjQyLjEKCg== --------------RW4esfBH7IygPh0BTwdFUPVi--