From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vs1-xe31.google.com (mail-vs1-xe31.google.com [IPv6:2607:f8b0:4864:20::e31]) by sourceware.org (Postfix) with ESMTPS id E90B33858D37 for ; Tue, 14 Mar 2023 13:48:30 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E90B33858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-vs1-xe31.google.com with SMTP id x25so6052354vsj.2 for ; Tue, 14 Mar 2023 06:48:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678801710; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=w7FnwbLmMFyC8z0LZTuYDVsZbTi/DonczFn4nhaEfLs=; b=VGV87JSGqTobOriNuxt+vnFGY96978xNE7N197eXTlZe+elmRpMKSJg80mrexValRs 22OOhjwzrfsRvGQZTfnhIZpMoZ3oZA/Vz4nmYTm2vN6EAeOThiA+YFK3o+LIGl7Sba2V IIV2ZfhK6RFcj63ktP3rXwuZ/fij/b25R8mdRaFZOoskVC+8+hKyDeRIc/uEu8CjvKEA TpFXQF+JwKtlIfKKCq8F+Q+uGsh4LpRIYIl3VrNtRyj8JIpC/2VgEyzWEHptscYFo6Ue mD40UFiOd1qceRB/oIm3AmRNPhOWCi40l6EdgYj1oMNTbUcJkiT6nkhNjNLSzBCC2rZc Zi2g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678801710; h=content-transfer-encoding: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=w7FnwbLmMFyC8z0LZTuYDVsZbTi/DonczFn4nhaEfLs=; b=cPs9ytmFs/5TLonA/dqKcXi8M/nQ1SriRfLq+gyIIHXd9ELIA9109bZ5D+s0yXlg/Q d+31ziZLphQuc5tFMytn+a7sEmeOz9LB5KrqqsiEVs+chjTC2/w3XXuUV5flciJn/8FF YVPF1xAf9C4QQ7gXw1kN5hKwoUxMGQQLf65JZvRPfqHo4gYGzI9IHFe5goy2V9fzlkUZ W5o65ESGBha1Q+1EfYhiFzVaonODDcD0fxkx4vGYkJ1NEpwT9AUojqEqT9rV54XRsQ8t fRxbpy0KvmzBbNi1Sk4FSo6a0aQJQW2YYkLV9oDpPKjtcqKwaA2c01FFIKoS0ejwwTY5 fXMw== X-Gm-Message-State: AO0yUKVm05XjWFz/7eL6f1v2DDxfAy5O6Xprg1dqYxE4Oot9hxkoOQdr NnwxbbCNk7d7RuT5aqBFgU/dplIHL2yZOgU9K1Q= X-Google-Smtp-Source: AK7set87ok7XBEYi23xth/3mbBud1MjvMPIMeeNY2Mui66zlFEcqCkMiPSUvYkVtBG2a9XTEtZecWjyzcu4BLuYivvA= X-Received: by 2002:a67:cb8f:0:b0:423:e7bf:ef7 with SMTP id h15-20020a67cb8f000000b00423e7bf0ef7mr5164049vsl.7.1678801710004; Tue, 14 Mar 2023 06:48:30 -0700 (PDT) MIME-Version: 1.0 References: <20230314002354.367655-1-sam@gentoo.org> In-Reply-To: From: Kito Cheng Date: Tue, 14 Mar 2023 21:48:18 +0800 Message-ID: Subject: Re: [PATCH v4 1/2] RISC-V: Avoid calloc() poisoning on musl To: Richard Biener Cc: Sam James , gcc-patches@gcc.gnu.org, Palmer Dabbelt , Andrew Waterman , Jim Wilson , Ju-Zhe Zhong Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-8.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,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: committed to trunk, thanks :) On Tue, Mar 14, 2023 at 9:44=E2=80=AFPM Kito Cheng w= rote: > > RISC-V part is ok, and I assume you didn't have write access so I'm > gonna push that since the system.h change also got approved :) > > On Tue, Mar 14, 2023 at 5:07=E2=80=AFPM Richard Biener via Gcc-patches > wrote: > > > > On Tue, Mar 14, 2023 at 1:24=E2=80=AFAM Sam James via Gcc-patches > > wrote: > > > > > > This fixes errors like: > > > ``` > > > In file included from /usr/include/pthread.h:30, > > > from /usr/lib/gcc/riscv64-gentoo-linux-musl/12/inclu= de/g++-v12/riscv64-gentoo-linux-musl/bits/gthr-default.h:35, > > > from /usr/lib/gcc/riscv64-gentoo-linux-musl/12/inclu= de/g++-v12/riscv64-gentoo-linux-musl/bits/gthr.h:148, > > > from /usr/lib/gcc/riscv64-gentoo-linux-musl/12/inclu= de/g++-v12/ext/atomicity.h:35, > > > from /usr/lib/gcc/riscv64-gentoo-linux-musl/12/inclu= de/g++-v12/bits/ios_base.h:39, > > > from /usr/lib/gcc/riscv64-gentoo-linux-musl/12/inclu= de/g++-v12/ios:42, > > > from /usr/lib/gcc/riscv64-gentoo-linux-musl/12/inclu= de/g++-v12/istream:38, > > > from /usr/lib/gcc/riscv64-gentoo-linux-musl/12/inclu= de/g++-v12/sstream:38, > > > from /var/tmp/portage/sys-devel/gcc-13.0.1_pre202303= 05/work/gcc-13-20230305/gcc/config/riscv/genrvv-type-indexer.cc:22: > > > /usr/include/sched.h:84:7: error: attempt to use poisoned "calloc" > > > 84 | void *calloc(size_t, size_t); > > > | ^ > > > /usr/include/sched.h:124:36: error: attempt to use poisoned "calloc" > > > 124 | #define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n)= )) > > > | ^ > > > make[3]: *** [Makefile:2855: build/genrvv-type-indexer.o] Error 1 > > > ``` > > > > > > See also 3b21c21f3f5726823e19728fdd1571a14aae0fb3 and 49d508065bdd36f= b1a9b6aad9666b1edb5e06474, > > > which was fixed in PR106102. > > > > The system.h change is OK > > > > > gcc/ChangeLog: > > > * config/riscv/genrvv-type-indexer.cc: Avoid calloc() poisoni= ng on musl by > > > including earlier. > > > * system.h: Add INCLUDE_SSTREAM. > > > > > > Signed-off-by: Sam James > > > --- > > > gcc/config/riscv/genrvv-type-indexer.cc | 2 +- > > > gcc/system.h | 4 ++++ > > > 2 files changed, 5 insertions(+), 1 deletion(-) > > > > > > diff --git a/gcc/config/riscv/genrvv-type-indexer.cc b/gcc/config/ris= cv/genrvv-type-indexer.cc > > > index 0ef1d766002..e677b55290c 100644 > > > --- a/gcc/config/riscv/genrvv-type-indexer.cc > > > +++ b/gcc/config/riscv/genrvv-type-indexer.cc > > > @@ -14,12 +14,12 @@ along with GCC; see the file COPYING3. If not se= e > > > . */ > > > > > > #include "bconfig.h" > > > +#define INCLUDE_SSTREAM > > > #include "system.h" > > > #include "errors.h" > > > > > > #include "coretypes.h" > > > > > > -#include > > > #include > > > #include > > > > > > diff --git a/gcc/system.h b/gcc/system.h > > > index 64cd5a49258..cf45db3f97e 100644 > > > --- a/gcc/system.h > > > +++ b/gcc/system.h > > > @@ -751,6 +751,10 @@ extern int vsnprintf (char *, size_t, const char= *, va_list); > > > # include > > > #endif > > > > > > +#ifdef INCLUDE_SSTREAM > > > +# include > > > +#endif > > > + > > > #ifdef INCLUDE_MALLOC_H > > > #if defined(HAVE_MALLINFO) || defined(HAVE_MALLINFO2) > > > #include > > > -- > > > 2.40.0 > > >