From nobody Fri Sep 5 23:29:06 2025 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 4cJXc33lNWz66Ybm; Fri, 05 Sep 2025 23:29:07 +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" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4cJXc30BPpz40nQ; Fri, 05 Sep 2025 23:29:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757114947; 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=P3FEnZmfvBQxuUWyLfPocpZV1dyblojtXQxorTEcbYs=; b=EgQxya9oBwgW9eOBTwzyLUONhdicVeKYuq2BSw1fmD/Wf/24VXgXLCQy0QQE0x4p5j3SaF 0eCWMUT4j0cCVwflCIuaW6E91M0FySDPQ5sOtPj7nvrNj7kF3pQGs1Rywnvr0EPJoGhLDB 4oGO36A04vvK0Bt6jE9BBXMOa1FinCU98FGSt/Y9Bh1Nc8gsywp6bKvB64/EQhrIxJOu7r 1/QKULMr2uH1HVKTj1L2UzFXD6Rf14CEZd+S+1+/WsScuaN0OoowkYPE62CK7qky+gbv0A to7RwSn2vTx7/rIQ59PcuYuJcK3fldyR758WzM2cKxWvZw0srwucUIzmxEOWPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757114947; 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=P3FEnZmfvBQxuUWyLfPocpZV1dyblojtXQxorTEcbYs=; b=hId8fDK/vzKqBc8NUCqoCwckYVuyu+BY9c/J2/AuDcSzjlcrf/YEspo3f2G8VmXW9Dj+b5 8iSW1Ql9zTJXaXz1AIGPMgTwUPUw2AJrB/YFx5hUTa69tygIvrpxDrWpgHZglburi6LKkD b8hi/CTrtyLoHOcJ5EZhK+lWSEI/DUSSuSdu9AGsVs6tQnlp2qWMXN9z/LF5UQOrD8f5cM 5weBlTVnu5lIAOx/6rYxH440ksmY2VC4WeSTsF9PZGiNBJ4F3XE9+L0JzZvsPhHiYhcjDr I9XxGLv8rjXrp3UPuWLXrUKGDweLYvSalZvrwEiGC4WhQ2adbkU8pGGoOdCHCA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757114947; a=rsa-sha256; cv=none; b=wdg67G+ACL2/89/68PAuDeMiweUbeSDhbitKxZvnrtVEwbTsz9Gvm2ZpHMs8fuP5fERTzv gI5OSNv4DwIeiyTIGm+cnIuC9m/VWjKaLipvq8SK1NNDsXomHVhONocC+UwrPH+tplZPTW v6t0Z3RHur15oMEMh40nRWKeqUhJpOVm2Czcm6J8bb1A5GyKtxTEvzquLm2Sg0KqlP5umD bHcExlQAFqY3zQhRdHkO+yYSyffBJn09Jc23hExPVM9P2uLntWUmItloYADIIFyXJcPYU7 38qrqSDXYOjw9PsQusyOp5TXny+IgeiEBO3ClmfeNaUYfqJVxA+cGzSOKJFgig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cJXc26pMmz17wW; Fri, 05 Sep 2025 23:29:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 585NT6E0029440; Fri, 5 Sep 2025 23:29:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 585NT6dF029437; Fri, 5 Sep 2025 23:29:06 GMT (envelope-from git) Date: Fri, 5 Sep 2025 23:29:06 GMT Message-Id: <202509052329.585NT6dF029437@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ff5bcb742899 - main - LinuxKPI: add __struct_size 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: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ff5bcb742899f8398ccb1b9e292b2e5aeeb7fedb Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ff5bcb742899f8398ccb1b9e292b2e5aeeb7fedb commit ff5bcb742899f8398ccb1b9e292b2e5aeeb7fedb Author: Bjoern A. Zeeb AuthorDate: 2025-08-18 19:53:55 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-09-05 23:24:16 +0000 LinuxKPI: add __struct_size Use __builtin_object_size() by default. If __builtin_dynamic_object_size() is available use that instead. I would hope that in a future version we can remove the conditional checks but in order to be able to MFC this without checking all compiler versions simply keep it this way for now. Sponsored by: The FreeBSD Foundation (initially) MFC after: 3 days Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D52077 --- sys/compat/linuxkpi/common/include/linux/compiler.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/compiler.h b/sys/compat/linuxkpi/common/include/linux/compiler.h index fb5ad3bf4fe4..948396144ad6 100644 --- a/sys/compat/linuxkpi/common/include/linux/compiler.h +++ b/sys/compat/linuxkpi/common/include/linux/compiler.h @@ -130,4 +130,10 @@ #define is_signed_type(t) ((t)-1 < (t)1) #define is_unsigned_type(t) ((t)-1 > (t)1) +#if __has_builtin(__builtin_dynamic_object_size) +#define __struct_size(_s) __builtin_dynamic_object_size(_s, 0) +#else +#define __struct_size(_s) __builtin_object_size(_s, 0) +#endif + #endif /* _LINUXKPI_LINUX_COMPILER_H_ */