panic: zone: entry in free

1999-07-14 Thread Dominic Mitchell

I've been getting this panic when I've installed new kernels the last
couple of times.  The panic is occuring when I have freshly booted the
system with a new kernel and logged on for the first time.  It appears
to occur at the point at which I start fetchmail in my profile, FWIW.

BTW: My home directory is mounted over nfsv3,udp from a Solaris2.6
server with amd.  I've tried getting rid of amd and it makes no
difference.

At the moment, I'm having to use a kernel from June 8th, to be able to
login...

Here's the traceback from ddb:

Debugger(0xc01d545b) at Debugger+0x37
panic(0xc01e5339, 0xc6aa6df4, 0xc0152af8, 0x1, 0) at panic+0x74
zerror(0x1, 0, 0xc6aa6f80, 0x, 0xc0f3b300) at zerror+0x3f
namei(0xc6aa6eec, 0, 0xc6aa6f80, 0x, 0xc6aa6e30) at namei+0xac
vn_open(0xc6aa6eec, 0x3, 0, 0xc6558680, 0xc01f572c) at vn_open+0x1eb
open(0xc6558680, 0xc6aa6f80, 0x, 0, 0x) at open+0xbb
syscall(0x2f, 0x2f, 0x2f, 0x, 0) at syscall+0x182
Xint0x80_syscall() at Xint0x80_syscall+0x26

Does this lot mean anything to anybody?

Unfortunately, I can't seem to get a crash dump out of the thing.  I've
tried doing both "panic" and "continue" from within ddb, and it looks as
though the dump is being written to disk, but when it comes back up,
nothing.

Here's the config file for the kernel that's crashing on me:


#
# VOODOO --- Dom's workstation.  A HP Vectra VL.
#
# $Id: VOODOO,v 1.22 1999/07/13 06:23:14 dom Exp $
#

machine "i386"
cpu "I686_CPU"
ident   VOODOO
maxusers32

# Build a debug kernel.
makeoptions DEBUG="-g"

options DDB # Kernel debugger.

options "COMPAT_43" #Compatible with BSD 4.3 [KEEP THIS!]
options "NO_F00F_HACK"
options FFS #Berkeley Fast Filesystem
options FFS_ROOT
options INET#InterNETworking
options INVARIANTS
options INVARIANT_SUPPORT
options KTRACE  #kernel tracing
options SOFTUPDATES
options SYSVMSG
options SYSVSEM
options SYSVSHM
options UCONSOLE#Allow users to grab the console
options USER_LDT#Wine.

controller  isa0at nexus?
controller  pci0at nexus?

controller  fdc0at isa? port "IO_FD1" irq 6 drq 2
diskfd0 at fdc0 drive 0

## controller   wdc0at isa? port "IO_WD1" irq 14
## disk wd0 at wdc0 drive 0 flags 0xa0ff
## controller   wdc1at isa? port "IO_WD2" irq 15
## device   wcd0#IDE CD-ROM

# Soren's new atapi stuff...
controller  ata0
device  atadisk0
device  atapicd0

# syscons is the default console driver, resembling an SCO console
controller  atkbdc0 at isa? port IO_KBD
device  atkbd0  at atkbdc? irq 1
device  psm0at atkbdc? irq 12
device  vga0at isa? port ? conflicts
device  sc0 at isa?

# Mandatory, don't remove
device  npx0at nexus? port IO_NPX irq 13

device  apm0at nexus? disable flags 0x31

device  sio0at isa? port "IO_COM1" flags 0x10 irq 4
device  sio1at isa? port "IO_COM2" irq 3

device xl0

# Parallel port bus.
controller  ppbus0
device  lpt0at ppbus?
device  plip0   at ppbus?
device  ppc0at isa? port? irq 7

pseudo-device   loop
pseudo-device   ether
pseudo-device   pty 32
pseudo-device   bpf 2
pseudo-device   snp 2   #Snoop on ttys
pseudo-device   splash


And here's the dmesg for the successful kernel that I'm running which is
pretty much the same but with a couple more filesystems compiled into it
instead of modules.  Please let me know if there's any more information
I can provide to help with tracking this down...


