Linux 5.17 がでたので 5.16.18 から .config
がどう変更されるのか見てみた.もう 5.17.3 が出ているけど 5.16 は EOL らしいので.以下 -
は削除されたもの,+
は追加されたもの.x86_64.New features 等は https://www.phoronix.com/scan.php?page=article&item=linux-517-features 参照.
追加
-
+CONFIG_ACPI_PCC=y
ACPI: PCC: Implement OperationRegion handler for the PCC Type 3 subtype
y のままにしておく.
-
+CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
-
+CONFIG_BLK_ICQ=y
-
+CONFIG_BUILDTIME_MCOUNT_SORT=y
-
+CONFIG_HAVE_BUILDTIME_MCOUNT_SORT=y
ftrace: Have architectures opt-in for mcount build time sorting
-
+CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
-
+CONFIG_DRM_NOMODESET=y
-
+CONFIG_GUEST_PERF_EVENTS=y
-
+CONFIG_HAVE_KVM_DIRTY_RING=y
-
+CONFIG_HAVE_KVM_PFNCACHE=y
-
+CONFIG_NET_VENDOR_ENGLEDER=y
tsnep: Add TSN endpoint Ethernet MAC driver
n にする.
-
+CONFIG_NET_VENDOR_VERTEXCOM=y
net: vertexcom: Add MSE102x SPI support
n にする.
-
+CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
arch/Kconfig: split PAGE_SIZE_LESS_THAN_256KB from PAGE_SIZE_LESS_THAN_64KB
-
+CONFIG_SERIAL_8250_PERICOM=y
serial: 8250_pericom: Re-enable higher baud rates
n にする.
削除
-
-CONFIG_DAX_DRIVER=y
-
-CONFIG_GENERIC_FIND_FIRST_BIT=y
-
-CONFIG_NFT_COUNTER=m
-
-CONFIG_NF_FLOW_TABLE_IPV4=m
-CONFIG_NF_FLOW_TABLE_IPV6=m
モジュール化
-
CONFIG_DRM_GEM_SHMEM_HELPER: y->m
nvidia-legacy-390xx-kernel-dkms
proc: remove PDE_DATA() completelyの影響で bullseye の nvidia-legacy-390xx-kernel-dkms の compile に以下の通り失敗する.
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c: In function ‘nv_procfs_open_gpu_info’:
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:118:29: error: implicit declaration of function ‘PDE’ [-Werror=implicit-function-declaration]
118 | # define NV_PDE_DATA(inode) PDE(inode)->data
| ^~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:136:13: note: in expansion of macro ‘NV_PDE_DATA’
136 | NV_PDE_DATA(inode)); \
| ^~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c:161:1: note: in expansion of macro ‘NV_DEFINE_PROCFS_SINGLE_FILE’
161 | NV_DEFINE_PROCFS_SINGLE_FILE(gpu_info);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:118:39: error: invalid type argument of ‘->’ (have ‘int’)
118 | # define NV_PDE_DATA(inode) PDE(inode)->data
| ^~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:136:13: note: in expansion of macro ‘NV_PDE_DATA’
136 | NV_PDE_DATA(inode)); \
| ^~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c:161:1: note: in expansion of macro ‘NV_DEFINE_PROCFS_SINGLE_FILE’
161 | NV_DEFINE_PROCFS_SINGLE_FILE(gpu_info);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c: In function ‘nv_procfs_open_version’:
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:118:39: error: invalid type argument of ‘->’ (have ‘int’)
118 | # define NV_PDE_DATA(inode) PDE(inode)->data
| ^~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:136:13: note: in expansion of macro ‘NV_PDE_DATA’
136 | NV_PDE_DATA(inode)); \
| ^~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c:175:1: note: in expansion of macro ‘NV_DEFINE_PROCFS_SINGLE_FILE’
175 | NV_DEFINE_PROCFS_SINGLE_FILE(version);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c: In function ‘nv_procfs_open_file’:
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:118:39: error: invalid type argument of ‘->’ (have ‘int’)
118 | # define NV_PDE_DATA(inode) PDE(inode)->data
| ^~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c:195:23: note: in expansion of macro ‘NV_PDE_DATA’
195 | nvfp->proc_data = NV_PDE_DATA(inode);
| ^~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c: In function ‘nv_procfs_open_params’:
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:118:39: error: invalid type argument of ‘->’ (have ‘int’)
118 | # define NV_PDE_DATA(inode) PDE(inode)->data
| ^~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/common/inc/nv-procfs.h:136:13: note: in expansion of macro ‘NV_PDE_DATA’
136 | NV_PDE_DATA(inode)); \
| ^~~~~~~~~~~
/var/lib/dkms/nvidia-legacy-390xx/390.147/build/nvidia/nv-procfs.c:346:1: note: in expansion of macro ‘NV_DEFINE_PROCFS_SINGLE_FILE’
346 | NV_DEFINE_PROCFS_SINGLE_FILE(params);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/nvidia-legacy-390xx-390.147
に以下のパッチをあてればなんとかなる.
--- a/common/inc/nv-procfs.h
+++ b/common/inc/nv-procfs.h
@@ -113,7 +113,7 @@ typedef struct file_operations nv_proc_ops_t;
})
#if defined(NV_PDE_DATA_PRESENT)
-# define NV_PDE_DATA(inode) PDE_DATA(inode)
+# define NV_PDE_DATA(inode) pde_data(inode)
#else
# define NV_PDE_DATA(inode) PDE(inode)->data
#endif
--- a/conftest.sh
+++ b/conftest.sh
@@ -1800,7 +1800,7 @@ compile_test() {
CODE="
#include <linux/proc_fs.h>
void conftest_PDE_DATA(void) {
- PDE_DATA();
+ pde_data();
}"
compile_check_conftest "$CODE" "NV_PDE_DATA_PRESENT" "" "functions"