Date: Fri, 11 Oct 2019 07:25:02 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 241191] route flush panic with RADIX_MPATH Message-ID: <bug-241191-227@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D241191 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: bugs@FreeBSD.org Reporter: dl@CyberPunk.ru 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 a= nd 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 =3D 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 origin= al 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 #=20 root@noc-srr01:/boot/kernel # netstat -rnW | more Routing tables Internet: Destination Gateway Flags Use Mtu Netif Exp= ire 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 ; netst= at -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 #=20 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 --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-241191-227>