Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Jul 1999 20:46:25 +0300
From:      Maxim Sobolev <sobomax@altavista.net>
To:        stable@freebsd.org
Subject:   Tun interface related panic
Message-ID:  <379758F0.D234C147@altavista.net>

next in thread | raw e-mail | index | archive | help
Hi folks,

In order to make Real Player (G2 for Windows) work via my dial-on-demand
connection to the Internet I slightly modified my ppp.conf and
discovered that when I'm trying to connect to any realaudio server my
old good FreeBSD box paniced with a 100% correlation (checked 3 times).
This machine is a pretty old (Dell P60), but nevertheless it was stable
before this incident and didn't give me any troubles since 2.2.7 release
was installed there 1.5 years ago. Now it runs 3.2-STABLE, last cvsup'ed
and built 5 days ago. Below you can find all relevant to this panic
info.

In case any other info will be necessary please let me know directly by
e-mail because I'm not subscribed on the -stable list. I will wait
awhile and will not delete this horrible vmcore.0 file.


Sincerely,

Maxim
-------------------------Cut Here----------------------------
uname -a:
FreeBSD vega 3.2-STABLE FreeBSD 3.2-STABLE #0: Thu Jul 22 19:44:49 EEST
1999     max@vega:/usr/src/sys/compile/VEGA  i386

Following lines in the ppp.conf has actually triggered a panic:
 alias port udp 192.168.1.1:7070 7070
 alias port udp 192.168.1.1:7071 7071
 alias port udp 192.168.1.1:7080 7080
 alias port udp 192.168.1.1:7081 7081

dmesg:
Copyright (c) 1992-1999 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
 The Regents of the University of California. All rights reserved.
FreeBSD 3.2-STABLE #0: Thu Jul 22 19:44:49 EEST 1999
    max@vega:/usr/src/sys/compile/VEGA
Timecounter "i8254"  frequency 1193140 Hz
Timecounter "TSC"  frequency 59999343 Hz
CPU: Pentium/P5 (60.00-MHz 586-class CPU)
  Origin = "GenuineIntel"  Id = 0x517  Stepping = 7
  Features=0x1bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
real memory  = 25165824 (24576K bytes)
avail memory = 22208512 (21688K bytes)
Preloaded elf kernel "kernel" at 0xc0275000.
Probing for devices on PCI bus 0:
chip0: <Intel 82434LX (Mercury) PCI cache memory controller> rev 0x03 on
pci0.0.0
chip1: <Intel 82378IB PCI to ISA bridge> rev 0x43 on pci0.2.0
ed1: <NE2000 PCI Ethernet (RealTek 8029)> rev 0x00 int a irq 10 on
pci0.6.0
ed1: address 00:40:05:3b:1c:23, type NE2000 (16 bit)
Probing for devices on the ISA bus:
sc0 on isa
sc0: VGA color <16 virtual consoles, flags=0x0>
ed0 not found at 0x280
atkbdc0 at 0x60-0x6f on motherboard
atkbd0 irq 1 on isa
sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
fdc0: FIFO enabled, 8 bytes threshold
fd0: 1.44MB 3.5in
wdc0 at 0x1f0-0x1f7 irq 14 flags 0xa0ffa0ff on isa
wdc0: unit 0 (wd0): <FUJITSU MPC3064AT>, multi-block-16
wd0: 6187MB (12672450 sectors), 13410 cyls, 15 heads, 63 S/T, 512 B/S
vga0 at 0x3b0-0x3df maddr 0xa0000 msize 131072 on isa
npx0 on motherboard
npx0: INT 16 interface
Intel Pentium detected, installing workaround for F00F bug
changing root device to wd0s1a
ffs_mountfs: superblock updated for soft updates
ffs_mountfs: superblock updated for soft updates
ffs_mountfs: superblock updated for soft updates
ffs_mountfs: superblock updated for soft updates

