Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Nov 2013 10:09:38 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Matt Magoffin <matt@msqr.us>
Cc:        Eric van Gyzen <eric@vangyzen.net>, freebsd-stable@freebsd.org
Subject:   Re: 9.2-RELEASE amd64 panic: vn_open_cred
Message-ID:  <20131108080938.GT59496@kib.kiev.ua>
In-Reply-To: <FE60BFFA-366F-4033-B033-E1D950CCCA3E@msqr.us>
References:  <DF88429C-058E-4756-AFC4-F97249FF54AA@msqr.us> <20131106022932.GY59496@kib.kiev.ua> <57A9579D-7BA6-4ED8-9EE0-D2B5949F8D26@msqr.us> <20131106035350.GC59496@kib.kiev.ua> <D0BA9FE0-8CF2-4221-85A0-27EED6A48048@msqr.us> <527A6012.2050500@vangyzen.net> <60595DA5-A339-4FA5-99FD-FC25591A6BDA@msqr.us> <20131107230834.GS59496@kib.kiev.ua> <FE60BFFA-366F-4033-B033-E1D950CCCA3E@msqr.us>

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

--fmcGzDfEcWyGcUoQ
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Nov 08, 2013 at 05:16:13PM +1300, Matt Magoffin wrote:
> On Nov 8, 2013, at 12:08 PM, Konstantin Belousov <kostikbel@gmail.com> wr=
ote:
>=20
> >> From a 9.2 amd64 virtual machine, this is what I get:
> >>=20
> >> (kgdb) list *VOP_ADD_WRITECOUNT_APV+0x78
> >> 0xffffffff80d96898 is in VOP_ADD_WRITECOUNT_APV (vnode_if.c:4236).
> >> 4231	in vnode_if.c
> >>=20
> >> Does this help?
> >>=20
> > I need the code around this line; corresponding file is generated, I
> > do not have it.
>=20
> I generated vnode_if.c using this command:
>=20
> /usr/bin/awk -f /usr/src/sys/tools/vnode_if.awk /usr/src/sys/kern/vnode_i=
f.src -c
>=20
> I just inferred that command, I do not know if that is correct. Here are =
lines 4219-4264 from the file:
>=20
> int
> VOP_ADD_WRITECOUNT_APV(struct vop_vector *vop, struct vop_add_writecount_=
args *a)
> {
> 	int rc;
>=20
> 	VNASSERT(a->a_gen.a_desc =3D=3D &vop_add_writecount_desc, a->a_vp,
> 	    ("Wrong a_desc in vop_add_writecount(%p, %p)", a->a_vp, a));
> 	while(vop !=3D NULL && \
> 	    vop->vop_add_writecount =3D=3D NULL && vop->vop_bypass =3D=3D NULL)
> 		vop =3D vop->vop_default;
> 	VNASSERT(vop !=3D NULL, a->a_vp, ("No vop_add_writecount(%p, %p)", a->a_=
vp, a));
> 	SDT_PROBE(vfs, vop, vop_add_writecount, entry, a->a_vp, a, 0, 0, 0);
>=20
> 	ASSERT_VI_UNLOCKED(a->a_vp, "VOP_ADD_WRITECOUNT");
> 	ASSERT_VOP_ELOCKED(a->a_vp, "VOP_ADD_WRITECOUNT");
> 	VFS_PROLOGUE(a->a_vp->v_mount);
So which line is 4236 ? That one ^^^^ ?

If yes, I absolutely need you to obtain core dump and than print *a
and *(a->a_vp) from the debugger, to make further progress.

> 	if (vop->vop_add_writecount !=3D NULL)
> 		rc =3D vop->vop_add_writecount(a);
But, if I mis-counted and the line 4236 is that one ^^^^, than together
with the panic message
panic: vm_fault: fault on nofault entry, addr: ffffff836e0fc000
which suggests that vop_add_writecount not NULL but garbage, I believe
that your issue is stale module, compiled on 9.1 but used on 9.2.

> 	else
> 		rc =3D vop->vop_bypass(&a->a_gen);
> 	VFS_EPILOGUE(a->a_vp->v_mount);
> 	CTR2(KTR_VOP,
> 	    "VOP_ADD_WRITECOUNT(vp 0x%lX, inc %ld)",
> 	    a->a_vp, a->a_inc);
> 	SDT_PROBE(vfs, vop, vop_add_writecount, return, a->a_vp, a, rc, 0, 0);
>=20
> 	if (rc =3D=3D 0) {
> 		ASSERT_VI_UNLOCKED(a->a_vp, "VOP_ADD_WRITECOUNT");
> 		ASSERT_VOP_ELOCKED(a->a_vp, "VOP_ADD_WRITECOUNT");
> 	} else {
> 		ASSERT_VI_UNLOCKED(a->a_vp, "VOP_ADD_WRITECOUNT");
> 		ASSERT_VOP_ELOCKED(a->a_vp, "VOP_ADD_WRITECOUNT");
> 	}
> 	return (rc);
> }
>=20
> struct vnodeop_desc vop_add_writecount_desc =3D {
> 	"vop_add_writecount",
> 	0,
> 	(vop_bypass_t *)VOP_ADD_WRITECOUNT_AP,
> 	vop_add_writecount_vp_offsets,
> 	VDESC_NO_OFFSET,
> 	VDESC_NO_OFFSET,
> 	VDESC_NO_OFFSET,
> 	VDESC_NO_OFFSET,
> };
>=20
> Cheers,
> Matt



--fmcGzDfEcWyGcUoQ
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (FreeBSD)

iQIcBAEBAgAGBQJSfJxBAAoJEJDCuSvBvK1BKi4QAIQ+7TiJZs4CXJIGe4V2H7Gv
n+OpjLf4tvY87MYIWn35UP8bLEc8YWz+KfJY6lC8NMEODriDomHZTBgXwnpLCJT3
evvtKhdUZ+QcButSuqL26+WuWELN3DQt/dDZPMkdj1DISe+G49nmVemqEKizdb5i
fCZ6dIaeKv6JlSIEHEES0leAe4WdWZlMQf7eCJjC7z4HYKJeI1OeEt4xd6YG83ft
TVYNu38qy2kEa9iRwLGn02CGYXD+snTnMTwr39shIxpbCMBWpZRp75/dkbl3MWsK
h662HWWoZg8VXc965DB2XM88GLEIC/QnJ0p/JILKlV9MwyBtsVvbaj96/wOLOPgM
HyTvV+k6eRPpC4ZevKTteuh5rCFZt3gg9braYbnwV+9551sBGhJEDjkRX1GZq+hT
MvQ00WVJU0hL5TdBclKDRB559VYZAQhBqkUJUK2oHJVbckwQG9CgxUHtJVaog5Ro
SgH6kaUUpp5cZpVP2EMHQw1w6jy6fHS7lYehV+OW9G0DskvXXQ9EFrzv3C5N5f2r
/zeqObc4EKmHjHHOGwD0hq+bjaZiU38OCJMgPZMupV+G1IOg2dzTy7Bg+jXhppNl
MBhXc7UAAuCaFUOzn+xb4sQsTykRSJvEYXl9qLyGHk5K8GfoSpw4UvKt8qYNzBZR
V2lppOgJTw9AE9tEeeOU
=wB+A
-----END PGP SIGNATURE-----

--fmcGzDfEcWyGcUoQ--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131108080938.GT59496>