From 6b191a1c5d8d16923789c8dea09ca330b90bac3d Mon Sep 17 00:00:00 2001 From: Randy Dunlap Date: Thu, 30 Jul 2026 16:34:26 -0700 Subject: [PATCH 1/5] x86/barrier: Use correct parameter names in kernel-doc Use the correct macro parameter names in the kernel-doc comments to avoid kernel-doc warnings: Warning: arch/x86/include/asm/barrier.h:35 function parameter 'idx' not described in 'array_index_mask_nospec' Warning: arch/x86/include/asm/barrier.h:35 function parameter 'sz' not described in 'array_index_mask_nospec' Warning: arch/x86/include/asm/barrier.h:35 Excess function parameter 'index' description in 'array_index_mask_nospec' Warning: arch/x86/include/asm/barrier.h:35 Excess function parameter 'size' description in 'array_index_mask_nospec' Signed-off-by: Randy Dunlap Signed-off-by: Ingo Molnar Link: https://patch.msgid.link/20260730233429.285788-3-rdunlap@infradead.org --- arch/x86/include/asm/barrier.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/include/asm/barrier.h b/arch/x86/include/asm/barrier.h index db70832232d4..b0096b5645a9 100644 --- a/arch/x86/include/asm/barrier.h +++ b/arch/x86/include/asm/barrier.h @@ -27,11 +27,11 @@ /** * array_index_mask_nospec() - generate a mask that is ~0UL when the * bounds check succeeds and 0 otherwise - * @index: array element index - * @size: number of elements in array + * @idx: array element index + * @sz: number of elements in array * * Returns: - * 0 - (index < size) + * 0 - (@idx < @sz) */ #define array_index_mask_nospec(idx,sz) ({ \ typeof((idx)+(sz)) __idx = (idx); \ From 7bb518c386536ea6d214ae9bb58de528089368bc Mon Sep 17 00:00:00 2001 From: Randy Dunlap Date: Thu, 30 Jul 2026 16:34:27 -0700 Subject: [PATCH 2/5] x86/lib: checksum_64.h: Eliminate all kernel-doc warnings - correct missing function parameter names - add missing function return value sections - use the correct function name in comments to avoid these warnings (samples): Warning: arch/x86/include/asm/checksum_64.h:23 No description found for return value of 'csum_fold' Warning: arch/x86/include/asm/checksum_64.h:46 function parameter 'iph' not described in 'ip_fast_csum' Warning: arch/x86/include/asm/checksum_64.h:46 function parameter 'ihl' not described in 'ip_fast_csum' Warning: arch/x86/include/asm/checksum_64.h:46 No description found for return value of 'ip_fast_csum' Warning: arch/x86/include/asm/checksum_64.h:89 expecting prototype for csum_tcpup_nofold(). Prototype was for csum_tcpudp_nofold() instead Warning: arch/x86/include/asm/checksum_64.h:115 expecting prototype for csum_tcpup_magic(). Prototype was for csum_tcpudp_magic() instead Warning: arch/x86/include/asm/checksum_64.h:119 No description found for return value of 'csum_tcpudp_magic' Warning: arch/x86/include/asm/checksum_64.h:129 No description found for return value of 'csum_partial' Warning: ./arch/x86/include/asm/checksum_64.h:175 function parameter '_saddr' not described in 'csum_ipv6_magic' Warning: ./arch/x86/include/asm/checksum_64.h:175 function parameter '_daddr' not described in 'csum_ipv6_magic' Warning: ./arch/x86/include/asm/checksum_64.h:175 Excess function parameter 'saddr' description in 'csum_ipv6_magic' Warning: ./arch/x86/include/asm/checksum_64.h:175 Excess function parameter 'daddr' description in 'csum_ipv6_magic' Signed-off-by: Randy Dunlap Signed-off-by: Ingo Molnar Link: https://patch.msgid.link/20260730233429.285788-4-rdunlap@infradead.org --- arch/x86/include/asm/checksum_64.h | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/arch/x86/include/asm/checksum_64.h b/arch/x86/include/asm/checksum_64.h index 5bdfd2db2b5a..da0182a2a4ce 100644 --- a/arch/x86/include/asm/checksum_64.h +++ b/arch/x86/include/asm/checksum_64.h @@ -14,11 +14,13 @@ /** * csum_fold - Fold and invert a 32bit checksum. - * sum: 32bit unfolded sum + * @sum: 32bit unfolded sum * * Fold a 32bit running checksum to 16bit and invert it. This is usually * the last step before putting a checksum into a packet. * Make sure not to mix with 64bit checksums. + * + * Returns: new checksum value */ static inline __sum16 csum_fold(__wsum sum) { @@ -40,8 +42,10 @@ static inline __sum16 csum_fold(__wsum sum) /** * ip_fast_csum - Compute the IPv4 header checksum efficiently. - * iph: ipv4 header - * ihl: length of header / 4 + * @iph: ipv4 header + * @ihl: length of header / 4 + * + * Returns: header checksum */ static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) { @@ -74,14 +78,14 @@ static inline __sum16 ip_fast_csum(const void *iph, unsigned int ihl) } /** - * csum_tcpup_nofold - Compute an IPv4 pseudo header checksum. + * csum_tcpudp_nofold - Compute an IPv4 pseudo header checksum. * @saddr: source address * @daddr: destination address * @len: length of packet * @proto: ip protocol of packet * @sum: initial sum to be added in (32bit unfolded) * - * Returns the pseudo header checksum the input data. Result is + * Returns: the pseudo header checksum the input data. Result is * 32bit unfolded. */ static inline __wsum @@ -100,14 +104,14 @@ csum_tcpudp_nofold(__be32 saddr, __be32 daddr, __u32 len, /** - * csum_tcpup_magic - Compute an IPv4 pseudo header checksum. + * csum_tcpudp_magic - Compute an IPv4 pseudo header checksum. * @saddr: source address * @daddr: destination address * @len: length of packet * @proto: ip protocol of packet * @sum: initial sum to be added in (32bit unfolded) * - * Returns the 16bit pseudo header checksum the input data already + * Returns: the 16bit pseudo header checksum the input data already * complemented and ready to be filled in. */ static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, @@ -123,7 +127,7 @@ static inline __sum16 csum_tcpudp_magic(__be32 saddr, __be32 daddr, * @len: length of buffer. * @sum: initial sum to be added in (32bit unfolded) * - * Returns the 32bit unfolded internet checksum of the buffer. + * Returns: the 32bit unfolded internet checksum of the buffer. * Before filling it in it needs to be csum_fold()'ed. * buff should be aligned to a 64bit boundary if possible. */ @@ -141,7 +145,7 @@ extern __wsum csum_partial_copy_nocheck(const void *src, void *dst, int len); * @buff: buffer address. * @len: length of buffer. * - * Returns the 16bit folded/inverted checksum of the passed buffer. + * Returns: the 16bit folded/inverted checksum of the passed buffer. * Ready to fill in. */ extern __sum16 ip_compute_csum(const void *buff, int len); @@ -159,15 +163,16 @@ static inline unsigned add32_with_carry(unsigned a, unsigned b) /** * csum_ipv6_magic - Compute checksum of an IPv6 pseudo header. - * @saddr: source address - * @daddr: destination address + * @_saddr: source address + * @_daddr: destination address * @len: length of packet * @proto: protocol of packet * @sum: initial sum (32bit unfolded) to be added in * * Computes an IPv6 pseudo header checksum. This sum is added the checksum * into UDP/TCP packets and contains some link layer information. - * Returns the unfolded 32bit checksum. + * + * Returns: the unfolded 32bit checksum. */ static inline __sum16 csum_ipv6_magic( From bc038b8368ce8cb9b04d122869db771a1b674c8e Mon Sep 17 00:00:00 2001 From: Randy Dunlap Date: Thu, 30 Jul 2026 16:34:28 -0700 Subject: [PATCH 3/5] x86/speculation: Drop Excess function parameter descriptions These function parameters don't exist so drop them to avoid kernel-doc warnings: Warning: ../arch/x86/include/asm/spec-ctrl.h:28 Excess function parameter 'guest_spec_ctrl' description in 'x86_spec_ctrl_set_guest' Warning: ../arch/x86/include/asm/spec-ctrl.h:42 Excess function parameter 'guest_spec_ctrl' description in 'x86_spec_ctrl_restore_host' Signed-off-by: Randy Dunlap Signed-off-by: Ingo Molnar Link: https://patch.msgid.link/20260730233429.285788-5-rdunlap@infradead.org --- arch/x86/include/asm/spec-ctrl.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/arch/x86/include/asm/spec-ctrl.h b/arch/x86/include/asm/spec-ctrl.h index 00b7e0398210..88c1055030f5 100644 --- a/arch/x86/include/asm/spec-ctrl.h +++ b/arch/x86/include/asm/spec-ctrl.h @@ -18,7 +18,6 @@ extern void x86_virt_spec_ctrl(u64 guest_virt_spec_ctrl, bool guest); /** * x86_spec_ctrl_set_guest - Set speculation control registers for the guest - * @guest_spec_ctrl: The guest content of MSR_SPEC_CTRL * @guest_virt_spec_ctrl: The guest controlled bits of MSR_VIRT_SPEC_CTRL * (may get translated to MSR_AMD64_LS_CFG bits) * @@ -32,7 +31,6 @@ void x86_spec_ctrl_set_guest(u64 guest_virt_spec_ctrl) /** * x86_spec_ctrl_restore_host - Restore host speculation control registers - * @guest_spec_ctrl: The guest content of MSR_SPEC_CTRL * @guest_virt_spec_ctrl: The guest controlled bits of MSR_VIRT_SPEC_CTRL * (may get translated to MSR_AMD64_LS_CFG bits) * From e4632f592cc2d7f948fc62b441ddc75ef74372b3 Mon Sep 17 00:00:00 2001 From: Randy Dunlap Date: Thu, 30 Jul 2026 16:34:29 -0700 Subject: [PATCH 4/5] x86/intel/quark: Clean up function kernel-doc Add a short description for imr_self_test() and drop the comments for the non-existent imr_self_test_exit() to avoid kernel-doc warnings: Warning: arch/x86/platform/intel-quark/imr_selftest.c:52 missing initial short description on line: * imr_self_test Warning: ../arch/x86/platform/intel-quark/imr_selftest.c:128 function parameter 'imr_self_test_init' not described in 'device_initcall' Warning: ../arch/x86/platform/intel-quark/imr_selftest.c:128 expecting prototype for imr_self_test_exit(). Prototype was for device_initcall() instead Signed-off-by: Randy Dunlap Signed-off-by: Ingo Molnar Link: https://patch.msgid.link/20260730233429.285788-6-rdunlap@infradead.org --- arch/x86/platform/intel-quark/imr_selftest.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/arch/x86/platform/intel-quark/imr_selftest.c b/arch/x86/platform/intel-quark/imr_selftest.c index 657925b0f428..54c3498c78d7 100644 --- a/arch/x86/platform/intel-quark/imr_selftest.c +++ b/arch/x86/platform/intel-quark/imr_selftest.c @@ -50,7 +50,7 @@ void __init imr_self_test_result(int res, const char *fmt, ...) #undef SELFTEST /** - * imr_self_test + * imr_self_test - perform the IMR self-test * * Verify IMR self_test with some simple tests to verify overlap, * zero sized allocations and 1 KiB sized areas. @@ -121,9 +121,4 @@ static int __init imr_self_test_init(void) return 0; } -/** - * imr_self_test_exit - exit point for IMR code. - * - * return: - */ device_initcall(imr_self_test_init); From 33a581d800670e5d91e99203536d15ef7451ad69 Mon Sep 17 00:00:00 2001 From: Daniel Gibson Date: Wed, 24 Jun 2026 14:43:25 +0200 Subject: [PATCH 5/5] Documentation/arch/x86/amd-debugging: Add example for reset register The amd debugging documentation didn't state how to identify kernel log lines with information from the reset register about the cause of a previous random reboot. Add an example. Suggested-by: Mario Limonciello (AMD) Signed-off-by: Daniel Gibson Signed-off-by: Borislav Petkov (AMD) Reviewed-by: Mario Limonciello (AMD) Link: https://patch.msgid.link/20260624124326.746525-2-daniel@gibson.sh --- Documentation/arch/x86/amd-debugging.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Documentation/arch/x86/amd-debugging.rst b/Documentation/arch/x86/amd-debugging.rst index d92bf59d62c7..3176a1240fee 100644 --- a/Documentation/arch/x86/amd-debugging.rst +++ b/Documentation/arch/x86/amd-debugging.rst @@ -366,3 +366,8 @@ There are 6 classes of reasons for the reboot: This information is read by the kernel at bootup and printed into the syslog. When a random reboot occurs this message can be helpful to determine the next component to debug. + +For example, if bit 19 was set, you will get a message like this in the log on +next bootup:: + + x86/amd: Previous system reset reason [0x00080000]: software wrote 0x6 to reset control register 0xCF9