From nobody Wed Apr 22 21:08:32 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 4g1Bf854hVz6bKsN for ; Wed, 22 Apr 2026 21:08:32 +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" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4g1Bf82hwTz3krd for ; Wed, 22 Apr 2026 21:08:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1776892112; 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=w93FwK/uqR2GprNJX15F9Q7f+TNh+AwoLJeTRJMEclU=; b=jRoj2SP3BNE1McL1A/MWvmO1PGIkqkuWsyvSHg9NnBqV9juCKdCANY/euE1W1QxTQ7HUv6 KJTmIo42V6XErwO1+dVVN85PX0O8ldzfVIkPmthRyHRJgJtysHdAf4SC97IEq90u9PgJCD +KLi8TU+UYciWsCBDJHE3IkR7KlToSrIXjyzOGY5n4E4qRtnVILPuQM5Y6IPG4oGBti2OF FrnakzwIdQOtUjnIfPMq8D/lYWz207Zi8YLs41HhpzsWdPNw6rRMJI2p4EPLBHjTHut3n/ UaPrwdgWhkmMFnpNe5BunQBloucjQEsqLGJmYyA8vfsENhbnDTB9Ivi6coFohA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1776892112; a=rsa-sha256; cv=none; b=jZon4PhxeFl7Y6CHv39frW3+v+7flYUYW/hfKGZz0qgjCBs3swhf8FkO+251ul0ZbEU6xz 9xhrFbNEKA53+qjJgekRYRLiB2tOf9l56nBeroIu9cJrAhHGKbL5bZfI3J+zApOyZyx5OM O6+wqpghCIV45pdp9kM4J/3ethfINUkVCLHgahN+Ble720kLoDFFSEhQTYQgTs2v+bFNgg ZtSMrc0EkqwOEkCG1NgTcEXRGUcAll9PqBK8OB4dLpgu1Bqc9tG9rmqXso/DS5TlVRlJh4 /xaMm3jFDeYy/C0uJYnsmyDMTkXFSEnRqcLrZeSVgS38uRXG9eg34q8t5JHLNQ== 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=1776892112; 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=w93FwK/uqR2GprNJX15F9Q7f+TNh+AwoLJeTRJMEclU=; b=PBkf0Lx+Y/YCAc8T8SX+PjcjdINoqYwBr8kVJ3yKUmuR+NvwhhYistfxARE90cVLTPZDHa zqUlVDpKfuu5IS0QswIAUlhfjSs7UHfDLiSn/r99kM5PyP0q4o8J8KZFBKbyvPkp24QMdu VoGCz98/NltG3p+1f8h/du/lKnQOcfce/rOkksJ8PbXr70IKM2NHV/XOHQPnmcvxYkAyi3 z/BxZOdvjzfEBAyRNb2n64UCpjebuFtiFXGhPecbzLHKPYb52UNn6Qn51lJw3x9YYR36Jc grW32yXgpC/LqYzyMt7RCrJhqTJoIGm1xkQHMzcFogEIC+bi+sMSFoWrVmvOHg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4g1Bf82DRDznZc for ; Wed, 22 Apr 2026 21:08:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 26dcf by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 22 Apr 2026 21:08:32 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Jean-=?utf-8?Q?S=C3=A9bast?==?utf-8?Q?ien P=C3=A9?=dron From: Bjoern A. Zeeb Subject: git: 16c33bddb6f7 - stable/15 - linuxkpi: Define `PMD_SHIFT` List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/15 X-Git-Reftype: branch X-Git-Commit: 16c33bddb6f7a7238e033fc09a3f2403ba113df5 Auto-Submitted: auto-generated Date: Wed, 22 Apr 2026 21:08:32 +0000 Message-Id: <69e938d0.26dcf.7935f352@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=16c33bddb6f7a7238e033fc09a3f2403ba113df5 commit 16c33bddb6f7a7238e033fc09a3f2403ba113df5 Author: Jean-Sébastien Pédron AuthorDate: 2026-03-04 20:36:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-04-22 20:57:01 +0000 linuxkpi: Define `PMD_SHIFT` For now, only define it for x86 architectures. The DRM generic code started to use it in Linux 6.11. Reviewed by: bz, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55734 (cherry picked from commit be92ad6b12a5046cecf25477e7a3e88f70e5daee) --- sys/compat/linuxkpi/common/include/asm/pgtable.h | 34 ++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/asm/pgtable.h b/sys/compat/linuxkpi/common/include/asm/pgtable.h index 865662d587db..166d6142d51c 100644 --- a/sys/compat/linuxkpi/common/include/asm/pgtable.h +++ b/sys/compat/linuxkpi/common/include/asm/pgtable.h @@ -53,6 +53,40 @@ typedef struct page *pgtable_t; #define _PAGE_PWT (((pteval_t) 1) << _PAGE_BIT_PWT) #define _PAGE_PCD (((pteval_t) 1) << _PAGE_BIT_PCD) #define _PAGE_PAT (((pteval_t) 1) << _PAGE_BIT_PAT) + +/* + * On Linux, the value of `PMD_SHIFT` is hard-coded to 21. This corresponds to + * the FreeBSD `PDRSHIFT` constant. + */ +#define PMD_SHIFT PDRSHIFT + +#elif defined(__aarch64__) + +/* + * On Linux, the value of `PMD_SHIFT` is computed from `CONFIG_PGTABLE_LEVELS`. + * The result corresponds to one of the FreeBSD `L*_SHIFT` constants. Here, we + * take the value 21 computed from `CONFIG_PGTABLE_LEVELS = 4`, the default on + * aarch64, which equals to `L2_SHIFT`. + */ +#define PMD_SHIFT L2_SHIFT + +#elif defined(__powerpc__) + +/* + * On Linux, the value of `PMD_SHIFT` is the addition of `PAGE_SHIFT` and + * `PTE_INDEX_SIZE` (hard-coded to 9). The result corresponds to the FreeBSD + * `L3_PAGE_SIZE_SHIFT` constant. + */ +#define PMD_SHIFT L3_PAGE_SIZE_SHIFT + +#elif defined(__riscv) + +/* + * On Linux, the value of `PMD_SHIFT` is hard-coded to 21. This corresponds to + * the FreeBSD `L2_SHIFT` constant. + */ +#define PMD_SHIFT L2_SHIFT + #endif #endif /* _LINUXKPI_ASM_PGTABLE_H_ */