From nobody Tue Mar 31 15:58:36 2026 X-Original-To: dev-commits-src-all@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 4flXph3V2Qz6WF3R for ; Tue, 31 Mar 2026 15:58:36 +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 "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4flXph26Xnz3gXh for ; Tue, 31 Mar 2026 15:58:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1774972716; 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=2ZzODA2PxHfMIiOqXZgGh9bh+Sb6Vf0EuhKW+leDzLU=; b=v3+rfI0iCc4wM/+lfqi+FlqV9+Z8AE/ybAlzkVkBDLDzoFIlu5xMwRDNRd+PyWAEg+y19T FEp2fPnsEMlkGvGHi4oX7jZGBLm7CjoZ+DdJ7ZeTSNInitg7JaGxzuaucC74gumK6tt9a2 2AU0jaSmqOVDf4XsDuG0/jCkfjYzfeQrhcnwnfiS/5/+NGGYSZPxF0cOXLmdI0uOVxEDMt kc6SqaeNe5K9hUVbqrLbmkdSXTuvWMjZLrdEXdSvsKL+WLRtADpmblQNuPx5yXPjd1SxYE 8A/e9I4wTgUF47FkK/vDoYZNh2Xm7+byDi8Xgb554YvZLSsAH5ua4nMSike1cg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1774972716; a=rsa-sha256; cv=none; b=C7XfLDQtpEzTXcIHO7S/G74SROefKMGYzYXFz88XTW6FBYV5K83UCXNNzxJNGVgVqJJM+z Bs8SJLWl4XPwAyGPuYPJAiXmTiiKQmiZZovIIh/F4wNAWVTOb18VFycejhe9zOTyfUkG7x FMYjRfyggDH3QoF4+jwBDD/w5yEZ6PxqaGPeFz05BsNWR9roFmLb+JmMwMOcdF0k6JUIih oR5sZdOCyegPVQK78fDA+s78+kiPs5SOhhnm14dujTOpJuo8cA5/mj+bs/p3ypHJZm4Ovu fJ5CAh0GVKEPFV3Uy2dEcyfBWc/PYwrv0IRUlxOzLhRAC9eWkZOXmwAItgF4yw== 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=1774972716; 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=2ZzODA2PxHfMIiOqXZgGh9bh+Sb6Vf0EuhKW+leDzLU=; b=BfdDV8CuQqt31NNHUFlZFpwhr/lfCua5+76SsO07QliLFH6HMHSwGA4XDefNaNw9MqXsTu 3DqP50dLWKvnVHksAtXmddO31Z48soGX+7zuM5E5xXJ9q0cpI4djuJA3Lt45RabQAs4v3L 8jZ0OwU89LBZHxKBfnCEk7YMbgQMXZRPKyq8wjPuuWqWcrjY7oPbT1WscsnZlHg4c8tZAH sxm+Z4igzayYnJPqBn/UMpqS1390eOuiiYamweTjFRJjvrhcRHesdrTqTcCFUsm99JhR58 X6Px11fedo+DawV+GHD0IfCwbQRr0kn6qsF3F/cmvdXndHjsLsR7X8Vu9dhl3Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4flXph1ddCzc3W for ; Tue, 31 Mar 2026 15:58:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 39fac by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 31 Mar 2026 15:58:36 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 451b2c0a1274 - stable/15 - asan: Use memset_early() to fill shadow memory List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 451b2c0a12744beb8c26214bdc0ca6a325ce134c Auto-Submitted: auto-generated Date: Tue, 31 Mar 2026 15:58:36 +0000 Message-Id: <69cbef2c.39fac.44630378@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=451b2c0a12744beb8c26214bdc0ca6a325ce134c commit 451b2c0a12744beb8c26214bdc0ca6a325ce134c Author: Mark Johnston AuthorDate: 2026-02-10 13:53:52 +0000 Commit: Mark Johnston CommitDate: 2026-03-31 15:57:27 +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 (cherry picked from commit 4c23a98ba3af3a00004fd7ef54e6330b4d665d55) --- 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);