From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 4CBA4158083 for ; Thu, 19 Sep 2024 23:31:18 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 44A6BE299F; Thu, 19 Sep 2024 23:31:17 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (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 pigeon.gentoo.org (Postfix) with ESMTPS id 10060E299F for ; Thu, 19 Sep 2024 23:31:17 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (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 smtp.gentoo.org (Postfix) with ESMTPS id 08EC6343192 for ; Thu, 19 Sep 2024 23:31:16 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id EC49127DE for ; Thu, 19 Sep 2024 23:31:13 +0000 (UTC) From: "Ionen Wolkens" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ionen Wolkens" Message-ID: <1726788593.645c5c5342bdadc6f8206732dc7335498d57eccb.ionen@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: x11-drivers/nvidia-drivers/ X-VCS-Repository: repo/gentoo X-VCS-Files: x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild x11-drivers/nvidia-drivers/nvidia-drivers-550.120.ebuild x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild X-VCS-Directories: x11-drivers/nvidia-drivers/ X-VCS-Committer: ionen X-VCS-Committer-Name: Ionen Wolkens X-VCS-Revision: 645c5c5342bdadc6f8206732dc7335498d57eccb X-VCS-Branch: master Date: Thu, 19 Sep 2024 23:31:13 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: c0c534a7-ba4e-4b18-bb78-505a6ee27258 X-Archives-Hash: a6d6f71acc45a4e0826cdfa34f2c1c65 commit: 645c5c5342bdadc6f8206732dc7335498d57eccb Author: Ionen Wolkens gentoo org> AuthorDate: Thu Sep 19 22:52:32 2024 +0000 Commit: Ionen Wolkens gentoo org> CommitDate: Thu Sep 19 23:29:53 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=645c5c53 x11-drivers/nvidia-drivers: config check for DRM_TTM_HELPER w/ 6.11+ Essentially the same issue as DRM_KMS_HELPER where nvidia will detect that it's usable but the kernel will not install the drm_ttm_helper.ko module resulting in missing symbol dependencies. Also has the same problem where it cannot be directly selected so we need to try to explain this to users. At same time also update the KMS_HELPER message a bit, esp. given I915 is not usable to enable TTM_HELPER making it a poor suggestion. Signed-off-by: Ionen Wolkens gentoo.org> .../nvidia-drivers-550.107.02-r1.ebuild | 22 +++++++++++++++++----- .../nvidia-drivers/nvidia-drivers-550.120.ebuild | 22 +++++++++++++++++----- .../nvidia-drivers-550.40.71-r1.ebuild | 22 +++++++++++++++++----- .../nvidia-drivers-560.35.03-r1.ebuild | 22 +++++++++++++++++----- 4 files changed, 68 insertions(+), 20 deletions(-) diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild index c0427557f1a5..7b1df6278314 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-550.107.02-r1.ebuild @@ -96,6 +96,10 @@ PATCHES=( pkg_setup() { use modules && [[ ${MERGE_TYPE} != binary ]] || return + # do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK + get_version + require_configured_kernel + local CONFIG_CHECK=" PROC_FS ~DRM_KMS_HELPER @@ -106,15 +110,23 @@ pkg_setup() { $(usev powerd '~CPU_FREQ') " - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection - of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. - Cannot be directly selected in the kernel's menuconfig, and may need - selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or - DRM_I915=y, DRM_NOUVEAU=m also acceptable if a module and not built-in." + kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION && + CONFIG_CHECK+=" DRM_TTM_HELPER" use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 + + local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need + selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or + DRM_QXL=m, DRM_NOUVEAU=m also acceptable if a module and *not* built-in." + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection + of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. + ${drm_helper_msg}" + local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using + kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. + ${drm_helper_msg} + Many DRM devices like DRM_I915 cannot currently be used to enable this." local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. Cannot be directly selected in the kernel's menuconfig, and may need selection of another option that requires it such as CONFIG_KVM." diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-550.120.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-550.120.ebuild index 0a3e3b785a46..3f80d1a64cc2 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-550.120.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-550.120.ebuild @@ -95,6 +95,10 @@ PATCHES=( pkg_setup() { use modules && [[ ${MERGE_TYPE} != binary ]] || return + # do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK + get_version + require_configured_kernel + local CONFIG_CHECK=" PROC_FS ~DRM_KMS_HELPER @@ -105,15 +109,23 @@ pkg_setup() { $(usev powerd '~CPU_FREQ') " - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection - of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. - Cannot be directly selected in the kernel's menuconfig, and may need - selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or - DRM_I915=y, DRM_NOUVEAU=m also acceptable if a module and not built-in." + kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION && + CONFIG_CHECK+=" DRM_TTM_HELPER" use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 + + local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need + selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or + DRM_QXL=m, DRM_NOUVEAU=m also acceptable if a module and *not* built-in." + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection + of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. + ${drm_helper_msg}" + local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using + kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. + ${drm_helper_msg} + Many DRM devices like DRM_I915 cannot currently be used to enable this." local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. Cannot be directly selected in the kernel's menuconfig, and may need selection of another option that requires it such as CONFIG_KVM." diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild index abee29c518c4..ee13950d9fd8 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-550.40.71-r1.ebuild @@ -97,6 +97,10 @@ PATCHES=( pkg_setup() { use modules && [[ ${MERGE_TYPE} != binary ]] || return + # do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK + get_version + require_configured_kernel + local CONFIG_CHECK=" PROC_FS ~DRM_KMS_HELPER @@ -107,15 +111,23 @@ pkg_setup() { $(usev powerd '~CPU_FREQ') " - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection - of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. - Cannot be directly selected in the kernel's menuconfig, and may need - selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or - DRM_I915=y, DRM_NOUVEAU=m also acceptable if a module and not built-in." + kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION && + CONFIG_CHECK+=" DRM_TTM_HELPER" use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 + + local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need + selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or + DRM_QXL=m, DRM_NOUVEAU=m also acceptable if a module and *not* built-in." + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection + of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. + ${drm_helper_msg}" + local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using + kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. + ${drm_helper_msg} + Many DRM devices like DRM_I915 cannot currently be used to enable this." local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. Cannot be directly selected in the kernel's menuconfig, and may need selection of another option that requires it such as CONFIG_KVM." diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild index ac755f870b2e..2027543207fe 100644 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-560.35.03-r1.ebuild @@ -99,6 +99,10 @@ PATCHES=( pkg_setup() { use modules && [[ ${MERGE_TYPE} != binary ]] || return + # do early before linux-mod-r1 so can use chkconfig to setup CONFIG_CHECK + get_version + require_configured_kernel + local CONFIG_CHECK=" PROC_FS ~DRM_KMS_HELPER @@ -109,15 +113,23 @@ pkg_setup() { $(usev powerd '~CPU_FREQ') " - local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection - of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. - Cannot be directly selected in the kernel's menuconfig, and may need - selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or - DRM_I915=y, DRM_NOUVEAU=m also acceptable if a module and not built-in." + kernel_is -ge 6 11 && linux_chkconfig_present DRM_FBDEV_EMULATION && + CONFIG_CHECK+=" DRM_TTM_HELPER" use amd64 && kernel_is -ge 5 8 && CONFIG_CHECK+=" X86_PAT" #817764 use kernel-open && CONFIG_CHECK+=" MMU_NOTIFIER" #843827 + + local drm_helper_msg="Cannot be directly selected in the kernel's config menus, and may need + selection of a DRM device even if unused, e.g. CONFIG_DRM_AMDGPU=m or + DRM_QXL=m, DRM_NOUVEAU=m also acceptable if a module and *not* built-in." + local ERROR_DRM_KMS_HELPER="CONFIG_DRM_KMS_HELPER: is not set but needed for Xorg auto-detection + of drivers (no custom config), and for wayland / nvidia-drm.modeset=1. + ${drm_helper_msg}" + local ERROR_DRM_TTM_HELPER="CONFIG_DRM_TTM_HELPER: is not set but is needed to compile when using + kernel version 6.11.x or newer while DRM_FBDEV_EMULATION is set. + ${drm_helper_msg} + Many DRM devices like DRM_I915 cannot currently be used to enable this." local ERROR_MMU_NOTIFIER="CONFIG_MMU_NOTIFIER: is not set but needed to build with USE=kernel-open. Cannot be directly selected in the kernel's menuconfig, and may need selection of another option that requires it such as CONFIG_KVM."