From nobody Sat Oct 31 10:06:34 2026 X-Original-To: dev-commits-src-branches@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 4jGtsl734wz6yLBq for ; Sat, 31 Oct 2026 10:06:35 +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) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4jGtsk6Jndz4d2p for ; Sat, 31 Oct 2026 10:06:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793441194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zX8k+3epVhhzrzMFsBakdsPDnMyKbOKBs6MMESMZTQg=; b=qeGSw/EtOu07sreviX24wSz7V0FCpQcD2/mdGQL4pvzA1hMIlkKfGHp96AbURN43H9yYTc lHnCm1DZIbWOFzG3x01aiOA3sCzHmkbrPWBd4w77zZM3hNERKtrhSGVBExJaEsT4Z+ZKe3 X8WiatxJy+JahJXywQMmCrommnYM05wp8MyBta9XvxYx6u/FwA1QeBN7js1nXodXNlIBWZ 21ueGJQMlv1u9AON1IIKkb2Hur15B+9Mf8JNApDy0vABdavcQoZrTFYY8xUuNTtBhruc7o tSk4OaPcu5KPCoA3KjnDlX0+A+O0QOHBpO2PirLCV/tW4wGwbmDooy4A/5G2qg== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1793441194; b=aBtnkNTr0WWEdpVekNpniRZG3hdwENRMqfaoCXR7MDoG/b0vYLAMicenSPcWOOfSUJLdaI GZQjdy7K1q4L3xeP7v4pb2oAG8AAnwqN49QuDxhlptTn5t1B/CIEZUl9IhaHZwzlDvKNUk mmqhtKZ6MxdOe0mS8vLLFbhDbNSbtuJk8WN2V90GPkIooIJVI6R7NMIIeFna7uEHhC5ekO pVPFVGbtHU6V5P8CEZ8wd1YtpXhmQcF2yr5Q/qMOr1+2n7vUeKz+U9KtS2TZNreibaizNW cWsecgHOMozHu4B6Pf1h/W9Efbx7piEqIm0iT4npg615se9N1niIyEfpUrDhKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793441194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zX8k+3epVhhzrzMFsBakdsPDnMyKbOKBs6MMESMZTQg=; b=vpqBPIg8NnDjz2NP9zndx0Nx+Y/8QLE7hBwIaKrSXwXmYVeMwh3w9BUo7SORzEyn8qh77u TWAxdO0WEsLBwQqMlMx0cHMW5jvC/5F8ExCZcDQukMANNO7irfgA/VdLnAdtWrdD3n2XGI P+ao8rYOzMcTslpXdtN1F493uk3OPRF+8Ur0RmUrQvnB/nWwqeyeDV0SivZylO6/Gw4ZI4 JOv+ipHiZhkM0D5rPhcBjD3+9TMwmN3Hyq02ncwI2G6s5NVYlT0cvDdaS5N6oSY3Ger83a DrglzKdZ7dkk/ad02rET8t419brotfZ3tXrEXREU6QNzamtnNtpSiHPZ0I0mwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4jGtsk5zBMz18Cc for ; Sat, 31 Oct 2026 10:06:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3b888 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 31 Oct 2026 10:06:34 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Faraz Vahedi From: Faraz Vahedi Subject: git: af116659c071 - stable/15 - libc: Fix atomic_init for GCC atomic objects List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org List-Id: Commits to the stable branches of the FreeBSD src repository List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kfv X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: af116659c071a284b036d4e8e232b107a7c3ecaa Auto-Submitted: auto-generated Date: Sat, 31 Oct 2026 10:06:34 +0000 Message-Id: <6ae5bdaa.3b888.1abdc1a8@gitrepo.freebsd.org> The branch stable/15 has been updated by kfv: URL: https://cgit.FreeBSD.org/src/commit/?id=af116659c071a284b036d4e8e232b107a7c3ecaa commit af116659c071a284b036d4e8e232b107a7c3ecaa Author: Faraz Vahedi AuthorDate: 2026-05-07 23:00:47 +0000 Commit: Faraz Vahedi CommitDate: 2026-10-31 10:03:31 +0000 libc: Fix atomic_init for GCC atomic objects Add a dedicated `__GNUC_ATOMICS` path that initialises via `atomic_store_explicit(obj, value, memory_order_relaxed)`. This ensures the required initialisation semantics without assuming any particular object representation. Previously, `atomic_init` on GCC fell through to the legacy `__val` member path intended only for old struct-backed atomic objects. For current atomic objects, this caused the following compilation error: > error: request for member '__val' in something not a structure or union As a result, valid code such as `atomic_init(&x, 1)` failed to compile when using GCC. This fix restores compatibility with standard-conforming callers while other code paths remain unchanged. Signed-off-by: Faraz Vahedi Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2185 (cherry picked from commit 54ac231419cf09557d2f5826b1539e83db552410) --- sys/sys/stdatomic.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/sys/stdatomic.h b/sys/sys/stdatomic.h index 3e4bdd505418..c0cbb7f785b5 100644 --- a/sys/sys/stdatomic.h +++ b/sys/sys/stdatomic.h @@ -96,6 +96,9 @@ #if defined(__CLANG_ATOMICS) #define atomic_init(obj, value) __c11_atomic_init(obj, value) +#elif defined(__GNUC_ATOMICS) +#define atomic_init(obj, value) atomic_store_explicit(obj, \ + value, __ATOMIC_RELAXED) #else #define atomic_init(obj, value) ((void)((obj)->__val = (value))) #endif