Copyright (c) 1992-1999 The FreeBSD Project.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
FreeBSD 4.0-CURRENT #18: Tue Jun  8 05:00:06 BST 1999
[EMAIL PROTECTED]:/usr/src/sys/compile/VOODOO
Timecounter "i8254"  frequency 1193182 Hz
CPU: Pentium II (299.61-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x634  Stepping=4
  Features=0x80f9ff
real memory  = 67108864 (65536K bytes)
avail memory = 62611456 (61144K bytes)
Preloaded elf kernel "kernel.goodnfs" at 0xc028c000.
Preloaded elf module "if_tun.ko" at 0xc028c0a4.
Pentium Pro MTRR support enabled, default memory type is uncacheable
npx0:  on motherboard
npx0: INT 16 interface
pcib0:  on motherboard
pci0:  on pcib0
Correcting Natoma config for non-SMP
Correcting Natoma config for non-SMP
chip0:  at device 0.0 on pci0
isab0:  at device 4.0 on pci0
ata-pci0:  at device 4.1 on pci0

Re: panic: zone: entry in free

1999-07-14 Thread Luoqi Chen

> I've been getting this panic when I've installed new kernels the last
> couple of times.  The panic is occuring when I have freshly booted the
> system with a new kernel and logged on for the first time.  It appears
> to occur at the point at which I start fetchmail in my profile, FWIW.
> 
Get rid of INVARIANTS in your config file.

-lq


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-14 Thread Dominic Mitchell

On Thu, Jul 15, 1999 at 12:08:07AM -0400, Luoqi Chen wrote:
> > I've been getting this panic when I've installed new kernels the last
> > couple of times.  The panic is occuring when I have freshly booted the
> > system with a new kernel and logged on for the first time.  It appears
> > to occur at the point at which I start fetchmail in my profile, FWIW.
> > 
> Get rid of INVARIANTS in your config file.

I realise that will stop the panic from looking at the source code, but
surely it's just covering up the problem and waiting for it to happen
later?
-- 
Dom Mitchell -- Palmer & Harvey McLane -- Unix Systems Administrator

In Mountain View did Larry Wall
Sedately launch a quiet plea:
That DOS, the ancient system, shall
On boxes pleasureless to all
Run Perl though lack they C.
-- 
**
This email and any files transmitted with it are confidential and 
intended solely for the use of the individual or entity to whom they   
are addressed. If you have received this email in error please notify 
the system manager.

This footnote also confirms that this email message has been swept by 
MIMEsweeper for the presence of computer viruses.
**


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-15 Thread Luoqi Chen

> I realise that will stop the panic from looking at the source code, but
> surely it's just covering up the problem and waiting for it to happen
> later?
>
I'm pretty it's caused by the INVARIANTS option, similar incidents have been
reported many times before. The problem with INVARIANTS is that 1. it alters
data structures, 2. kernel modules don't know about this option, so you
have inconsistent kernel and modules. There're three solutions,

1, make INVARIANTS less intrusive. So far only vm_zone code is causing
problems, I suggest we rename the option to INVARIANTS_ZONE in this part
of code (the code should be pretty much bug free by now).

2, compile modules with the option. The easiest way is probably add
-DINVARIANTS in your /etc/make.conf, you have to remember to take it
out when you remove the option from your config file.

3, do not use INVARIANTS if you don't need it. :)

-lq


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-15 Thread Matthew Dillon

:> I realise that will stop the panic from looking at the source code, but
:> surely it's just covering up the problem and waiting for it to happen
:> later?
:>
:I'm pretty it's caused by the INVARIANTS option, similar incidents have been
:reported many times before. The problem with INVARIANTS is that 1. it alters
:data structures, 2. kernel modules don't know about this option, so you
:have inconsistent kernel and modules. There're three solutions,
:
:1, make INVARIANTS less intrusive. So far only vm_zone code is causing
:problems, I suggest we rename the option to INVARIANTS_ZONE in this part
:of code (the code should be pretty much bug free by now).
:
:2, compile modules with the option. The easiest way is probably add
:-DINVARIANTS in your /etc/make.conf, you have to remember to take it
:out when you remove the option from your config file.
:
:3, do not use INVARIANTS if you don't need it. :)
:
:-lq

This sounds very similar to the DIAGNOSTIC story...  I would much
prefer to see INVARIANTS be entirely passive and not fall down
the same well as DIAGNOSTIC did.  People may remember how utterly
useless DIAGNOSTIC became due to being overly intrusive.

INVARIANTS should simply assert conditions that it expects to be
true and panic if they aren't.

-Matt
Matthew Dillon 
<[EMAIL PROTECTED]>


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-15 Thread Brian F. Feldman

On Thu, 15 Jul 1999, Luoqi Chen wrote:

> > I realise that will stop the panic from looking at the source code, but
> > surely it's just covering up the problem and waiting for it to happen
> > later?
> >
> I'm pretty it's caused by the INVARIANTS option, similar incidents have been
> reported many times before. The problem with INVARIANTS is that 1. it alters
> data structures, 2. kernel modules don't know about this option, so you
> have inconsistent kernel and modules. There're three solutions,
> 
> 1, make INVARIANTS less intrusive. So far only vm_zone code is causing
> problems, I suggest we rename the option to INVARIANTS_ZONE in this part
> of code (the code should be pretty much bug free by now).
> 
> 2, compile modules with the option. The easiest way is probably add
> -DINVARIANTS in your /etc/make.conf, you have to remember to take it
> out when you remove the option from your config file.

I apply the following to freshly checked-out sources:
--- src/sys/modules/Makefile.inc.orig   Fri Oct 16 00:31:35 1998
+++ src/sys/modules/Makefile.incSun Mar 14 23:03:02 1999
@@ -1,3 +1,8 @@
 # $Id: Makefile.inc,v 1.1 1998/10/16 04:31:35 peter Exp $
 
 KLDMOD=true
+CFLAGS+= -DINVARIANTS
+NTUN=4
+PPP_FILTER=1
+VM86=1
+CFLAGS+= -g


> 
> 3, do not use INVARIANTS if you don't need it. :)
> 
> -lq
> 
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message
> 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 [EMAIL PROTECTED]   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-15 Thread Dominic Mitchell

On Thu, Jul 15, 1999 at 12:18:42PM -0400, Luoqi Chen wrote:
> > I realise that will stop the panic from looking at the source code, but
> > surely it's just covering up the problem and waiting for it to happen
> > later?
> >
> I'm pretty it's caused by the INVARIANTS option, similar incidents have been
> reported many times before. The problem with INVARIANTS is that 1. it alters
> data structures, 2. kernel modules don't know about this option, so you
> have inconsistent kernel and modules. There're three solutions,
> 
> 1, make INVARIANTS less intrusive. So far only vm_zone code is causing
> problems, I suggest we rename the option to INVARIANTS_ZONE in this part
> of code (the code should be pretty much bug free by now).
> 
> 2, compile modules with the option. The easiest way is probably add
> -DINVARIANTS in your /etc/make.conf, you have to remember to take it
> out when you remove the option from your config file.
> 
> 3, do not use INVARIANTS if you don't need it. :)

Well, for the moment, I guess I'll take the 3rd option.  My current
kernel seems to be up and alive a lot longer...  Given that I'm not the
programmer, I'll keep INVARIANTS off for the moment.

This of course begs the question, under what circumstances *should* one
use INVARIANTS?

-- 
Dom Mitchell -- Palmer & Harvey McLane -- Unix Systems Administrator

In Mountain View did Larry Wall
Sedately launch a quiet plea:
That DOS, the ancient system, shall
On boxes pleasureless to all
Run Perl though lack they C.
-- 
**
This email and any files transmitted with it are confidential and 
intended solely for the use of the individual or entity to whom they   
are addressed. If you have received this email in error please notify 
the system manager.

This footnote also confirms that this email message has been swept by 
MIMEsweeper for the presence of computer viruses.
**


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-15 Thread Dominic Mitchell

On Thu, Jul 15, 1999 at 10:01:18AM -0700, Matthew Dillon wrote:
> :> I realise that will stop the panic from looking at the source code, but
> :> surely it's just covering up the problem and waiting for it to happen
> :> later?
> :>
> :I'm pretty it's caused by the INVARIANTS option, similar incidents have been
> :reported many times before. The problem with INVARIANTS is that 1. it alters
> :data structures, 2. kernel modules don't know about this option, so you
> :have inconsistent kernel and modules. There're three solutions,
> :
> :1, make INVARIANTS less intrusive. So far only vm_zone code is causing
> :problems, I suggest we rename the option to INVARIANTS_ZONE in this part
> :of code (the code should be pretty much bug free by now).
> :
> :2, compile modules with the option. The easiest way is probably add
> :-DINVARIANTS in your /etc/make.conf, you have to remember to take it
> :out when you remove the option from your config file.
> :
> :3, do not use INVARIANTS if you don't need it. :)
> 
> This sounds very similar to the DIAGNOSTIC story...  I would much
> prefer to see INVARIANTS be entirely passive and not fall down
> the same well as DIAGNOSTIC did.  People may remember how utterly
> useless DIAGNOSTIC became due to being overly intrusive.
> 
> INVARIANTS should simply assert conditions that it expects to be
> true and panic if they aren't.

In this case, it appears to have done that.  I just don't know enough to
work out what is causing the assertion to fail...

-- 
Dom Mitchell -- Palmer & Harvey McLane -- Unix Systems Administrator

In Mountain View did Larry Wall
Sedately launch a quiet plea:
That DOS, the ancient system, shall
On boxes pleasureless to all
Run Perl though lack they C.
-- 
**
This email and any files transmitted with it are confidential and 
intended solely for the use of the individual or entity to whom they   
are addressed. If you have received this email in error please notify 
the system manager.

This footnote also confirms that this email message has been swept by 
MIMEsweeper for the presence of computer viruses.
**


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-15 Thread Sheldon Hearn



On Thu, 15 Jul 1999 21:18:03 +0100, Dominic Mitchell wrote:

> This of course begs the question, under what circumstances *should* one
> use INVARIANTS?

This has been explained to me before as "when you have the time and
inclination to look into any problems that this might cause or
highlight."

Ciao,
Sheldon.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: panic: zone: entry in free

1999-07-15 Thread Greg Lehey

On Thursday, 15 July 1999 at  0:08:07 -0400, Luoqi Chen wrote:
>> I've been getting this panic when I've installed new kernels the last
>> couple of times.  The panic is occuring when I have freshly booted the
>> system with a new kernel and logged on for the first time.  It appears
>> to occur at the point at which I start fetchmail in my profile, FWIW.
>
> Get rid of INVARIANTS in your config file.

That removes the symptom, not the cause.

Greg
--
Finger [EMAIL PROTECTED] for PGP public key
See complete headers for address and phone numbers


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message