1 #!/bin/bash 2 # 3 # Extract the number of CPUs expected from the specified Kconfig-file 4 # fragment by checking CONFIG_SMP and CONFIG_NR_CPUS. If the specified 5 # file gives no clue, base the number on the number of idle CPUs on 6 # the system. 7 # 8 # Usage: configNR_CPUS.sh config-frag 9 # 10 # This program is free software; you can redistribute it and/or modify 11 # it under the terms of the GNU General Public License as published by 12 # the Free Software Foundation; either version 2 of the License, or 13 # (at your option) any later version. 14 # 15 # This program is distributed in the hope that it will be useful, 16 # but WITHOUT ANY WARRANTY; without even the implied warranty of 17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 # GNU General Public License for more details. 19 # 20 # You should have received a copy of the GNU General Public License 21 # along with this program; if not, you can access it online at 22 # http://www.gnu.org/licenses/gpl-2.0.html. 23 # 24 # Copyright (C) IBM Corporation, 2013 25 # 26 # Authors: Paul E. McKenney <paulmck (at] linux.vnet.ibm.com> 27 28 cf=$1 29 if test ! -r $cf 30 then 31 echo Unreadable config fragment $cf 1>&2 32 exit -1 33 fi 34 if grep -q '^CONFIG_SMP=n$' $cf 35 then 36 echo 1 37 exit 0 38 fi 39 if grep -q '^CONFIG_NR_CPUS=' $cf 40 then 41 grep '^CONFIG_NR_CPUS=' $cf | 42 sed -e 's/^CONFIG_NR_CPUS=\([0-9]*\).*$/\1/' 43 exit 0 44 fi 45 cpus2use.sh 46