From nobody Tue Feb 10 15:10:56 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4f9Q4K0ft3z6RSrx for ; Tue, 10 Feb 2026 15:10:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4f9Q4J64hqz43CY for ; Tue, 10 Feb 2026 15:10:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770736256; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ao4UQ69IHDzQ7j0Ng4DeH7UYXpOlMF7Mqo3gj7f4Ieo=; b=jTZjtkjaP4dB/Ba+bgtFgkYRnlGjUp0GaAz/I2f2fJzhG5zrlEhLC67yp/o0N4ebvd95tN KTRPyVhtrb79yv6Q08rmwt0anpN/8o+phYekjiiQepZg6EEZ+16HsalgtRYAH0b6+DBPsz u6cTVR3TtGE4bJySAZC1eGPXVu8Rm7KVNXzf5S7je7cqMB74AZIcCV0Zjl2ewg4f4bIxIv Yrh2Y/8jaczNciSbM4OldZyAz0b9p/dQRCnItH5emZ80vM7DoXvUlNOpYHCphQT1NpDeXa vMqi2H1RfH8AnNhjR/EniU7uV+7dDipziIXj6DssfilM3+woYWQNJeSmHtmtBQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1770736256; a=rsa-sha256; cv=none; b=Td19qXM/FpeG4QrSAovutJJji5jTcbz3WOuzLv86yiGsv5eb5K5r6QmjVNYUSZeuAjgrOc WwHHXcOMWhV+D0nMRDFWHAdd9skR4uWcOxVsQvZTdjP6kzdoF8ZZ1im5Gi5XUGbrSvjS5Y Qkp3aqAoKH55uMqpMEe4duSrQh+FuWj7Q3t7aI6btqhqthNlWgxoUC8vci54C4vlAnZnQx wnduqspaTMh5MYjCYttsMZd7vsTv+gjB5HLjP+GMl6LNzUitAWZiAVFIcQhJlGjlTMfFhW 8RBYXMF3uj0/eK9/gt3rgFfIo69XrKs026K3crcW2Lxk/jTyXKjLsAuMBf3r5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770736256; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ao4UQ69IHDzQ7j0Ng4DeH7UYXpOlMF7Mqo3gj7f4Ieo=; b=vFTZIRlGMn2gC33reulxmfvGAEm4DPUABIY5X/pcYOfV4iqseF2q8Jlk0qvzHOX/Em4nAG OWQrIuGjBt2WmMTAG90tUY+aEOTl9sFSr6VClCHxSw/TvRFCw5AeVLaDLPoLK4MEh9t7ps NunnJs+tOZ0PXAbBDtqdOkhC7nNXyqBAGEZlUTRuAJ8BgRCQSW7z8DTI3xIbJ2VtUHOUzK 0unlAlrPQ2Q5ezP4FVSVfGmEnpfB+BUQDBh+0xF4Iu8cHefQRPP9ROqPOZrZZmqxFXorqT tgN2Z00tldPWSIn1Wl82F365aJS8T94mEL9lT4rJ8z8ckzFd87JeFIkk9IrSNQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4f9Q4J5S37z1Mln for ; Tue, 10 Feb 2026 15:10:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 44429 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 10 Feb 2026 15:10:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 4c23a98ba3af - main - asan: Use memset_early() to fill shadow memory List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4c23a98ba3af3a00004fd7ef54e6330b4d665d55 Auto-Submitted: auto-generated Date: Tue, 10 Feb 2026 15:10:56 +0000 Message-Id: <698b4a80.44429.ff2105c@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=4c23a98ba3af3a00004fd7ef54e6330b4d665d55 commit 4c23a98ba3af3a00004fd7ef54e6330b4d665d55 Author: Mark Johnston AuthorDate: 2026-02-10 13:53:52 +0000 Commit: Mark Johnston CommitDate: 2026-02-10 15:10:39 +0000 asan: Use memset_early() to fill shadow memory __builtin_memset() calls are replaced with calls to memset(), but that can't be used before ifunc relocations are processed if the implementation is selected at boot time. Meanwhile, the sanitizer may emit calls to __asan_set_shadow_*() as soon as locore jumps into C code, before ifuncs are selected. Just unconditionally use memset_early() to work around this. Reported by: andrew MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55079 --- sys/kern/subr_asan.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/kern/subr_asan.c b/sys/kern/subr_asan.c index fee6c1a844e2..867d232198b9 100644 --- a/sys/kern/subr_asan.c +++ b/sys/kern/subr_asan.c @@ -241,7 +241,7 @@ kasan_shadow_Nbyte_fill(const void *addr, size_t size, uint8_t code) shad = (void *)kasan_md_addr_to_shad((uintptr_t)addr); size = size >> KASAN_SHADOW_SCALE_SHIFT; - __builtin_memset(shad, code, size); + memset_early(shad, code, size); } /* @@ -1168,7 +1168,7 @@ __asan_handle_no_return(void) void __asan_set_shadow_##byte(void *, size_t); \ void __asan_set_shadow_##byte(void *addr, size_t size) \ { \ - __builtin_memset((void *)addr, 0x##byte, size); \ + memset_early((void *)addr, 0x##byte, size); \ } ASAN_SET_SHADOW(00);