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 1F6583858D28 for ; Wed, 30 Nov 2022 11:54:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 1F6583858D28 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=1669809271; 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=8UMoepCL/llZvlB0zRDQKzwxcWb560qpjnJ44um3Xoc=; b=QD4ZW8Boq8LjS8iKrNMXrnQ/+EiYh53/kocFgy9MENZuEdEGx9BMwxG7VJjsYTM0rlL56F FltCcm+8GHt9WhRbQ1088Y2+Gf36If2DcCNANKY7/0hihu2/Zk5zuslPaBvZPHPjHgRxi9 WYOvH/rlX/7K41PEoOsMDplftJ8xec4= Received: from mail-ej1-f69.google.com (mail-ej1-f69.google.com [209.85.218.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-581-7f_JEO8qPu-3iwOm_5117g-1; Wed, 30 Nov 2022 06:54:29 -0500 X-MC-Unique: 7f_JEO8qPu-3iwOm_5117g-1 Received: by mail-ej1-f69.google.com with SMTP id xc12-20020a170907074c00b007416699ea14so8419953ejb.19 for ; Wed, 30 Nov 2022 03:54:29 -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=jkbxGBrzH9PB7Z1bMJgCUhFWSe86BwPhoCEH7SmqDUQ=; b=X8LPXvwWndATEc1u8q+sX6mQgoFKmWS12lVFwI4SEt8GqRFB77yQ3TILNa5SHyluGs hYrPJrIypp2Xfy1CSWbAgND7IJFhNtbtI30YnN3vslII1XceyOZybcZDSTtz+TKHW7ds NpHPcGt6F0zzsqcNh9O916QDvrALVQAI+BHpEp9denT60Re4auw+PTaIhywrlORHyNDl D4QBRFRN1rANxE8sxHz659tBSaMayA8F9xwhsn1SPoxrShLPhiszRBjsUS3dNnCzpDfR iW80xtzUGQqTYvv0X24WSX4iykck6da6AFXVC/JZOZcZtZmy2tZts83HgOPQX9dP3EmU tzeg== X-Gm-Message-State: ANoB5pnr9ZLTE9OVjLio3qyGQJXKDfmzpJUuIO4R/E3kVhsnNUlDHpEW AWGLkDOZwzk2B3uXn0A35iOwDwRhh4hGEz5QURPF7ZkAM2UwPfTHXwlX6XGSQ2u1FoVPr11+KaN JaCuz0wDxVZd0Dh7z1VqKXogtHUuIgdQ= X-Received: by 2002:a17:906:d103:b0:7ad:9673:8b73 with SMTP id b3-20020a170906d10300b007ad96738b73mr53202256ejz.14.1669809268563; Wed, 30 Nov 2022 03:54:28 -0800 (PST) X-Google-Smtp-Source: AA0mqf7J3tYo3RqXjRKnx/6WQk9Md8ccq5N6yQZlrbFhiWXkjcBx3zDcHtb/ubEdzXipkra4KWcB2zJ5TUzXOXjz14w= X-Received: by 2002:a17:906:d103:b0:7ad:9673:8b73 with SMTP id b3-20020a170906d10300b007ad96738b73mr53202246ejz.14.1669809268394; Wed, 30 Nov 2022 03:54:28 -0800 (PST) MIME-Version: 1.0 References: <20221129214107.25572-1-gcc@hazardy.de> In-Reply-To: From: Jonathan Wakely Date: Wed, 30 Nov 2022 11:54:17 +0000 Message-ID: Subject: Re: [PATCH] libstdc++: Add error handler for To: =?UTF-8?Q?Fran=C3=A7ois_Dumont?= Cc: =?UTF-8?B?QmrDtnJuIFNjaMOkcGVycw==?= , gcc-patches@gc.gnu.org, libstdc++@gcc.gnu.org X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/mixed; boundary="0000000000004950d805eeaec4f1" X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,HTML_MESSAGE,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: --0000000000004950d805eeaec4f1 Content-Type: multipart/alternative; boundary="0000000000004950d505eeaec4ef" --0000000000004950d505eeaec4ef Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, 30 Nov 2022 at 06:04, Fran=C3=A7ois Dumont via Libstdc++ < libstdc++@gcc.gnu.org> 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 function directly? And I think we should use threaded=3D1 for the __glibcxx_backtrace_create_state call. So like the attached patch. --0000000000004950d505eeaec4ef-- --0000000000004950d805eeaec4f1 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_lb3laxmi0 Y29tbWl0IGIxYWIzY2E1NGM1OGU5ZTU1MDU5MjliNThiZDMxMWFjYTQ0NThj ZGEKQXV0aG9yOiBKb25hdGhhbiBXYWtlbHkgPGp3YWtlbHlAcmVkaGF0LmNv bT4KRGF0ZTogICBXZWQgTm92IDMwIDExOjQ4OjM1IDIwMjIKCiAgICBsaWJz dGRjKys6IFBhc3MgZXJyb3IgaGFuZGxlciB0byBsaWJiYWNrdHJhY2UgZnVu Y3Rpb25zCiAgICAKICAgIEFsc28gcmVtb3ZlIGEgcmVkdW5kYW50IGRhdGEg bWVtYmVyLCB3aGljaCBhbHNvIGFsbG93cyByZW1vdmluZyBzZXZlcmFsCiAg ICBuYW1lc3BhY2Ugc2NvcGUgZGVjbGFyYXRpb25zLgogICAgCiAgICBsaWJz dGRjKystdjMvQ2hhbmdlTG9nOgogICAgCiAgICAgICAgICAgICogaW5jbHVk ZS9kZWJ1Zy9mb3JtYXR0ZXIuaCBbX0dMSUJDWFhfREVCVUdfQkFDS1RSQUNF XQogICAgICAgICAgICAoX0Vycm9yX2Zvcm1hdHRlcjo6X0Vycm9yX2Zvcm1h dHRlcik6IFBhc3MgZXJyb3IgaGFuZGxlciB0bwogICAgICAgICAgICBfX2ds aWJjeHhfYmFja3RyYWNlX2NyZWF0ZV9zdGF0ZS4KICAgICAgICAgICAgKF9F cnJvcl9mb3JtYXR0ZXI6Ol9NX2JhY2t0cmFjZV9mdWxsKTogUmVtb3ZlIGRh dGEgbWVtYmVyLgogICAgICAgICAgICAoX0Vycm9yX2Zvcm1hdHRlcjo6X1Nf ZXJyKTogRGVmaW5lIGVtcHR5IGZ1bmN0aW9uLgogICAgICAgICAgICAqIHNy Yy9jKysxMS9kZWJ1Zy5jYyAoX0Vycm9yX2Zvcm1hdHRlcjo6X01fZXJyb3Ip OiBDYWxsCiAgICAgICAgICAgIF9fZ2xpYmN4eF9iYWNrdHJhY2VfZnVsbCBk aXJlY3RseS4KCmRpZmYgLS1naXQgYS9saWJzdGRjKystdjMvaW5jbHVkZS9k ZWJ1Zy9mb3JtYXR0ZXIuaCBiL2xpYnN0ZGMrKy12My9pbmNsdWRlL2RlYnVn L2Zvcm1hdHRlci5oCmluZGV4IGYxMjAxNjNjNmQ0Li4yZGQ5MGJkZjIzYiAx MDA2NDQKLS0tIGEvbGlic3RkYysrLXYzL2luY2x1ZGUvZGVidWcvZm9ybWF0 dGVyLmgKKysrIGIvbGlic3RkYysrLXYzL2luY2x1ZGUvZGVidWcvZm9ybWF0 dGVyLmgKQEAgLTMyLDM0ICszMiwxMSBAQAogI2luY2x1ZGUgPGJpdHMvYysr Y29uZmlnLmg+CiAKICNpZiBfR0xJQkNYWF9IQVZFX1NUQUNLVFJBQ0UKLXN0 cnVjdCBfX2dsaWJjeHhfYmFja3RyYWNlX3N0YXRlOwotCiBleHRlcm4gIkMi Ci17Ci0gIF9fZ2xpYmN4eF9iYWNrdHJhY2Vfc3RhdGUqCi0gIF9fZ2xpYmN4 eF9iYWNrdHJhY2VfY3JlYXRlX3N0YXRlKGNvbnN0IGNoYXIqLCBpbnQsCi0J CQkJICAgdm9pZCgqKSh2b2lkKiwgY29uc3QgY2hhciosIGludCksCi0JCQkJ ICAgdm9pZCopOwotCi0gIHR5cGVkZWYgaW50ICgqX19nbGliY3h4X2JhY2t0 cmFjZV9mdWxsX2NhbGxiYWNrKSAoCi0gICAgdm9pZCosIF9fVUlOVFBUUl9U WVBFX18sIGNvbnN0IGNoYXIgKiwgaW50LCBjb25zdCBjaGFyKik7Ci0KLSAg dHlwZWRlZiB2b2lkICgqX19nbGliY3h4X2JhY2t0cmFjZV9lcnJvcl9jYWxs YmFjaykgKAotICAgIHZvaWQqLCBjb25zdCBjaGFyKiwgaW50KTsKLQotICB0 eXBlZGVmIGludCAoKl9fZ2xpYmN4eF9iYWNrdHJhY2VfZnVsbF9mdW5jKSAo Ci0gICAgX19nbGliY3h4X2JhY2t0cmFjZV9zdGF0ZSosIGludCwKLSAgICBf X2dsaWJjeHhfYmFja3RyYWNlX2Z1bGxfY2FsbGJhY2ssCi0gICAgX19nbGli Y3h4X2JhY2t0cmFjZV9lcnJvcl9jYWxsYmFjaywKLSAgICB2b2lkKik7Ci0K LSAgaW50Ci0gIF9fZ2xpYmN4eF9iYWNrdHJhY2VfZnVsbCgKLSAgICBfX2ds aWJjeHhfYmFja3RyYWNlX3N0YXRlKiwgaW50LAotICAgIF9fZ2xpYmN4eF9i YWNrdHJhY2VfZnVsbF9jYWxsYmFjaywKLSAgICBfX2dsaWJjeHhfYmFja3Ry YWNlX2Vycm9yX2NhbGxiYWNrLAotICAgIHZvaWQqKTsKLX0KK3N0cnVjdCBf X2dsaWJjeHhfYmFja3RyYWNlX3N0YXRlKgorX19nbGliY3h4X2JhY2t0cmFj ZV9jcmVhdGVfc3RhdGUoY29uc3QgY2hhciosIGludCwKKwkJCQkgdm9pZCgq KSh2b2lkKiwgY29uc3QgY2hhciosIGludCksCisJCQkJIHZvaWQqKTsKICNl bmRpZgogCiAjaWYgX19jcHBfcnR0aQpAQCAtNjA5LDggKzU4Niw3IEBAIG5h bWVzcGFjZSBfX2dudV9kZWJ1ZwogICAgICwgX01fZnVuY3Rpb24oX19mdW5j dGlvbikKICNpZiBfR0xJQkNYWF9IQVZFX1NUQUNLVFJBQ0UKICMgaWZkZWYg X0dMSUJDWFhfREVCVUdfQkFDS1RSQUNFCi0gICAgLCBfTV9iYWNrdHJhY2Vf c3RhdGUoX19nbGliY3h4X2JhY2t0cmFjZV9jcmVhdGVfc3RhdGUoMCwgMCwg MCwgMCkpCi0gICAgLCBfTV9iYWNrdHJhY2VfZnVsbCgmX19nbGliY3h4X2Jh Y2t0cmFjZV9mdWxsKQorICAgICwgX01fYmFja3RyYWNlX3N0YXRlKF9fZ2xp YmN4eF9iYWNrdHJhY2VfY3JlYXRlX3N0YXRlKDAsIDEsIF9TX2VyciwgMCkp CiAjIGVsc2UKICAgICAsIF9NX2JhY2t0cmFjZV9zdGF0ZSgpCiAjIGVuZGlm CkBAIC02MzIsNyArNjA4LDggQEAgbmFtZXNwYWNlIF9fZ251X2RlYnVnCiAg ICAgY29uc3QgY2hhcioJCV9NX2Z1bmN0aW9uOwogI2lmIF9HTElCQ1hYX0hB VkVfU1RBQ0tUUkFDRQogICAgIF9fZ2xpYmN4eF9iYWNrdHJhY2Vfc3RhdGUq CQlfTV9iYWNrdHJhY2Vfc3RhdGU7Ci0gICAgX19nbGliY3h4X2JhY2t0cmFj ZV9mdWxsX2Z1bmMJX01fYmFja3RyYWNlX2Z1bGw7CisKKyAgICBzdGF0aWMg dm9pZCBfU19lcnIodm9pZCosIGNvbnN0IGNoYXIqLCBpbnQpIHsgfQogI2Vu ZGlmCiAKICAgcHVibGljOgpkaWZmIC0tZ2l0IGEvbGlic3RkYysrLXYzL3Ny Yy9jKysxMS9kZWJ1Zy5jYyBiL2xpYnN0ZGMrKy12My9zcmMvYysrMTEvZGVi dWcuY2MKaW5kZXggOWVkYTM4MDIzZjcuLjJmMjczZWMyYzkzIDEwMDY0NAot LS0gYS9saWJzdGRjKystdjMvc3JjL2MrKzExL2RlYnVnLmNjCisrKyBiL2xp YnN0ZGMrKy12My9zcmMvYysrMTEvZGVidWcuY2MKQEAgLTEwODQsNiArMTA4 NCwyMCBAQCBuYW1lc3BhY2UKICAgeyBwcmludF9zdHJpbmcoY3R4LCBzdHIs IG5iYywgbnVsbHB0ciwgMCk7IH0KIAogI2lmIF9HTElCQ1hYX0hBVkVfU1RB Q0tUUkFDRQorZXh0ZXJuICJDIgoreworICB1c2luZyBfX2dsaWJjeHhfYmFj a3RyYWNlX2Z1bGxfY2FsbGJhY2sKKyAgICA9IGludCAoKikodm9pZCosIF9f VUlOVFBUUl9UWVBFX18sIGNvbnN0IGNoYXIgKiwgaW50LCBjb25zdCBjaGFy Kik7CisKKyAgdXNpbmcgX19nbGliY3h4X2JhY2t0cmFjZV9lcnJvcl9jYWxs YmFjayA9IHZvaWQgKCopKHZvaWQqLCBjb25zdCBjaGFyKiwgaW50KTsKKwor ICBpbnQKKyAgX19nbGliY3h4X2JhY2t0cmFjZV9mdWxsKF9fZ2xpYmN4eF9i YWNrdHJhY2Vfc3RhdGUqLCBpbnQsCisJCQkgICBfX2dsaWJjeHhfYmFja3Ry YWNlX2Z1bGxfY2FsbGJhY2ssCisJCQkgICBfX2dsaWJjeHhfYmFja3RyYWNl X2Vycm9yX2NhbGxiYWNrLAorCQkJICAgdm9pZCopOworfQorCiAgIHZvaWQK ICAgcHJpbnRfcmF3KFByaW50Q29udGV4dCYgY3R4LCBjb25zdCBjaGFyKiBz dHIsIHB0cmRpZmZfdCBuYmMpCiAgIHsKQEAgLTExOTIsOCArMTIwNiw4IEBA IG5hbWVzcGFjZSBfX2dudV9kZWJ1ZwogICAgIGlmIChfTV9iYWNrdHJhY2Vf c3RhdGUpCiAgICAgICB7CiAJcHJpbnRfbGl0ZXJhbChjdHgsICJCYWNrdHJh Y2U6XG4iKTsKLQlfTV9iYWNrdHJhY2VfZnVsbCgKLQkgIF9NX2JhY2t0cmFj ZV9zdGF0ZSwgMSwgcHJpbnRfYmFja3RyYWNlLCBudWxscHRyLCAmY3R4KTsK KwlfX2dsaWJjeHhfYmFja3RyYWNlX2Z1bGwoCisJICBfTV9iYWNrdHJhY2Vf c3RhdGUsIDEsIHByaW50X2JhY2t0cmFjZSwgX1NfZXJyLCAmY3R4KTsKIAlj dHguX01fZmlyc3RfbGluZSA9IHRydWU7CiAJcHJpbnRfbGl0ZXJhbChjdHgs ICJcbiIpOwogICAgICAgfQo= --0000000000004950d805eeaec4f1--