395 Star 1.4K Fork 1.3K

GVPopenEuler / kernel

 / 详情

netdevsim反复加载卸载,出现系统复位

已完成
缺陷
创建于  
2020-06-09 10:46

1、开2个窗口,第一个窗口执行"sh net_route_table_exhaust.sh inject eth2 2" (net_route_table_exhaust.sh具体内容在下面,功能是不停的执行ip rule add的命令)
2、第二个窗口不停执行卸载加载netdevsim.ko的操作
modprobe netdevsim
rmmod netdevsim
3、反复卸载加载大约10来次系统就会复位了(次数不固定,自测经验值)

附:net_route_table_exhaust.sh

mode=$1
interface=$2
table_max_num=$3



ip_prefix="1"
ip_postfix="5"
ip_mask=24



add_rule_into_table()
{
	local table_num=$1
	local i=
	local j=


	for((i=0; i<254;i++))
	do

		for((j=0; j<254;j++))
		do
			ip rule add from ${ip_prefix}.$i.$j.${ip_postfix}/${ip_mask} dev ${interface} table ${table_num} || {
				echo "add error:ip rule add from ${ip_prefix}.$i.$j.${ip_postfix}/${ip_mask} dev ${interface} table ${table_num}"
				return 1
			}
		done
	done
}
add_route_tables()
{
	local i=

	for((i=1; i<=${table_max_num};i++))
	do
		add_rule_into_table ${i} || {
			return 1
		}
	done

}
delete_rule_from_table()
{
	local table_num=$1
	local i=
	local j=


	for((i=0; i<254;i++))
	do
		for((j=0; j<254;j++))
		do
			ip rule del from ${ip_prefix}.$i.$j.${ip_postfix}/${ip_mask} dev ${interface} table ${table_num} || {
				echo "add error:ip route add ${ip_prefix}.$i.$j.${ip_postfix}/${ip_mask} dev ${interface} table ${table_num}"
				return 1
			}
		done
	done
}

del_route_tables()
{
	local i=

	for((i=1; i<=${table_max_num};i++))
	do
		delete_rule_from_table ${i} || {
			return 1
		}
	done
}


if [ "$mode" = "inject" ];then
	add_route_tables

elif [ "$mode" = "clean" ];then
	del_route_tables

else
	echo "Wrong mode"
	exit 1
fi

评论 (6)

gebidelidaye 创建了缺陷
gebidelidaye 关联仓库设置为openEuler/kernel
展开全部操作日志

Hey @gebidelidaye, Welcome to openEuler Community.
All of the projects in openEuler Community are maintained by @openeuler-ci-bot.
That means the developers can comment below every pull request or issue to trigger Bot Commands.
Please follow instructions at https://gitee.com/openeuler/community/blob/master/en/sig-infrastructure/command.md to find the details.

01f20a2

kernel-4.19 分支已合入。

Xie XiuQi 任务状态待办的 修改为修复中
Xie XiuQi 负责人设置为YangYingliang

@YangYingliang

openEuler-1.0-LTS 也回合一下吧。

openEuler 20.09 fix.

Xie XiuQi 任务状态修复中 修改为待办的
Xie XiuQi 添加了
 
kind/bug
标签
Xie XiuQi 任务状态待办的 修改为修复中

@YangYingliang
当前的几个分支都帮忙确认下,是否已合入

YangYingliang 任务状态修复中 修改为已完成

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(5)
5329419 openeuler ci bot 1632792936
C
1
https://gitee.com/openeuler/kernel.git
git@gitee.com:openeuler/kernel.git
openeuler
kernel
kernel

搜索帮助