Back to home page

OSCL-LXR

 
 

    


0001 #!/bin/sh
0002 # SPDX-License-Identifier: GPL-2.0
0003 #
0004 # Generate system call table for perf
0005 #
0006 # Copyright IBM Corp. 2017, 2018
0007 # Author(s):  Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
0008 #
0009 
0010 SYSCALL_TBL=$1
0011 
0012 if ! test -r $SYSCALL_TBL; then
0013         echo "Could not read input file" >&2
0014         exit 1
0015 fi
0016 
0017 create_table()
0018 {
0019         local max_nr nr abi sc discard
0020 
0021         echo 'static const char *syscalltbl_s390_64[] = {'
0022         while read nr abi sc discard; do
0023                 printf '\t[%d] = "%s",\n' $nr $sc
0024                 max_nr=$nr
0025         done
0026         echo '};'
0027         echo "#define SYSCALLTBL_S390_64_MAX_ID $max_nr"
0028 }
0029 
0030 grep -E "^[[:digit:]]+[[:space:]]+(common|64)" $SYSCALL_TBL     \
0031         |sort -k1 -n                                    \
0032         |create_table