Kernel config:
machine  "i386"
cpu  "I586_CPU"
ident  VEGA
maxusers 10
options  INET   #InterNETworking
options  FFS   #Berkeley Fast Filesystem
options  SOFTUPDATES
options  NFS   #Network Filesystem
options  FFS_ROOT  #FFS usable as root device [keep this!]
options  PROCFS   #Process filesystem
options  "COMPAT_43"  #Compatible with BSD 4.3 [KEEP THIS!]
options  FAILSAFE  #Be conservative
options         NO_LKM
options         "CLK_USE_I8254_CALIBRATION"
options         NSWAPDEV=1
config  kernel root on wd0
controller isa0
controller pci0
controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2
disk  fd0 at fdc0 drive 0
controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0xa0ffa0ff
disk  wd0 at wdc0 drive 0
controller      atkbdc0 at isa? port IO_KBD tty
device          atkbd0  at isa? tty irq 1
device          vga0    at isa? port ? conflicts
device          sc0     at isa? tty
device  npx0 at isa? port IO_NPX irq 13
device  sio0 at isa? port "IO_COM1" flags 0x10 tty irq 4
device  sio1 at isa? port "IO_COM2" tty irq 3
device ed0 at isa? port 0x280 net irq 10 iomem 0xd8000
pseudo-device loop
pseudo-device ether
pseudo-device   bpfilter 3
pseudo-device tun  1
pseudo-device pty  5
pseudo-device gzip
options  SYSVSHM
options  SYSVSEM
options         SYSVMSG

And of course backtrace:
Script started on Thu Jul 22 20:15:56 1999
sh-2.03# gdb -k kernel.debug /usr/tmp/vmcore.0
GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for
details.
This GDB was configured as "i386-unknown-freebsd"...
IdlePTD 2650112
initial pcb at 224484
panicstr: page fault
panic messages:
---
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0x18
fault code  = supervisor write, page not present
instruction pointer = 0x8:0xc01630f9
stack pointer         = 0x10:0xc2d15d8c
frame pointer         = 0x10:0xc2d15e2c
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  = 205 (ppp)
interrupt mask  =
trap number  = 12
panic: page fault

syncing disks... 1 done

dumping to dev 20001, offset 139216
dump 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
---
#0  boot (howto=256) at ../../kern/kern_shutdown.c:285
285   dumppcb.pcb_cr3 = rcr3();
(kgdb) where
#0  boot (howto=256) at ../../kern/kern_shutdown.c:285
#1  0xc0128034 in panic (fmt=0xc020e303 "page fault")
    at ../../kern/kern_shutdown.c:446
#2  0xc01ec4ba in trap_fatal (frame=0xc2d15d50, eva=24)
    at ../../i386/i386/trap.c:942
#3  0xc01ec16d in trap_pfault (frame=0xc2d15d50, usermode=0, eva=24)
    at ../../i386/i386/trap.c:835
#4  0xc01ebd2f in trap (frame={tf_es = 16, tf_ds = 16, tf_edi =
-1071490428,
      tf_esi = 96, tf_ebp = -1026466260, tf_isp = -1026466440,
      tf_ebx = -1068842112, tf_edx = 0, tf_ecx = 0, tf_eax = 0,
      tf_trapno = 12, tf_err = 2, tf_eip = -1072287495, tf_cs = 8,
      tf_eflags = 66118, tf_esp = -1026805024, tf_ss = -1026466096})
    at ../../i386/i386/trap.c:437
#5  0xc01630f9 in tunwrite (dev=13312, uio=0xc2d15f14, flag=1)
    at ../../net/if_tun.c:559
#6  0xc015d4fd in spec_write (ap=0xc2d15ed0)
    at ../../miscfs/specfs/spec_vnops.c:355
#7  0xc01c3c30 in ufsspec_write (ap=0xc2d15ed0)
    at ../../ufs/ufs/ufs_vnops.c:1845
#8  0xc01c41f5 in ufs_vnoperatespec (ap=0xc2d15ed0)
    at ../../ufs/ufs/ufs_vnops.c:2317
#9  0xc015716c in vn_write (fp=0xc0686100, uio=0xc2d15f14,
cred=0xc04aa580,
    flags=0) at vnode_if.h:331
---Type <return> to continue, or q <return> to quit---
#10 0xc0134571 in dofilewrite (p=0xc2cc32e0, fp=0xc0686100, fd=5,
    buf=0xbfbfc9dc, nbyte=0, offset=-1, flags=0)
    at ../../kern/sys_generic.c:363
#11 0xc013446a in write (p=0xc2cc32e0, uap=0xc2d15f94)
    at ../../kern/sys_generic.c:298
#12 0xc01ec6c5 in syscall (frame={tf_es = 39, tf_ds = 39, tf_edi =
134753912,
      tf_esi = -1077949988, tf_ebp = -1077947940, tf_isp = -1026465820,
      tf_ebx = 0, tf_edx = 134824520, tf_ecx = 0, tf_eax = 4, tf_trapno
