Change the unused var in 'arch/x86/entry/syscalls/syscalltbl.sh' to '_' when reading from '$sorted_table'. This change allows the script to pass tests of ShellCheck before and after version 0.7.2 at the same time. When building in arch x86, syscalltbl.sh got a ShellCheck warning, which makes compilation error: In arch/x86/entry/syscalls/syscalltbl.sh line 27: while read nr _abi name entry _compat; do ^-^ SC2034: abi appears unused. Verify use (or export if used externally). ^----^ SC2034: compat appears unused. Verify use (or export if used externally). The script reads unused param abi and compat. It uses format '_xxx' to indicate dummy vars, which won't work properly when ShellCheck <= 0.7.2. According to SC2034, the more general way of writing is to use directly '_' to indicate discarding vars. 'entry' is also replaced by '_' because it just happens to be defined in emit function, otherwise it will lead to some misunderstandings. Link: https://www.shellcheck.net/wiki/SC2034 Signed-off-by: Haoze Xie <royenheart@gmail.com> Signed-off-by: Yuan Tan <tanyuan@tinylab.org> Link: https://lore.kernel.org/r/2143cab4cd8468c88860f4e5e382d0e6b4d89ac9.1720372178.git.royenheart@gmail.com Signed-off-by: Namhyung Kim <namhyung@kernel.org>
42 lines
732 B
Bash
Executable file
42 lines
732 B
Bash
Executable file
#!/bin/sh
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
in="$1"
|
|
arch="$2"
|
|
|
|
syscall_macro() {
|
|
nr="$1"
|
|
name="$2"
|
|
|
|
echo " [$nr] = \"$name\","
|
|
}
|
|
|
|
emit() {
|
|
nr="$1"
|
|
entry="$2"
|
|
|
|
syscall_macro "$nr" "$entry"
|
|
}
|
|
|
|
echo "static const char *const syscalltbl_${arch}[] = {"
|
|
|
|
sorted_table=$(mktemp /tmp/syscalltbl.XXXXXX)
|
|
grep '^[0-9]' "$in" | sort -n > $sorted_table
|
|
|
|
max_nr=0
|
|
# the params are: nr abi name entry compat
|
|
# use _ for intentionally unused variables according to SC2034
|
|
while read nr _ name _ _; do
|
|
if [ $nr -ge 512 ] ; then # discard compat sycalls
|
|
break
|
|
fi
|
|
|
|
emit "$nr" "$name"
|
|
max_nr=$nr
|
|
done < $sorted_table
|
|
|
|
rm -f $sorted_table
|
|
|
|
echo "};"
|
|
|
|
echo "#define SYSCALLTBL_${arch}_MAX_ID ${max_nr}"
|