Re: Giantless VFS.

From: Jeremie Le Hen <jeremie_at_le-hen.org>
Date: Mon, 22 Nov 2004 23:36:21 +0100
Hi Jeff,

> I haven't received any feedback from the list though.  I hope people are
> testing it.  Perhaps the silence indicates universal success? :-)

I have just tested your patch.  It compiles like a charm.  FYI, my
kernel have MUTEX_DEBUG, INVARIANTS and WITNESS enabled, but no
PREEMPTION.
While using my system with debug.mpsavevfs=1, I encountered two different
panics.  (Sorry, I do not have a serial cable plugged into my laptop and
manual writing of hexadecimal addresses is very annoying.)

The first one seems to be related to union mounts as when I use Tobias
Roth's profile.sh (which union mounts a vnode md(4) device over /etc)
`ls /etc' panics the system but when I don't have the mount, everything
seems to work :
panic: mutex Giant not owned at ../../../kern/vfs_vnops.c:962
db> trace
kdb_enter()
panic()
_mtx_assert()
vn_write_suspend_wait()
ufs_inactive()
ufs_vnoperate()
vput()
getdirentries()
syscall()


The second one appeared just when I ask bash(1) to complete a command
name : it has to scan all directories from $HOME and stat(2) every files
in them.  Here is the panic() :
Memory modified after free 0xc1ddc300 (252) val=c1df59c4 _at_ 0xc1ddc374
panic: Most recently used by UFS mount
kdb_enter()
panic()
mtrash_ctor()
uma_zalloc_arg()
malloc()
fdinit()
fdcopy()
fork1()
fork()
syscall()


I hope this will help.
Best regads,
-- 
Jeremie Le Hen
jeremie_at_le-hen.org
Received on Mon Nov 22 2004 - 21:36:35 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:23 UTC