Index: sys/kern/vfs_lookup.c =================================================================== --- sys/kern/vfs_lookup.c (revisione 238701) +++ sys/kern/vfs_lookup.c (copia locale) @@ -202,6 +202,7 @@ namei(struct nameidata *ndp) #ifdef DIAGNOSTIC cnp->cn_pnbuf = NULL; cnp->cn_nameptr = NULL; + MPASS(error != 0 || cnp->cn_namelen == 0); #endif ndp->ni_vp = NULL; return (error); @@ -260,6 +261,7 @@ namei(struct nameidata *ndp) #ifdef DIAGNOSTIC cnp->cn_pnbuf = NULL; cnp->cn_nameptr = NULL; + MPASS(error != 0 || cnp->cn_namelen == 0); #endif return (error); } @@ -310,6 +312,7 @@ namei(struct nameidata *ndp) #ifdef DIAGNOSTIC cnp->cn_pnbuf = NULL; cnp->cn_nameptr = NULL; + MPASS(error != 0 || cnp->cn_namelen == 0); #endif SDT_PROBE(vfs, namei, lookup, return, error, NULL, 0, 0, 0); @@ -326,6 +329,7 @@ namei(struct nameidata *ndp) #ifdef DIAGNOSTIC cnp->cn_pnbuf = NULL; cnp->cn_nameptr = NULL; + MPASS(error != 0 || cnp->cn_namelen == 0); #endif } else cnp->cn_flags |= HASBUF; @@ -396,6 +400,7 @@ namei(struct nameidata *ndp) #ifdef DIAGNOSTIC cnp->cn_pnbuf = NULL; cnp->cn_nameptr = NULL; + MPASS(error != 0 || cnp->cn_namelen == 0); #endif vput(ndp->ni_vp); ndp->ni_vp = NULL;