linux-kernelorg-stable/scripts
Kees Cook 5f8e4007c1 kernel-doc: fix struct_group_tagged() parsing
kernel-doc emits a warning on struct_group_tagged() if you describe your
struct group member:

include/net/libeth/rx.h:69: warning: Excess struct member 'fp' description in 'libeth_fq'

The code:

/**
 * struct libeth_fq - structure representing a buffer queue
 * @fp: hotpath part of the structure
 * @pp: &page_pool for buffer management
[...]
 */
struct libeth_fq {
	struct_group_tagged(libeth_fq_fp, fp,
		struct page_pool	*pp;
[...]
	);

When a struct_group_tagged() is encountered, we need to build a
`struct TAG NAME;` from it, so that it will be treated as a valid
embedded struct.
Decouple the regex and do the replacement there. As far as I can see,
this doesn't produce any new warnings on the current mainline tree.

Reported-by: Jakub Kicinski <kuba@kernel.org>
Closes: https://lore.kernel.org/netdev/20240405212513.0d189968@kernel.org
Fixes: 50d7bd38c3 ("stddef: Introduce struct_group() helper macro")
Signed-off-by: Kees Cook <keescook@chromium.org>
Co-developed-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Link: https://lore.kernel.org/r/20240411093208.2483580-1-aleksander.lobakin@intel.com
2024-04-24 13:16:55 -06:00
..
atomic
basic
clang-tools
coccinelle coccinelle: simplify device_attr_show semantic patch 2024-03-21 10:17:10 -07:00
dtc
dummy-tools
gcc-plugins
gdb S390: 2024-03-15 13:03:13 -07:00
genksyms
kconfig kconfig: tests: test dependency after shuffling choices 2024-03-21 02:40:39 +09:00
ksymoops
mod Kbuild updates for v6.9 2024-03-21 14:41:00 -07:00
package kbuild: rpm-pkg: add dtb files in kernel rpm 2024-03-19 02:30:51 +09:00
selinux
tracing
.gitignore
Kbuild.include
Kconfig.include
Lindent
Makefile LoongArch changes for v6.9 2024-03-22 10:22:45 -07:00
Makefile.asm-generic
Makefile.btf
Makefile.build Kbuild updates for v6.9 2024-03-21 14:41:00 -07:00
Makefile.clang
Makefile.clean
Makefile.compiler
Makefile.debug
Makefile.defconf
Makefile.dtbinst
Makefile.extrawarn kbuild: remove GCC's default -Wpacked-bitfield-compat flag 2024-03-11 17:31:41 +09:00
Makefile.gcc-plugins
Makefile.headersinst
Makefile.host
Makefile.kasan
Makefile.kcov
Makefile.kcsan
Makefile.kmsan
Makefile.lib Kbuild updates for v6.9 2024-03-21 14:41:00 -07:00
Makefile.modfinal
Makefile.modinst
Makefile.modpost
Makefile.package kbuild: unexport abs_srctree and abs_objtree 2024-03-10 17:27:17 +09:00
Makefile.randstruct
Makefile.ubsan
Makefile.userprogs
Makefile.vdsoinst
Makefile.vmlinux
Makefile.vmlinux_o
as-version.sh
asn1_compiler.c
bloat-o-meter
bootgraph.pl
bpf_doc.py
cc-can-link.sh
cc-version.sh
check-git
check-sysctl-docs
check-uapi.sh
check-variable-fonts.sh docs: Detect variable fonts and suggest denylisting them 2024-04-10 14:10:13 -06:00
check_extable.sh
checkdeclares.pl
checkincludes.pl
checkkconfigsymbols.py
checkpatch.pl
checkstack.pl
checksyscalls.sh
checkversion.pl
cleanfile
cleanpatch
coccicheck
config
const_structs.checkpatch
decode_stacktrace.sh
decodecode
depmod.sh
dev-needs.sh
diffconfig
documentation-file-ref-check
export_report.pl
extract-ikconfig
extract-module-sig.pl
extract-sys-certs.pl
extract-vmlinux
extract_xc3028.pl
faddr2line
file-size.sh
find-unused-docs.sh
gcc-x86_32-has-stack-protector.sh
gcc-x86_64-has-stack-protector.sh
gen-randstruct-seed.sh
generate_initcall_order.pl
generate_rust_analyzer.py
generate_rust_target.rs arm64 updates for 6.9: 2024-03-14 15:35:42 -07:00
get_abi.pl
get_dvb_firmware
get_feat.pl
get_maintainer.pl
gfp-translate
git.orderFile
head-object-list.txt
headerdep.pl
headers_install.sh
insert-sys-cert.c
install.sh
jobserver-exec
kallsyms.c
kernel-doc kernel-doc: fix struct_group_tagged() parsing 2024-04-24 13:16:55 -06:00
ld-version.sh
leaking_addresses.pl
link-vmlinux.sh
makelst
markup_oops.pl
min-tool-version.sh - Kuan-Wei Chiu has developed the well-named series "lib min_heap: Min 2024-03-14 18:03:09 -07:00
misc-check
mkcompile_h
mksysmap
mkuboot.sh
module.lds.S
modules-check.sh
nsdeps
objdiff
objdump-func
orc_hash.sh
pahole-version.sh
parse-maintainers.pl
patch-kernel
profile2linkerlist.pl
prune-kernel
recordmcount.c
recordmcount.h
recordmcount.pl
relocs_check.sh
remove-stale-files
rust_is_available.sh
rust_is_available_bindgen_libclang.h
rust_is_available_test.py
rustdoc_test_builder.rs
rustdoc_test_gen.rs
setlocalversion
show_delta
sign-file.c
sorttable.c
sorttable.h
spdxcheck-test.sh
spdxcheck.py
spdxexclude
spelling.txt
sphinx-pre-install scripts: sphinx-pre-install: Add pyyaml hint to other distros 2024-04-02 10:07:51 -06:00
split-man.pl
stackdelta
stackusage
subarch.include
syscallhdr.sh
syscallnr.sh
syscalltbl.sh
tags.sh
test_fortify.sh
tools-support-relr.sh
unifdef.c
ver_linux
xen-hypercalls.sh
xz_wrap.sh