Panic in a vkernel: getblk: vnode 0x669232e8 has no object!

Rumko rumcic at gmail.com
Tue Apr 1 23:47:42 PDT 2008


Matthew Dillon wrote:

> 
> :Hm:
> :"/home/var.vkernel/memimg.000000" is not a core dump: File format not
> :recognized" guess not? (tried it with gdb not kgdb)
> 
>     Heh.  No but you CAN gdb the live vkernel (assuming it dropped into
>     db> it is still running).
> 
>     In anycase, don't bother going that far.  There's definitely a bug
>     here.  The vnode is supposed to have a VM object associated with it
>     and clearly there must be a path where that vnode can be instantiated
>     without one.
> 
>     Can you by any chance reproduce the bug to test that this patch
>     fixes the problem?
> 
> -Matt
> 
> Index: ufs_inode.c
> ===================================================================
> RCS file: /cvs/src/sys/vfs/ufs/ufs_inode.c,v
> retrieving revision 1.24
> diff -u -p -r1.24 ufs_inode.c
> --- ufs_inode.c       2 Jan 2008 22:42:37 -0000       1.24
> +++ ufs_inode.c       2 Apr 2008 05:51:41 -0000
> @@ -87,6 +87,8 @@             if (!ufs_getinoquota(ip))
>  (void)ufs_chkiq(ip, -1, NOCRED, FORCE);
>  #endif
>  /* Must have a VM object to truncate */
> +             if (vp->v_object == NULL)
> +                     vinitvmio(vp, 0);
>  error = ffs_truncate(vp, (off_t)0, 0, NOCRED);
>  ip->i_rdev = 0;
>  mode = ip->i_mode;

I'll try to reproduce it, but since this is the first time I got this panic ...
I'll see if it can be done
-- 
Regards,
Rumko





More information about the Bugs mailing list