]> git.ipfire.org Git - thirdparty/util-linux.git/blob - tests/ts/lscpu/mk-input.sh
tests: fix file name is too long (max 99) - gtar
[thirdparty/util-linux.git] / tests / ts / lscpu / mk-input.sh
1 #!/bin/bash
2 #
3 # Copyright (C) 2008 Karel Zak <kzak@redhat.com>
4 #
5 # This script makes a copy of relevant files from /sys and /proc.
6 # The files are usefull for lscpu(1) regression tests.
7 #
8 # For exmaple:
9 #
10 # # mk-lscpu-input ts-lscpu-i386-coolhw
11 # # lscpu --sysroot dumps/ts-lscpu-i386-coolhw
12 #
13
14 progname=$(basename $0)
15
16 if [ -z "$1" ]; then
17 echo -e "\nusage: $progname <testname>\n"
18 exit 1
19 fi
20
21 TS_NAME="$1"
22 TS_INPUT="dumps/$TS_NAME"
23 CP="cp -r --parents"
24
25 mkdir -p $TS_INPUT/{proc,sys}
26
27 $CP /proc/cpuinfo $TS_INPUT
28
29 mkdir -p $TS_INPUT/proc/bus/pci
30 $CP /proc/bus/pci/devices $TS_INPUT
31
32 if [ -d "/proc/xen" ]; then
33 mkdir -p $TS_INPUT/proc/xen
34 if [ -f "/proc/xen/capabilities" ]; then
35 $CP /proc/xen/capabilities $TS_INPUT
36 fi
37 fi
38
39 for c in $(ls -d /sys/devices/system/cpu/cpu[0-9]*); do
40 mkdir -p $TS_INPUT/$c
41 done
42
43 $CP /sys/devices/system/cpu/cpu0/topology/{thread_siblings,core_siblings} $TS_INPUT
44 $CP /sys/devices/system/cpu/cpu0/cache/*/{type,level,size,shared_cpu_map} $TS_INPUT
45
46 $CP /sys/devices/system/node/*/cpumap $TS_INPUT
47
48