:On Mon, Mar 15, 1999 at 01:24:46PM -0800, Matthew Dillon wrote: :> Compile up a kernel with 'options DDB' and get a backtrace when :> it panics next ( 'trace' command from DDB prompt ). : :Ok, here goes. The kernel is compiled without -g for the moment, :but I've provided the function offsets if that may help. : :vfs_busy() at vfs_busy+0x6d :lookup() +0x3b9 :namei() +0x180 :stat() +0x44 :syscall() +0x187 : :I also get what seems to be spurious EPROTONOSUPPORT errors that :show up in cp while copying files... :-- :Pierre Beyssac p...@enst.fr
The code in lookup() that calls vfs_busy() is: while (dp->v_type == VDIR && (mp = dp->v_mountedhere) && (cnp->cn_flags & NOCROSSMOUNT) == 0) { if (vfs_busy(mp, 0, 0, p)) continue; error = VFS_ROOT(mp, &tdp); vfs_unbusy(mp, p); if (error) goto bad2; vput(dp); ndp->ni_vp = dp = tdp; } You shouldn't be crossing a mount point. Are you by chance doing a recursive copy onto itself? e.g. cp -rp src dest where dest is mounted under src somewhere ? Of course, it is still a serious kernel bug. I would like to try to reproduce it in order to track it down. How are things mounted on your system ( df ) and what are the *exact* arguments you are using with cp? -Matt Matthew Dillon <dil...@backplane.com> To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-current" in the body of the message