tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: assertion "(vp->v_flag & VONWORKLST)" failed: genfs_vnops.c, line 1322
On Mon, May 04, 2009 at 11:49:28AM +0000, Andrew Doran wrote:
> On Sun, May 03, 2009 at 02:26:48PM +0200, Manuel Bouyer wrote:
>
> > Hi
> > I got this on a netbsd-3 DEBUG kernel:
> > panic: kernel debugging assertion "(vp->v_flag & VONWORKLST)" failed: file
> > "/dsk/l1/misc/bouyer/netbsd-3-1/src/sys/miscfs/genfs/genfs_vnops.c", line
> > 1322
> > Stopped in pid 15.1 (pagedaemon) at netbsd:cpu_Debugger+0x5:
> > leave
> > db> tr
> > cpu_Debugger() at netbsd:cpu_Debugger+0x5
> > panic() at netbsd:panic+0x1c8
> > __assert() at netbsd:__assert+0x21
> > genfs_putpages() at netbsd:genfs_putpages+0x6e9
> > uvn_put() at netbsd:uvn_put+0x31
> > uvmpd_scan_inactive() at netbsd:uvmpd_scan_inactive+0x2f6
> > uvmpd_scan() at netbsd:uvmpd_scan+0x55
> > uvm_pageout() at netbsd:uvm_pageout+0xe1
> >
> > any idea if this KDASSERT() here is right ? I've found other reports
> > of this; I suspect this issue may also be present in netbsd-4 because the
> > code path looks very similar. I guess the status of VONWORKLST can change
> > because GOP_WRITE() can block.
>
> I could be wrong but IIRC softdep can screw this up because it can change
> v_flag from interrupt context and there is no splbio/splx.
there's no filesystem mounted -o softdep on this server. It's compiled in
the kernel though.
> It's not a
> problem in 5.0.
Yes, I've seen the locking in this function is completely different
in 5.0. I'm now testing a 5.0 kernel on this system ...
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Home |
Main Index |
Thread Index |
Old Index