= 7,
      tf_err = 2, tf_eip = 672133576, tf_cs = 31, tf_eflags = 582,
      tf_esp = -1077950024, tf_ss = 39}) at ../../i386/i386/trap.c:1100
#13 0xc01e292c in Xint0x80_syscall ()
#14 0x80655e1 in ?? ()
#15 0x806547e in ?? ()
#16 0x806b380 in ?? ()
#17 0x8058329 in ?? ()
#18 0x804c846 in ?? ()
#19 0x8067aac in ?? ()
#20 0x80676ac in ?? ()
#21 0x804a92d in ?? ()
(kgdb) up
#1  0xc0128034 in panic (fmt=0xc020e303 "page fault")
    at ../../kern/kern_shutdown.c:446
446  boot(bootopt);
(kgdb) up
#2  0xc01ec4ba in trap_fatal (frame=0xc2d15d50, eva=24)
    at ../../i386/i386/trap.c:942
942   panic(trap_msg[type]);
(kgdb) up
#3  0xc01ec16d in trap_pfault (frame=0xc2d15d50, usermode=0, eva=24)
    at ../../i386/i386/trap.c:835
835   trap_fatal(frame, eva);
(kgdb) up
#4  0xc01ebd2f in trap (frame={tf_es = 16, tf_ds = 16, tf_edi =
-1071490428,
      tf_esi = 96, tf_ebp = -1026466260, tf_isp = -1026466440,
      tf_ebx = -1068842112, tf_edx = 0, tf_ecx = 0, tf_eax = 0,
      tf_trapno = 12, tf_err = 2, tf_eip = -1072287495, tf_cs = 8,
      tf_eflags = 66118, tf_esp = -1026805024, tf_ss = -1026466096})
    at ../../i386/i386/trap.c:437
437    (void) trap_pfault(&frame, FALSE, eva);
(kgdb) up
#5  0xc01630f9 in tunwrite (dev=13312, uio=0xc2d15f14, flag=1)
    at ../../net/if_tun.c:559
559  top->m_pkthdr.len = tlen;
(kgdb) up
#6  0xc015d4fd in spec_write (ap=0xc2d15ed0)
    at ../../miscfs/specfs/spec_vnops.c:355
355   error = (*cdevsw[major(vp->v_rdev)]->d_write)
(kgdb) up
#7  0xc01c3c30 in ufsspec_write (ap=0xc2d15ed0)
    at ../../ufs/ufs/ufs_vnops.c:1845
1845  error = VOCALL(spec_vnodeop_p, VOFFSET(vop_write), ap);
(kgdb) up
#8  0xc01c41f5 in ufs_vnoperatespec (ap=0xc2d15ed0)
    at ../../ufs/ufs/ufs_vnops.c:2317
2317  return (VOCALL(ufs_specop_p, ap->a_desc->vdesc_offset, ap));
(kgdb) up
#9  0xc015716c in vn_write (fp=0xc0686100, uio=0xc2d15f14,
cred=0xc04aa580,
    flags=0) at vnode_if.h:331
331  return (VCALL(vp, VOFFSET(vop_write), &a));
(kgdb) up
#10 0xc0134571 in dofilewrite (p=0xc2cc32e0, fp=0xc0686100, fd=5,
    buf=0xbfbfc9dc, nbyte=0, offset=-1, flags=0)
    at ../../kern/sys_generic.c:363
363  if ((error = (*fp->f_ops->fo_write)(fp, &auio, fp->f_cred, flags)))
{
(kgdb) up
#11 0xc013446a in write (p=0xc2cc32e0, uap=0xc2d15f94)
    at ../../kern/sys_generic.c:298
298  return (dofilewrite(p, fp, uap->fd, uap->buf, uap->nbyte,
(off_t)-1, 0));
(kgdb) up
#12 0xc01ec6c5 in syscall (frame={tf_es = 39, tf_ds = 39, tf_edi =
134753912,
      tf_esi = -1077949988, tf_ebp = -1077947940, tf_isp = -1026465820,
      tf_ebx = 0, tf_edx = 134824520, tf_ecx = 0, tf_eax = 4, tf_trapno
= 7,
      tf_err = 2, tf_eip = 672133576, tf_cs = 31, tf_eflags = 582,
      tf_esp = -1077950024, tf_ss = 39}) at ../../i386/i386/trap.c:1100
1100  error = (*callp->sy_call)(p, args);
(kgdb) q
sh-2.03# exit
Script done on Thu Jul 22 20:18:34 1999
-------------------------------------The
End------------------------------------




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?379758F0.D234C147>