[PATCH 3/3] rust: warn if `srctree/` links do not exist

Miguel Ojeda ojeda at kernel.org
Wed Jul 30 13:07:16 UTC 2025


`srctree/` links may point to nonexistent files, e.g. due to renames
that missed to update the files or simply because of typos.

Since they can be easily checked for validity, do so and print a warning
in the file does not exist.

This found the following cases already in-tree:

    warning: srctree/ link to include/linux/blk_mq.h does not exist
    warning: srctree/ link to include/linux/drm/drm_gem.h does not exist
    warning: srctree/ link to include/linux/drm/drm_drv.h does not exist
    warning: srctree/ link to include/linux/drm/drm_ioctl.h does not exist
    warning: srctree/ link to include/linux/drm/drm_file.h does not exist
    warning: srctree/ link to include/linux/drm/drm_device.h does not exist

Inspired-by: "Onur Özkan" <work at onurozkan.dev>
Link: https://lore.kernel.org/rust-for-linux/CANiq72=xCYA7z7_rxpzzKkkhJs6m7L_xEaLMuArVn3ZAcyeHdA@mail.gmail.com/
Signed-off-by: Miguel Ojeda <ojeda at kernel.org>
---
 rust/Makefile | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/rust/Makefile b/rust/Makefile
index 4e675d210dd8..a27503028216 100644
--- a/rust/Makefile
+++ b/rust/Makefile
@@ -93,6 +93,12 @@ quiet_cmd_rustdoc = RUSTDOC $(if $(rustdoc_host),H, ) $<
 # and then retouch the generated files.
 rustdoc: rustdoc-core rustdoc-macros rustdoc-compiler_builtins \
     rustdoc-kernel rustdoc-pin_init
+	$(Q)grep -Ehro '<a href="srctree/([^"]+)"' $(rustdoc_output) | \
+		cut -d'"' -f2 | cut -d/ -f2- | while read f; do \
+			if [ ! -e "$(srctree)/$$f" ]; then \
+				echo "warning: srctree/ link to $$f does not exist"; \
+			fi \
+		done
 	$(Q)cp $(srctree)/Documentation/images/logo.svg $(rustdoc_output)/static.files/
 	$(Q)cp $(srctree)/Documentation/images/COPYING-logo $(rustdoc_output)/static.files/
 	$(Q)find $(rustdoc_output) -name '*.html' -type f -print0 | xargs -0 sed -Ei \
-- 
2.50.1



More information about the dri-devel mailing list