Commit 54516afb authored by wangyongshou's avatar wangyongshou

add cpu interrupt

parent 1d780628
...@@ -6,7 +6,6 @@ vpp_n3_ip=192.168.2.182 ...@@ -6,7 +6,6 @@ vpp_n3_ip=192.168.2.182
vpp_n6_ip=192.168.2.22 vpp_n6_ip=192.168.2.22
vpp_n3_gw=192.168.2.199 vpp_n3_gw=192.168.2.199
vpp_n6_gw=192.168.2.1 vpp_n6_gw=192.168.2.1
vpp_cpu=3f
#n4 config #n4 config
n4_gnb=192.168.10.10 n4_gnb=192.168.10.10
......
...@@ -16,6 +16,7 @@ CPUNUMBER="" ...@@ -16,6 +16,7 @@ CPUNUMBER=""
UPF_CONFIG=$base/etc/upf.conf UPF_CONFIG=$base/etc/upf.conf
VPP_CONFIG=$base/etc/vppe.conf VPP_CONFIG=$base/etc/vppe.conf
VPP_N4=$base/etc/n4_config.yaml VPP_N4=$base/etc/n4_config.yaml
CPU_MIN_NUMS=8
#vpp config #vpp config
UPF_N3_NAME="" UPF_N3_NAME=""
...@@ -44,6 +45,8 @@ UPF_N6_DRIVER="" ...@@ -44,6 +45,8 @@ UPF_N6_DRIVER=""
UPF_INTER_IP="" UPF_INTER_IP=""
UPF_INTER_PCI="" UPF_INTER_PCI=""
CPU_MASK=""
function start_vppe() function start_vppe()
{ {
$base/bin/vpp -c $base/etc/vppe.conf >/dev/null 2>&1 ; $base/bin/vpp -c $base/etc/vppe.conf >/dev/null 2>&1 ;
...@@ -114,6 +117,16 @@ function close_n4() ...@@ -114,6 +117,16 @@ function close_n4()
exit 0 exit 0
} }
function check_system()
{
CPUCORES=$(echo `cat /proc/cpuinfo| grep "processor"| wc -l`)
if [ $CPUCORES -lt $CPU_MIN_NUMS ] ; then
echo "ERROR, cpunums is $CPUCORES, cpunums at least $CPU_MIN_NUMS"
echo "please check system cpu cores"
exit 0
fi
}
function install_driver() function install_driver()
{ {
sudo modprobe vfio-pci; sudo modprobe vfio-pci;
...@@ -124,6 +137,7 @@ function install_driver() ...@@ -124,6 +137,7 @@ function install_driver()
echo Y | sudo tee /sys/module/vfio/parameters/enable_unsafe_noiommu_mode echo Y | sudo tee /sys/module/vfio/parameters/enable_unsafe_noiommu_mode
#$base/tools/interreput -i $CPUNUMBER #$base/tools/interreput -i $CPUNUMBER
set_cpu_interrupt
return 0; return 0;
} }
...@@ -188,6 +202,36 @@ function get_inter_pci() ...@@ -188,6 +202,36 @@ function get_inter_pci()
INTER_NAME=$1 INTER_NAME=$1
UPF_INTER_PCI=$(echo `$base/tools/ethtool -i ${INTER_NAME} | grep "bus-info" | awk '{print $2}'`) UPF_INTER_PCI=$(echo `$base/tools/ethtool -i ${INTER_NAME} | grep "bus-info" | awk '{print $2}'`)
} }
function set_cpu_interrupt()
{
CPUCORES=$(echo `cat /proc/cpuinfo| grep "processor"| wc -l`)
CPUMASK=$((${CPUCORES} - 3))
((INTE_NUM=$CPUMASK/4));
((REMAIN_NUM=$CPUMASK%4));
if [ $REMAIN_NUM -ne 0 ]; then
temp="$REMAIN_NUM"
CPU_MASK=$temp
fi
UPF_MAINCORE=`expr $CPUCORES - 3`
while [ $INTE_NUM != 0 ]
do
INTE_NUM=$(($INTE_NUM - 1))
tmp=${CPU_MASK}"F"
CPU_MASK=${tmp}
done
echo "cpunum:$CPUCORES, cpumask:$CPU_MASK"
$base/plugin/interreput -i $CPU_MASK
}
function generate_instance() function generate_instance()
{ {
cp -f $base/etc/startup_debug.template $base/etc/vppe.conf cp -f $base/etc/startup_debug.template $base/etc/vppe.conf
...@@ -239,7 +283,6 @@ function get_driver() ...@@ -239,7 +283,6 @@ function get_driver()
else else
echo "$UPF_N6_NAME pci $UPF_N6_DRIVER" echo "$UPF_N6_NAME pci $UPF_N6_DRIVER"
fi fi
} }
function get_pci() function get_pci()
...@@ -427,37 +470,8 @@ function help() ...@@ -427,37 +470,8 @@ function help()
function main() function main()
{ {
num=15 check_system
((tt=16#$num));
echo $tt
a=13
t=$(echo "obase=16;$a"|bc)
echo $t
((b=$a/4));
((c=$a%4));
echo $b
echo $c
gg=""
while [ $b != 0 ]
do
((b=b-1))
$gg=$gg"F"
echo "111"
echo $b
echo $gg
sleep 1
echo "2222"
done
echo $gg
return
if [ $# -eq 0 ]; if [ $# -eq 0 ];
then then
help help
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment