Files
kernel/scripts/find-unused-docs.sh
T
Greg Kroah-Hartman 5d392794b2 Linux 6.12.60
Link: https://lore.kernel.org/r/20251127144032.705323598@linuxfoundation.org
Tested-by: Pavel Machek (CIP) <pavel@denx.de>
Link: https://lore.kernel.org/r/20251127150346.125775439@linuxfoundation.org
Tested-by: Brett A C Sheffield <bacs@librecast.net>
Tested-by: Peter Schneider <pschneider1968@googlemail.com>
Tested-by: Linux Kernel Functional Testing <lkft@linaro.org>
Tested-by: Dileep Malepu <dileep.debian@gmail.com>
Tested-by: Ron Economos <re@w6rz.net>
Tested-by: Salvatore Bonaccorso <carnil@debian.org>
Tested-by: Mark Brown <broonie@kernel.org>
Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-12-01 11:43:41 +01:00

63 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
# (c) 2017, Jonathan Corbet <corbet@lwn.net>
# sayli karnik <karniksayli1995@gmail.com>
#
# This script detects files with kernel-doc comments for exported functions
# that are not included in documentation.
#
# usage: Run 'scripts/find-unused-docs.sh directory' from top level of kernel
# tree.
#
# example: $scripts/find-unused-docs.sh drivers/scsi
#
# Licensed under the terms of the GNU GPL License
if ! [ -d "Documentation" ]; then
echo "Run from top level of kernel tree"
exit 1
fi
if [ "$#" -ne 1 ]; then
echo "Usage: scripts/find-unused-docs.sh directory"
exit 1
fi
if ! [ -d "$1" ]; then
echo "Directory $1 doesn't exist"
exit 1
fi
cd "$( dirname "${BASH_SOURCE[0]}" )"
cd ..
cd Documentation/
echo "The following files contain kerneldoc comments for exported functions \
that are not used in the formatted documentation"
# FILES INCLUDED
files_included=($(grep -rHR ".. kernel-doc" --include \*.rst | cut -d " " -f 3))
declare -A FILES_INCLUDED
for each in "${files_included[@]}"; do
FILES_INCLUDED[$each]="$each"
done
cd ..
# FILES NOT INCLUDED
for file in `find $1 -name '*.c'`; do
if [[ ${FILES_INCLUDED[$file]+_} ]]; then
continue;
fi
str=$(scripts/kernel-doc -export "$file" 2>/dev/null)
if [[ -n "$str" ]]; then
echo "$file"
fi
done