From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by sourceware.org (Postfix) with ESMTPS id 6E9773858D20 for ; Wed, 30 Nov 2022 13:07:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6E9773858D20 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1669813656; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=BP+ESiYPncR+UMAu61wGuT/X7dZVBT2VmJ+fjoyoVGQ=; b=gMhC2doXmdOrQyIl2RLepWzzGqQai4ZUxLufnLiQ3cYrxg+pqND4uhdB8tYGXzzbkXINDk DaPJRhxxfJGsrr90tnUKP0Ubo9RAqMlBhe1OVk61lE71QRXuPY0tahDMaWXb4w0Ju0LkHU w7Hx9g3tzhUO2SdiaF1iuYsngeNxKjs= Received: from mail-ej1-f72.google.com (mail-ej1-f72.google.com [209.85.218.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-393-6XR2ZsOXPxep8BDKV0G6yQ-1; Wed, 30 Nov 2022 08:07:34 -0500 X-MC-Unique: 6XR2ZsOXPxep8BDKV0G6yQ-1 Received: by mail-ej1-f72.google.com with SMTP id gn36-20020a1709070d2400b007ba3374574dso8577057ejc.23 for ; Wed, 30 Nov 2022 05:07:34 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=BP+ESiYPncR+UMAu61wGuT/X7dZVBT2VmJ+fjoyoVGQ=; b=CRjLN/IN6Ab8pR1idx1TqCOChZ2EdPy6SknqGq2Z+u8u0DXerZ9ixhjCL6js+Ltx/6 CwuJEIxUynJOOROI6SH4Qya8BXrvHLeWobJI9Vto1xbvhUCpTnZlAs2D3ebOWeupRg06 tpFeaBwFrUq15y8Lan01424K1xQd0F1GkzC1nvg2MqpUmBRlbWT4YyUz6/0OvjcxhLqk /VTthsqX36MxjW75XPqJpSGpL0undUa21jaAXzBxSJGoVNZoqu/YPDTs+u8HRxq4S2yK 4t0LVWBePKLebssl14IdRjwudwljLBp6ZN8fkmg4wlyJqszCENEWjJoDnTBtVS47u7l5 fJhQ== X-Gm-Message-State: ANoB5pn7qHEpJfEJ+Lg1La2Sd9Xfp4UpuoZHepRS3at7qT3WyWGoIH3Q BXg9SE1qqGrd0WIOvOiFHPF4OzOPpX1+5ZEJbp/MSKFxzBG600hycZho5gbOtL6RXnLi2KAoZp5 ujUr+lGBk7pEWkg0k/8RNHgpBwhDHlyg= X-Received: by 2002:a17:907:2721:b0:7bd:28b5:2fb with SMTP id d1-20020a170907272100b007bd28b502fbmr20847711ejl.169.1669813653276; Wed, 30 Nov 2022 05:07:33 -0800 (PST) X-Google-Smtp-Source: AA0mqf4ifya/tRQ6HBi/lS2HrPN5PsD24A5aIYsETKeJC6+AHVQ3ifeYwmdr+OmwHnIJZ1DyY0WLCPDWfgTwFqv3AeU= X-Received: by 2002:a17:907:2721:b0:7bd:28b5:2fb with SMTP id d1-20020a170907272100b007bd28b502fbmr20847693ejl.169.1669813653071; Wed, 30 Nov 2022 05:07:33 -0800 (PST) MIME-Version: 1.0 References: <20221129214107.25572-1-gcc@hazardy.de> In-Reply-To: From: Jonathan Wakely Date: Wed, 30 Nov 2022 13:07:22 +0000 Message-ID: Subject: Re: [PATCH] libstdc++: Add error handler for To: =?UTF-8?Q?Fran=C3=A7ois_Dumont?= Cc: =?UTF-8?B?QmrDtnJuIFNjaMOkcGVycw==?= , libstdc++@gcc.gnu.org, gcc Patches X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/mixed; boundary="000000000000a219e305eeafc9de" X-Spam-Status: No, score=-13.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,TXREP 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: --000000000000a219e305eeafc9de Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, 30 Nov 2022 at 11:57, Jonathan Wakely wrote: > > > > On Wed, 30 Nov 2022 at 11:54, Jonathan Wakely wrote: >> >> >> >> On Wed, 30 Nov 2022 at 06:04, Fran=C3=A7ois Dumont via Libstdc++ wrote: >>> >>> Good catch, then we also need this patch. >> >> >> Is it worth printing an error? If we can't show the backtrace because of= an error, we can just print nothing there. >> >> We also need to pass an error handler to the __glibcxx_backtrace_create_= state call in formatter.h. >> >> Now that I look at this code again, why do we need the _M_backtrace_full= member? It's always set to the same thing, why can't we just call that fun= ction directly? > > > Oh right, I remember now ... because otherwise the libstdc++.so library n= eeds the definition of __glibcxx_backtrace_full. I'm testing the attached patch. > >> >> And I think we should use threaded=3D1 for the __glibcxx_backtrace_creat= e_state call. >> >> So like the attached patch. >> >> --000000000000a219e305eeafc9de Content-Type: text/plain; charset="US-ASCII"; name="patch.txt" Content-Disposition: attachment; filename="patch.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lb3nx8i90 Y29tbWl0IDZjOWNjMDVkYzA5N2Y2ZWU2NmYxODczMWE2MjQ3Y2NlMzY4MjNkNTQKQXV0aG9yOiBK b25hdGhhbiBXYWtlbHkgPGp3YWtlbHlAcmVkaGF0LmNvbT4KRGF0ZTogICBXZWQgTm92IDMwIDEy OjMyOjUzIDIwMjIKCiAgICBsaWJzdGRjKys6IFBhc3MgZXJyb3IgaGFuZGxlciB0byBsaWJiYWNr dHJhY2UgZnVuY3Rpb25zCiAgICAKICAgIEFsc28gcGFzcyB0aHJlYWRlZD0xIHRvIF9fZ2xpYmN4 eF9iYWNrdHJhY2VfY3JlYXRlX3N0YXRlIGFuZCByZW1vdmUgc29tZQogICAgb2YgdGhlIG5hbWVz cGFjZSBzY29wZSBkZWNsYXJhdGlvbnMuCiAgICAKICAgIGxpYnN0ZGMrKy12My9DaGFuZ2VMb2c6 CiAgICAKICAgICAgICAgICAgKiBpbmNsdWRlL2RlYnVnL2Zvcm1hdHRlci5oIFtfR0xJQkNYWF9E RUJVR19CQUNLVFJBQ0VdCiAgICAgICAgICAgIChfRXJyb3JfZm9ybWF0dGVyOjpfRXJyb3JfZm9y bWF0dGVyKTogUGFzcyBlcnJvciBoYW5kbGVyIHRvCiAgICAgICAgICAgIF9fZ2xpYmN4eF9iYWNr dHJhY2VfY3JlYXRlX3N0YXRlLiBQYXNzIDEgZm9yIHRocmVhZGVkIGFyZ3VtZW50LgogICAgICAg ICAgICAoX0Vycm9yX2Zvcm1hdHRlcjo6X1NfZXJyKTogRGVmaW5lIGVtcHR5IGZ1bmN0aW9uLgog ICAgICAgICAgICAqIHNyYy9jKysxMS9kZWJ1Zy5jYyAoX0Vycm9yX2Zvcm1hdHRlcjo6X01fZXJy b3IpOiBQYXNzIGVycm9yCiAgICAgICAgICAgIGhhbmRsZXIgdG8gX19nbGliY3h4X2JhY2t0cmFj ZV9mdWxsLgoKZGlmZiAtLWdpdCBhL2xpYnN0ZGMrKy12My9pbmNsdWRlL2RlYnVnL2Zvcm1hdHRl ci5oIGIvbGlic3RkYysrLXYzL2luY2x1ZGUvZGVidWcvZm9ybWF0dGVyLmgKaW5kZXggZjEyMDE2 M2M2ZDQuLmU4YTgzYTIxYmRlIDEwMDY0NAotLS0gYS9saWJzdGRjKystdjMvaW5jbHVkZS9kZWJ1 Zy9mb3JtYXR0ZXIuaAorKysgYi9saWJzdGRjKystdjMvaW5jbHVkZS9kZWJ1Zy9mb3JtYXR0ZXIu aApAQCAtMzIsMzIgKzMyLDE3IEBACiAjaW5jbHVkZSA8Yml0cy9jKytjb25maWcuaD4KIAogI2lm IF9HTElCQ1hYX0hBVkVfU1RBQ0tUUkFDRQotc3RydWN0IF9fZ2xpYmN4eF9iYWNrdHJhY2Vfc3Rh dGU7Ci0KIGV4dGVybiAiQyIKIHsKLSAgX19nbGliY3h4X2JhY2t0cmFjZV9zdGF0ZSoKKyAgc3Ry dWN0IF9fZ2xpYmN4eF9iYWNrdHJhY2Vfc3RhdGUqCiAgIF9fZ2xpYmN4eF9iYWNrdHJhY2VfY3Jl YXRlX3N0YXRlKGNvbnN0IGNoYXIqLCBpbnQsCiAJCQkJICAgdm9pZCgqKSh2b2lkKiwgY29uc3Qg Y2hhciosIGludCksCiAJCQkJICAgdm9pZCopOwotCi0gIHR5cGVkZWYgaW50ICgqX19nbGliY3h4 X2JhY2t0cmFjZV9mdWxsX2NhbGxiYWNrKSAoCi0gICAgdm9pZCosIF9fVUlOVFBUUl9UWVBFX18s IGNvbnN0IGNoYXIgKiwgaW50LCBjb25zdCBjaGFyKik7Ci0KLSAgdHlwZWRlZiB2b2lkICgqX19n bGliY3h4X2JhY2t0cmFjZV9lcnJvcl9jYWxsYmFjaykgKAotICAgIHZvaWQqLCBjb25zdCBjaGFy KiwgaW50KTsKLQotICB0eXBlZGVmIGludCAoKl9fZ2xpYmN4eF9iYWNrdHJhY2VfZnVsbF9mdW5j KSAoCi0gICAgX19nbGliY3h4X2JhY2t0cmFjZV9zdGF0ZSosIGludCwKLSAgICBfX2dsaWJjeHhf YmFja3RyYWNlX2Z1bGxfY2FsbGJhY2ssCi0gICAgX19nbGliY3h4X2JhY2t0cmFjZV9lcnJvcl9j YWxsYmFjaywKLSAgICB2b2lkKik7Ci0KICAgaW50CiAgIF9fZ2xpYmN4eF9iYWNrdHJhY2VfZnVs bCgKLSAgICBfX2dsaWJjeHhfYmFja3RyYWNlX3N0YXRlKiwgaW50LAotICAgIF9fZ2xpYmN4eF9i YWNrdHJhY2VfZnVsbF9jYWxsYmFjaywKLSAgICBfX2dsaWJjeHhfYmFja3RyYWNlX2Vycm9yX2Nh bGxiYWNrLAorICAgIHN0cnVjdCBfX2dsaWJjeHhfYmFja3RyYWNlX3N0YXRlKiwgaW50LAorICAg IGludCAoKikodm9pZCosIF9fVUlOVFBUUl9UWVBFX18sIGNvbnN0IGNoYXIgKiwgaW50LCBjb25z dCBjaGFyKiksCisgICAgdm9pZCAoKikodm9pZCosIGNvbnN0IGNoYXIqLCBpbnQpLAogICAgIHZv aWQqKTsKIH0KICNlbmRpZgpAQCAtNjA5LDEwICs1OTQsMTAgQEAgbmFtZXNwYWNlIF9fZ251X2Rl YnVnCiAgICAgLCBfTV9mdW5jdGlvbihfX2Z1bmN0aW9uKQogI2lmIF9HTElCQ1hYX0hBVkVfU1RB Q0tUUkFDRQogIyBpZmRlZiBfR0xJQkNYWF9ERUJVR19CQUNLVFJBQ0UKLSAgICAsIF9NX2JhY2t0 cmFjZV9zdGF0ZShfX2dsaWJjeHhfYmFja3RyYWNlX2NyZWF0ZV9zdGF0ZSgwLCAwLCAwLCAwKSkK KyAgICAsIF9NX2JhY2t0cmFjZV9zdGF0ZShfX2dsaWJjeHhfYmFja3RyYWNlX2NyZWF0ZV9zdGF0 ZSgwLCAxLCBfU19lcnIsIDApKQogICAgICwgX01fYmFja3RyYWNlX2Z1bGwoJl9fZ2xpYmN4eF9i YWNrdHJhY2VfZnVsbCkKICMgZWxzZQotICAgICwgX01fYmFja3RyYWNlX3N0YXRlKCkKKyAgICAs IF9NX2JhY2t0cmFjZV9zdGF0ZSgwKQogIyBlbmRpZgogI2VuZGlmCiAgICAgeyB9CkBAIC02MzEs OCArNjE2LDEyIEBAIG5hbWVzcGFjZSBfX2dudV9kZWJ1ZwogICAgIGNvbnN0IGNoYXIqCQlfTV90 ZXh0OwogICAgIGNvbnN0IGNoYXIqCQlfTV9mdW5jdGlvbjsKICNpZiBfR0xJQkNYWF9IQVZFX1NU QUNLVFJBQ0UKLSAgICBfX2dsaWJjeHhfYmFja3RyYWNlX3N0YXRlKgkJX01fYmFja3RyYWNlX3N0 YXRlOwotICAgIF9fZ2xpYmN4eF9iYWNrdHJhY2VfZnVsbF9mdW5jCV9NX2JhY2t0cmFjZV9mdWxs OworICAgIHN0cnVjdCBfX2dsaWJjeHhfYmFja3RyYWNlX3N0YXRlKgkJX01fYmFja3RyYWNlX3N0 YXRlOworICAgIC8vIFRPRE86IFJlbW92ZSBfTV9iYWNrdHJhY2VfZnVsbCBhZnRlciBfX2dsaWJj eHhfYmFja3RyYWNlX2Z1bGwgaXMgbW92ZWQKKyAgICAvLyBmcm9tIGxpYnN0ZGMrK19saWJiYWNr dHJhY2UuYSB0byBsaWJzdGRjKysuc286CisgICAgX19kZWNsdHlwZSgmX19nbGliY3h4X2JhY2t0 cmFjZV9mdWxsKQlfTV9iYWNrdHJhY2VfZnVsbDsKKworICAgIHN0YXRpYyB2b2lkIF9TX2Vycih2 b2lkKiwgY29uc3QgY2hhciosIGludCkgeyB9CiAjZW5kaWYKIAogICBwdWJsaWM6CmRpZmYgLS1n aXQgYS9saWJzdGRjKystdjMvc3JjL2MrKzExL2RlYnVnLmNjIGIvbGlic3RkYysrLXYzL3NyYy9j KysxMS9kZWJ1Zy5jYwppbmRleCA5ZWRhMzgwMjNmNy4uYzA4ZWFhN2Y5MjEgMTAwNjQ0Ci0tLSBh L2xpYnN0ZGMrKy12My9zcmMvYysrMTEvZGVidWcuY2MKKysrIGIvbGlic3RkYysrLXYzL3NyYy9j KysxMS9kZWJ1Zy5jYwpAQCAtMTE5Myw3ICsxMTkzLDcgQEAgbmFtZXNwYWNlIF9fZ251X2RlYnVn CiAgICAgICB7CiAJcHJpbnRfbGl0ZXJhbChjdHgsICJCYWNrdHJhY2U6XG4iKTsKIAlfTV9iYWNr dHJhY2VfZnVsbCgKLQkgIF9NX2JhY2t0cmFjZV9zdGF0ZSwgMSwgcHJpbnRfYmFja3RyYWNlLCBu dWxscHRyLCAmY3R4KTsKKwkgIF9NX2JhY2t0cmFjZV9zdGF0ZSwgMSwgcHJpbnRfYmFja3RyYWNl LCBfU19lcnIsICZjdHgpOwogCWN0eC5fTV9maXJzdF9saW5lID0gdHJ1ZTsKIAlwcmludF9saXRl cmFsKGN0eCwgIlxuIik7CiAgICAgICB9Cg== --000000000000a219e305eeafc9de--