Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Aug 1998 11:46:13 +0200 (CEST)
From:      Andrzej Bialecki <abial@nask.pl>
To:        Julian Elischer <julian@whistle.com>
Cc:        freebsd-current@FreeBSD.ORG
Subject:   It's MFS panic.. (Re: Panic with DEVFS)
Message-ID:  <Pine.BSF.4.00.9808271115470.17607-100000@korin.warman.org.pl>
In-Reply-To: <Pine.BSF.4.00.9808260843510.16828-100000@korin.warman.org.pl>

next in thread | previous in thread | raw e-mail | index | archive | help

On Wed, 26 Aug 1998, Andrzej Bialecki wrote:

> I'm totally lame when it comes to FS internals, but this looks to me
> as if some delayed action (caching? cleaning? read-ahead? whatever?)
> is causing this.

...but it looks like I was right after all. Below is the trace (no
crashdump available yet - I'm working on it). Source tree is about four
days old.

One important notice, though: this time I was able to reliably crash
_without_ disabling any device, and even when not touching /dev at all -
it was enough to do just an 'ls -l' of some directory a few times to
produce sufficient number of dirty pages... The only thing that is common
in all these cases is:

* root on MFS
* DEVFS/SLICE kernel

and it seems these two definitely don't like each other.. :-(

So, here's the stack trace (taken by hand.. :-<< ):

  _panic()
  _mfs_strategy(ap=...) at _mfs_strategy+0x3c [../../ufs/mfs/mfs_vnops.c:137]
  _bwrite(bp=...) at _bwrite+0xaf [../../kern/vfs_bio.c:891]
* _vop_stdbwrite(ap=...) at _vop_defaultop+0x15 [../../kern/vfs_default.c:131]
* _bawrite(bp=...) at _bawrite+0x2c [../../kern/vfs_bio.c:1122]
* _spec_fsync(ap=...) at _spec_fsync+0x76 [../../miscfs/specfs/spec_vnops.c:509]
  _mfs_fsync(ap=...) at _mfs_fsync+0x16 [../../ufs/mfs/mfs_vnops.c:118]
  _sched_sync() at _sched_sync+0xa4 [../../kern/vfs_subr.c:499]
  _kproc_start(udata=...) at _kproc_start+0x32 [../../kern/init_main.c:248]
  _fork_trampoline(...,...,...,...,...) at _fork_trampoline+0x30

The lines marked with stars ('*') in other panics were replaced with the
following lines:

  _vop_stdbwrite(ap=...) at _vop_stdbwrite+0xe [../../kern/vfs_default.c:285]
  _vop_defaultop(ap=...) at _vop_defaultop+0x15 [../../kern/vfs_default.c:131]
  _vfs_bio_awrite(bp=...) at _vfs_bio_awrite+0x103 [../../kern/vfs_bio.c:1122]
  _spec_fsync(ap=...) at _spec_fsync+0x1e [../../miscfs/specfs/spec_vnops.c:503]

I also tried to do a 'show object' which printed:

db> show object
Object 0xf019bb75: type=1694529634, size=0x65007864, res=1166738538, ret=1694529635, flags=0x7363

Fatal trap 12: page fault while in kernel mode
...
fault code         = supervisor read, page not present
...
current process    = 4 (syncer)
interrupt mask     = bio

and at this point I gave up...

I'll try to get the coredump, if you're interested in having it...

Andrzej Bialecki

+---------------------+------------------------+--------------------------+
| <abial@nask.pl>     | When in problem or in  |  if(halt_per_mth > 0) {  |
| Research & Academic | doubt, run in circles, |      fetch("FreeBSD");   |
| Network in Poland   | scream and shout.      |  }                       |
+ --------------------+------------------------+--------------------------+


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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.00.9808271115470.17607-100000>