https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=241191
Bug ID: 241191
Summary: route flush panic with RADIX_MPATH
Product: Base System
Version: 12.0-STABLE
Hardware: Any
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: kern
Assignee: [email protected]
Reporter: [email protected]
Hello, Colleagues.
We are use RADIX_MPATH .
Have a lot of IPv4 route multipath.
Our FreeBSD 12.0-STABLE is panic when execute `route flush`. (See details and
screenshots)
The problem is caused by incorrect processing of return rt_unlinkrte() from
sys/net/route.c .
With RADIX_MPATH return may be _NULL_ with *perror = 0.
Than rtrequest1_fib() from sys/net/route.c is panic;
Also route_output() from sys/net/rtsock.c .
I prepared the patch.
Please check it out. If he does not contradict anything, then accept.
Perhaps patch creates some other problems. However, patch solves the original
problem successfully.
Thanks.
Add details.
root@noc-srr01:~ # sysctl kern | grep kern.os
kern.ostype: FreeBSD
kern.osrelease: 12.0-STABLE
kern.osrevision: 199506
kern.osreldate: 1200503
Example 1: WITHOUT kernel options RADIX_MPATH
# A lot of routes
root@noc-srr01:/boot/kernel # netstat -rnW | wc -l
16132
#
root@noc-srr01:/boot/kernel # netstat -rnW | more
Routing tables
Internet:
Destination Gateway Flags Use Mtu Netif Expire
default 10.169.211.1 UGS 3945 1500 xn0
1.1.2.0/30 10.169.213.234 UG1 0 1500 xn1
1.2.2.0/30 10.169.213.234 UG1 0 1500 xn1
1.2.3.0/30 10.169.213.234 UG1 0 1500 xn1
...
# Work flush correctly
root@noc-srr01:/boot/kernel # netstat -rn | wc -l ; route -qn flush ; netstat
-rn | wc -l
16132
23
Example 2: WITH kernel options RADIX_MPATH
# A lot of routes (16000 * 4 ifs and routers)
root@noc-srr01:~ # netstat -rn | wc -l
63595
#
root@noc-srr01:~ # netstat -rn | more
Routing tables
Internet:
Destination Gateway Flags Netif Expire
default 10.169.211.1 UGS xn0
1.1.2.0/30 10.169.213.234 UG1 xn1
1.1.2.0/30 10.169.213.242 UG1 xn2
1.1.2.0/30 10.169.213.233 UG1 xn1
1.1.2.0/30 10.169.213.241 UG1 xn2
1.2.2.0/30 10.169.213.234 UG1 xn1
1.2.2.0/30 10.169.213.242 UG1 xn2
1.2.2.0/30 10.169.213.233 UG1 xn1
1.2.2.0/30 10.169.213.241 UG1 xn2
1.2.3.0/30 10.169.213.234 UG1 xn1
1.2.3.0/30 10.169.213.242 UG1 xn2
1.2.3.0/30 10.169.213.233 UG1 xn1
1.2.3.0/30 10.169.213.241 UG1 xn2
# flush panic ... see ScreenShots in attach
root@noc-srr01:~ # netstat -rn | wc -l ; route -qn flush ; netstat -rn | wc -l
63599
--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"