From nobody Tue Dec 16 04:40:13 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B6457298253; Fri, 9 May 2025 20:18:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746821890; cv=none; b=UN30cq3gWsev2NWDB/+xx1nQG7nNhBnaStwsfZoBT93ObG2gJL1XaYeWf/1Q58FKqXgbVfOEVcmWPpmdtgMh3s1xR0KpGkPf0QdXan2ojIhYPG8L7Vfc37QX/x7KMK7vbHDWuhb9LhorGFv4kkFPALWj36mK2YWcHzPxki1C4hM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1746821890; c=relaxed/simple; bh=z4MYmIyWMxc7ZB5anV6CPYR4FLSO8k77Eu2uXj6imDU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kV8QX+7uz5smAmtuUN+92x2b5hdePGvHzSqEn8RuWCidLea/8tihxb+t1bblM2AX4FVtolLZOxXbTivcW0kDAmL4qM0DC4n+O7EB9D1VKxECLgHRWtS/gF57oVeZFxmTW8JIv67mx1acKvaOqTXOMON2eblIfoW5h78oEQD8ZTc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=rrY2HN0C; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="rrY2HN0C" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9B3E2C4CEEE; Fri, 9 May 2025 20:18:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1746821890; bh=z4MYmIyWMxc7ZB5anV6CPYR4FLSO8k77Eu2uXj6imDU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=rrY2HN0CxT8sA/PhcO4YeRnnl/EAZjGwNJ61iNF4bWOD49MIfdYboyxLj6pLMjtXC ha/c5qeglSI9DDBkuoL/n9sAcL0RvHiJPDoT47ffUBQ+lYJLszpqrq54zFW1QMq4DO 00OcsLQb2BSuHIpkrLFB5K+ZWaFXD0jdvCRO9eojdsTGdXbXDOj6NYEciMsQZ2oW9m P7CBoXfJzg6N+W/6/xyd9XT7GR7d9wFouWgz2qM5suZ/efoD5m4andPsyNipJLgJa6 LDfx8GCrEXFNYS9nPMsBoy0bFk3qXDOf5hebpAwi+QrjNJ2M7MRCH+3RcCNPtIGxxb UxiEgBYJln7EA== From: Josh Poimboeuf To: x86@kernel.org Cc: linux-kernel@vger.kernel.org, Petr Mladek , Miroslav Benes , Joe Lawrence , live-patching@vger.kernel.org, Song Liu , laokz , Jiri Kosina , Marcos Paulo de Souza , Weinan Liu , Fazla Mehrab , Chen Zhongjin , Puranjay Mohan Subject: [PATCH v2 36/62] objtool: Simplify special symbol handling in elf_update_symbol() Date: Fri, 9 May 2025 13:17:00 -0700 Message-ID: <8026f424659bc6a9b1b90ed88b1d377d80a8e0b0.1746821544.git.jpoimboe@kernel.org> X-Mailer: git-send-email 2.49.0 In-Reply-To: References: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" !sym->sec isn't actually a thing: even STT_UNDEF and other special symbol types belong to NULL section 0. Simplify the initialization of 'shndx' accordingly. Signed-off-by: Josh Poimboeuf --- tools/objtool/elf.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tools/objtool/elf.c b/tools/objtool/elf.c index 9a1fc0392b7f..859d677e172c 100644 --- a/tools/objtool/elf.c +++ b/tools/objtool/elf.c @@ -635,7 +635,7 @@ static int elf_update_sym_relocs(struct elf *elf, struc= t symbol *sym) static int elf_update_symbol(struct elf *elf, struct section *symtab, struct section *symtab_shndx, struct symbol *sym) { - Elf32_Word shndx =3D sym->sec ? sym->sec->idx : SHN_UNDEF; + Elf32_Word shndx; Elf_Data *symtab_data =3D NULL, *shndx_data =3D NULL; Elf64_Xword entsize =3D symtab->sh.sh_entsize; int max_idx, idx =3D sym->idx; @@ -643,8 +643,7 @@ static int elf_update_symbol(struct elf *elf, struct se= ction *symtab, bool is_special_shndx =3D sym->sym.st_shndx >=3D SHN_LORESERVE && sym->sym.st_shndx !=3D SHN_XINDEX; =20 - if (is_special_shndx) - shndx =3D sym->sym.st_shndx; + shndx =3D is_special_shndx ? sym->sym.st_shndx : sym->sec->idx; =20 s =3D elf_getscn(elf->elf, symtab->idx); if (!s) { --=20 2.49.0