From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id 0GMlGtx8ZmcIsCYAWB0awg (envelope-from ) for ; Sat, 21 Dec 2024 03:31:24 -0500 Received: by simark.ca (Postfix, from userid 112) id 679041E097; Sat, 21 Dec 2024 03:31:24 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-5.3 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=unavailable autolearn_force=no version=4.0.0 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 03C671E05C for ; Sat, 21 Dec 2024 03:31:24 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id AEE633858C3A for ; Sat, 21 Dec 2024 08:31:23 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org AEE633858C3A Received: from cstnet.cn (smtp84.cstnet.cn [159.226.251.84]) by sourceware.org (Postfix) with ESMTPS id 6AEC73858D3C for ; Sat, 21 Dec 2024 08:30:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 6AEC73858D3C Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=iscas.ac.cn Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=iscas.ac.cn ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 6AEC73858D3C Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=159.226.251.84 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734769853; cv=none; b=v9dBpnLIGQB2pM7TTeCX+CJ1tCym81WWjnH9WlKDyf3F7niarK7CscfjiFgQINs2PKOF7D/6rpT22QEQIZQn3BI6zIXUPdNjbXa+qwcD6MDNxLaaoDluJTlcoRwmR3oCRGq/NpQihoiFWB8APmZ/AkpdrLGJdgt59grFIYnNhbg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734769853; c=relaxed/simple; bh=6MFQmWFjRW//pTLjsd328dLZRhksXtmfGCZBHa4Vez0=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=ZGKxtaVYoKNWVyBd7Brxyy0QGmcoJ3GK8eNHlcJzECWyEaeUNveq4HmrbJ+kLahQWA1XHGf6vdpYsQc3xZ6XLrDS/LMjcve8c+Ow4CgVr2g7F121QMtOKoco9uHGrqld5r+acA+wzNZHiqj+yxmqtWBtgad60kK+O2f8OLOCtfc= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6AEC73858D3C Received: from localhost.localdomain (unknown [122.6.126.75]) by APP-05 (Coremail) with SMTP id zQCowADHz8u0fGZnuFX4Ag--.1071S2; Sat, 21 Dec 2024 16:30:46 +0800 (CST) From: Yang Liu To: gdb-patches@sourceware.org Cc: tom@tromey.com, simon.marchi@polymtl.ca, Yang Liu Subject: [PATCH] gdb/jit: fix jit-reader linetable integrity Date: Sat, 21 Dec 2024 16:30:35 +0800 Message-ID: <20241221083035.80249-1-liuyang22@iscas.ac.cn> X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID: zQCowADHz8u0fGZnuFX4Ag--.1071S2 X-Coremail-Antispam: 1UD129KBjvJXoWrury5CF1UWFyrXF1DGF48JFb_yoW8Jr4UpF n8u3y3KryrGryfAwnrtaykZFy0gryqgFy3urW0g348Ar1UXFyvqFWjyw15ua4xAr4vyr4j qFn0yrWDZrWDZFJanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUkm14x267AKxVWUJVW8JwAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK02 1l84ACjcxK6xIIjxv20xvE14v26r4j6ryUM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4j 6F4UM28EF7xvwVC2z280aVAFwI0_GcCE3s1l84ACjcxK6I8E87Iv6xkF7I0E14v26rxl6s 0DM2vYz4IE04k24VAvwVAKI4IrM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI 64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AKxVWUJVW8Jw Am72CE4IkC6x0Yz7v_Jr0_Gr1lF7xvr2IYc2Ij64vIr41lF7I21c0EjII2zVCS5cI20VAG YxC7MxAIw28IcxkI7VAKI48JMxC20s026xCaFVCjc4AY6r1j6r4UMI8I3I0E5I8CrVAFwI 0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17CEb7AF67AKxVWUAVWUtwCIc40Y 0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j6r1xMIIF0xvE2Ix0cI8IcVCY1x0267AKxV WUJVW8JwCI42IY6xAIw20EY4v20xvaj40_Jr0_JF4lIxAIcVC2z280aVAFwI0_Jr0_Gr1l IxAIcVC2z280aVCY1x0267AKxVWUJVW8JbIYCTnIWIevJa73UjIFyTuYvjfU5sqWUUUUU X-Originating-IP: [122.6.126.75] X-CM-SenderInfo: 5olx5tdqjsjq5lvft2wodfhubq/ X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org The custom linetable functionality in GDB's JIT Interface has been broken since commit 1acc9dca423f78e44553928f0de839b618c13766. In that commit, linetables were made independent from the objfile, which requires objfile->section_offsets to be initialized. However, section_offsets were never initialized in objfiles generated by GDB's JIT Interface with custom jit-readers, leading to GDB crashes when stepping into JITed code blocks with the following command already executed: jit-reader-load libmygdbjitreader.so This patch fixes the issue by initializing the minimum section_offsets required for linetable parsing procedures. --- gdb/jit.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gdb/jit.c b/gdb/jit.c index 77d41bf86ba..7027c84b5bf 100644 --- a/gdb/jit.c +++ b/gdb/jit.c @@ -665,6 +665,8 @@ jit_object_close_impl (struct gdb_symbol_callbacks *cb, objfile *objfile = objfile::make (nullptr, current_program_space, objfile_name.c_str (), OBJF_NOT_FILENAME); + objfile->section_offsets.assign (1, 0); + objfile->sect_index_text = 0; objfile->per_bfd->gdbarch = priv_data->gdbarch; for (gdb_symtab &symtab : obj->symtabs) -- 2.42.0