From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from bg4.exmail.qq.com (bg4.exmail.qq.com [43.154.221.58]) by sourceware.org (Postfix) with ESMTPS id B03903858D28 for ; Sun, 23 Jul 2023 09:31:47 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org B03903858D28 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tinylab.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tinylab.org X-QQ-mid: bizesmtpipv601t1690104701tv2q Received: from archlinux.tail147f4.ts.net ( [255.3.167.7]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 23 Jul 2023 17:31:40 +0800 (CST) X-QQ-SSF: 01200000000000302000000A0000000 X-QQ-FEAT: HH6/KuQOBEa0WL7lvXijHC4OMFZ0p8ADJz2G7DWPucs9uZ2ujEuFMKQ2wMSC5 1g0Z8JuvFVrhr/dxxvv0naWfng4yTVkZ+VOpqt0alKp0MP/1fycT8W/VL1votOw8aH4Gqap CQAmkS7+6RF8duxsmCbL2qUvT4wB6szsscB2Rh8l6LW55s3QVJPMUTItYns6rvCuso4HCGr QEN82Hdc5dL0eLsqp/HOKYV6luHiySPDXkgacKJdw7yTYIqmCVzGiVF6UMMjZtcHlff1gcZ 8EYexT/x6u43UGb1/kBiSAxsBo6+zcRWBsOl2pQU/XQOUHP+0BUZ0RfBd0PxxV6c9sHl2QI HdWGN1p86i4JtSPCpO3XOGjMbxY1c6JWuVobDjPN9yMZXBRmGPNxxKtOOX5Ow== X-QQ-GoodBg: 0 X-BIZMAIL-ID: 3881182651494842587 From: Tan Yuan To: xry111@xry111.site Cc: falcon@tinylab.org, binutils@sourceware.org Subject: Re: [PATCH 0/1] gas: add new command line option --no-group-check Date: Sun, 23 Jul 2023 17:31:39 +0800 Message-ID: X-Mailer: git-send-email 2.41.0 In-Reply-To: <36ddb62827e935470fe09487e78142128641816b.camel@xry111.site> References: <36ddb62827e935470fe09487e78142128641816b.camel@xry111.site> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtpipv:tinylab.org:qybglogicsvrgz:qybglogicsvrgz5a-1 X-Spam-Status: No, score=-1.8 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,RCVD_ILLEGAL_IP,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi, > On Sat, 2023-07-22 at 11:47 +0800, Tan Yuan wrote: > > > > We hope to modify code like this in the kernel: > > + #define ___PASTE(a,b) a##b > > + #define __PASTE(a,b) ___PASTE(a,b) > > + #define __UNIQUE_ID_GROUP __PASTE(__PASTE(__COUNTER__, _), > > __LINE__) > > > > #define __ASM_EXTABLE_RAW(insn, fixup, type, data) \ > > - ".pushsection __ex_table, \"a\"\n" \ > > + ".attach_to_group " __stringify(__UNIQUE_ID_GROUP) "\n" \ > > + ".pushsection __ex_table, \"a?\"\n" \ > > "…" \ > > ".popsection\n" > > Note that even if this Binutils patch is accepted, it will only show up > in Binutils-2.42 and later. So the kernel maintainers will reject this > change, as you cannot tell everyone "use Binutils >= 2.42 to build the > kernel". > > I'd suggest to try figuring out a better solution. > -- > Xi Ruoyao > School of Aerospace Science and Technology, Xidian University Thanks your suggestion and I really need some new idea to solve this problems. This method is the best I can come up with so far. However, I don’t think "Binutils >= 2.42" is a problem, as what I am adding to kernel is an optional feature, user can choose to enable it. And it seems that we can check version of Binutils in the code[1]. [1]: https://stackoverflow.com/a/51008423 Tan Yuan