Summary: | tailq crash/nd inet6 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Base System | Reporter: | Larry Rosenman <ler> | ||||||||||
Component: | kern | Assignee: | Mark Johnston <markj> | ||||||||||
Status: | Closed FIXED | ||||||||||||
Severity: | Affects Only Me | CC: | ae, markj, pi | ||||||||||
Priority: | --- | Keywords: | crash, needs-patch, needs-qa | ||||||||||
Version: | CURRENT | Flags: | koobs:
mfc-stable10?
koobs: mfc-stable9? |
||||||||||
Hardware: | Any | ||||||||||||
OS: | Any | ||||||||||||
Attachments: |
|
Description
Larry Rosenman
2016-02-04 01:37:48 UTC
I can reliably reproduce this by rebooting my pfSense router that is doing the rtadv's. Created attachment 166582 [details]
another one
Created attachment 166583 [details]
and a 3rd
vmcore's are ALL available, and I can give a @FreeBSD.org dev access. Created attachment 166686 [details]
Another one
this seems to be at the root of my tcp6 issues. I've put a bunch more core.txt's at: http://www.lerctr.org/~ler/FreeBSD/ I've also put dmesg, loader.conf, rc.conf, sysctl.conf there. I'd really like to get to the bottom of this. I'm working on this. Larry's confirmed that the patch here fixes the crash: https://people.freebsd.org/~markj/patches/defrouter_locking.diff I'm going to commit some trivial cleanup portions of that patch and put the rest up for review. It's a bit incomplete. In particular, defrouter_reset() is not locked. A commit references this bug: Author: markj Date: Thu Feb 25 20:12:05 UTC 2016 New revision: 296063 URL: https://svnweb.freebsd.org/changeset/base/296063 Log: Lock the NDP default router list and count defrouter references. This addresses a number of race conditions that can cause crashes as a result of unsynchronized access to the list. PR: 206904 Tested by: Larry Rosenman <ler@lerctr.org>, Kevin Bowling <kevin.bowling@kev009.com> MFC after: 2 months Differential Revision: https://reviews.freebsd.org/D5315 Changes: head/sys/netinet6/nd6.c head/sys/netinet6/nd6.h head/sys/netinet6/nd6_nbr.c head/sys/netinet6/nd6_rtr.c This was MFCed to stable/10 in r303458. |