From nobody Tue Apr 29 11:42:07 2025 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 4Zmz1r13Rnz5tvGB; Tue, 29 Apr 2025 11:42:08 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zmz1q3457z3xV9; Tue, 29 Apr 2025 11:42:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1745926927; 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=WhdxWZ9fLDvFmp4MJnZmuPQPVDXDVCO1vTP90SvGLWg=; b=hXdqsSpvFxVYFpnYvoH+9y2GYzIXVjMwRxPekhKYy/kCTCS3G4P6QiHNrp+wGthyeOy6hm FQJBNIrEADMw5/sZvNZ5ImFglI30NfdREn0HXoUostTcR/XrQ6IStUC7qiY6I94Y2DO5mS THhM31xhkqUaCAZ+V+S8e7nLr5C8zb35C2wCBmt2kykYD9AuTwsdoeDi/Q0QbmhOmU/NZj a5Z9RaspAPSSz+Sd99FTFmlnvp0pjXi/r51hLN4LleLsCkkzJJz0QKwXzXilSzGa4mpsXJ e+jEKtZCJg89aIwEXzvpMQVNDNHTB5FyeQ8edOtX+33kfQQP9E9MKTShxaoViA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1745926927; a=rsa-sha256; cv=none; b=XYNQS8K3jNIRlUlBcZU1beaDsWOr4TZfeGaOGseOYwg+jU5hgwyvmZZrZNXjuwvjPSzpIh ai2gWCJy8F9uDiWq6262wOBjSsvEepvn5llTus1/5v2hzkTqZIyjqEKHntdyOfXc3fIldM 6Vd64PtjBK5udJmzSNhQbvBUZp1KBBo6GA0UokNtkrzl57Hl32CClgXAn8w1pcIwn1YxeQ UnKsaEz+8s/NDpf1YXfV5jT1GoqJYP8cig5h2RonUjJt5bvutkSRybBWA97HSq4RavkBd0 fZgRfsWCliqlwuaipXcRgWjbkEXDIJdfC8QW5dj2sBWymCVuBHhe32nq67RNMg== 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=1745926927; 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=WhdxWZ9fLDvFmp4MJnZmuPQPVDXDVCO1vTP90SvGLWg=; b=DxNXoRzyw+5xl3mhK6/9Ux7RxoBXF6c9fcj1eq9dUvrjViGknd2h8xjecVqTR7NzhTt8nD ZQrknO6tNAEPCF7XQ8RSKdGTuskdZgZ1SReJs9Ogqu/4yPY7oBItIFYn1c/HVKt2333ZUV RMArW8Fnqz4Z6ZXTfPSJl91O+rte7DHBwnsrXsOXHuQTdxbVgC7YkscJJcCWxvYkWNya/m AD4J+XAyQ1ehKzbVdPC4HZ04wZdOltikLvsPcngYaoq8XXI3gjy9KlaLMHfUXDozzXyShz LDFFrjwbhPIo6+A8RUKQAsR9gjx6NZHt+rSgEWa4fmTq7FGZ1MhK5u0zfcvnsQ== 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 4Zmz1q2fSWz3jY; Tue, 29 Apr 2025 11:42:07 +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 53TBg7sp049033; Tue, 29 Apr 2025 11:42:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53TBg7ax049030; Tue, 29 Apr 2025 11:42:07 GMT (envelope-from git) Date: Tue, 29 Apr 2025 11:42:07 GMT Message-Id: <202504291142.53TBg7ax049030@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 5fc174c52f18 - stable/14 - LinuxKPI: add container_of_const() 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: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5fc174c52f180c289ca3b50308e8689cced18103 Auto-Submitted: auto-generated The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=5fc174c52f180c289ca3b50308e8689cced18103 commit 5fc174c52f180c289ca3b50308e8689cced18103 Author: Bjoern A. Zeeb AuthorDate: 2025-04-24 09:25:21 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-29 10:49:33 +0000 LinuxKPI: add container_of_const() Implement container_of_const() needed for wireless driver updates. Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D49999 (cherry picked from commit 6841b9987e83fdd9a5b05ceafc20811469222d8b) --- sys/compat/linuxkpi/common/include/linux/container_of.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/container_of.h b/sys/compat/linuxkpi/common/include/linux/container_of.h index 449507fcf9c1..7210d531b055 100644 --- a/sys/compat/linuxkpi/common/include/linux/container_of.h +++ b/sys/compat/linuxkpi/common/include/linux/container_of.h @@ -41,6 +41,14 @@ (type *)((uintptr_t)__p - offsetof(type, member)); \ }) +#define container_of_const(ptr, type, member) \ + _Generic(ptr, \ + const typeof(*(ptr)) *: \ + (const type *)container_of(ptr, type, member), \ + default: \ + container_of(ptr, type, member) \ + ) + #define typeof_member(type, member) __typeof(((type *)0)->member) #endif