*BSD News Article 98280


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!news.cs.su.oz.au!metro!metro!munnari.OZ.AU!news.Hawaii.Edu!news.caldera.com!enews.sgi.com!newshub1.home.com!newshub2.home.com!news.home.com!howland.erols.net!feed1.news.erols.com!news.nl.innet.net!INnl.net!feed1.news.innet.be!INbe.net!stns.news.pipex.net!warm.news.pipex.net!pipex!tank.news.pipex.net!pipex!news.utell.co.uk!usenet
From: brian@shift.utell.net (Brian Somers)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Please Help -> panic: page fault
Date: 23 Jun 1997 11:06:35 GMT
Organization: Awfulhak Ltd.
Lines: 70
Message-ID: <5ollbr$b2l@ui-gate.utell.co.uk>
References: <01bc7f78$eca0de60$0400000a@one>
Reply-To: brian@awfulhak.org, brian@utell.co.uk
NNTP-Posting-Host: shift.utell.net
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
X-Newsreader: knews 0.9.8
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:43362

In article <01bc7f78$eca0de60$0400000a@one>,
	"The Bells" <jnsbell@ix.netcom.com> writes:
> I am running 2.2.1 with the ipfirewall configured and ipfw redirecting to a
> divert port (natd), and natd is running against ppp0 (natd -interface ppp0
> -m).
> 
> I seems that about one out of three or four times I use fetchmail to
> retrieve mail from a pop server, I get the following message just before
> rebooting:
> 
> fatal trap 12: page fault while in kernel mode
> fault address		= 0xf0634000
> fault code		= supervisor read, page not present
> instruction pointer	= 0x8:0xf145869
> stack pointer		= 0x10:0xefbffdd4
> frame pointer		= 0x10:0xefbffdd8
> code segment		= base 0x0, limit 0xfffff, type 0x1b
> 			= DPL 0, pres 1, def32 1, gran 1
> processor eflags		= interrupt enabled, resume, IOPL = 0
> current process		= 253 (natd)
> interrupt mask 		= net tty
> panic: page fault
> 
> At this point, the disks are sync'd and I am prompted to reboot.
> I have an idea of what is happening, I'm just not sure why.
> 
> I'd appreciate any help or suggestions on resolving this problem.
> 
> Thank you,

This has just been fixed in 2.2 and -current.  Go into /sys/net
and apply the following patch:

*** slcompress.c.orig	Mon Jun 23 12:04:24 1997
--- slcompress.c	Sun Jun 22 06:10:24 1997
***************
*** 217,222 ****
--- 217,224 ----
  		comp->last_cs = lcs;
  		hlen += th->th_off;
  		hlen <<= 2;
+ 		if (hlen > m->m_len)
+ 		    return TYPE_IP;
  		goto uncompressed;
  
  	found:
***************
*** 247,252 ****
--- 249,256 ----
  	deltaS = hlen;
  	hlen += th->th_off;
  	hlen <<= 2;
+ 	if (hlen > m->m_len)
+ 	    return TYPE_IP;
  
  	if (((u_short *)ip)[0] != ((u_short *)&cs->cs_ip)[0] ||
  	    ((u_short *)ip)[3] != ((u_short *)&cs->cs_ip)[3] ||

and rebuild your kernel (or if you're modload'ing ppp support,
rebuild your lkm).

> Jerry Bell
> MIS 
> Reilly Plating Company && M-Lok, Inc
> 

-- 
Brian <brian@awfulhak.org> <brian@freebsd.org>
      <http://www.awfulhak.org>
Don't _EVER_ lose your sense of humour !