Subject: kernel page fault trap (pppd / stf0)
To: None <current-users@netbsd.org>
From: Brian Stark <bpstark@pacbell.net>
List: current-users
Date: 06/26/2003 09:20:03
  Hi,

My system is NetBSD-current 1.6T/i386.

For about the past month or so I have seen seen periodic problems with 
pppd as it attempts to shutdown (due to the system being halted or being 
rebooted). This morning I saw it happen again and decided to write the 
messages down (written by hand, hopefully I wrote everything correct):

kernel: page fault trap, code = 0
stopped in pid 3895.1 (ifconfig) at netbsd:in6ifa_ifpforlinklocal + 
0x1b: cmpl $0,0(%.eax)

Seeing the mention of "ifconfig" above, I looked at my /etc/ppp/ip-down 
to see how it uses ifconfig and here is an excerpt:

# Bye bye default route
route delete default $IPREMOTE
# Delete the default route for IPv6. See RFC3068. This uses the 6to4 
IPv6 relay anycast address.
route delete -inet6 default 2002:C058:6301::
# Report status of and then destroy the tunnel interface.
ifconfig stf0
ifconfig stf0 destroy

Arguably, I probably don't need the first "ifconfig stf0", but that 
shouldn't be causing a problem in any case. To help understand why I 
have the "ifconfig" statementes in my ip-down script, here is how a 
portion of my ip-up script is setup:

# Configure the IPv6 to IPv4 tunnel, and report the status of the interface.
ifconfig stf0 create inet6 $IPV6LOCAL prefixlen 16 alias
ifconfig stf0

# Add the default route for IPv6. See RFC3068.
# This uses the 6to4 IPv6 relay anycast address.
route add -inet6 default 2002:C058:6301::

The fact that these kernel page fault traps don't occur every time pppd 
is shutdown has made it hard to figure out what is happening. Has anyone 
else seen this?

Brian
bpstark at pacbell dot net