vfs-scale, d_revalidate from nfsd

From: J. R. Okajima
Date: Thu Jan 13 2011 - 09:04:05 EST



NFSD calls filesystem's ->d_revalidate() with the parameter nd == NULL.
So every
if (nd->flags & LOOKUP_RCU)
return -ECHILD;
code which was added to ->d_revalidate() of FS which supports NFS
exporting will crash.

If we rewrite it as
if (nd && (nd->flags & LOOKUP_RCU))
return -ECHILD;
the problem may not occur.
But I am not sure whether lookup_one_len() call in NFSD support rcu-walk.


J. R. Okajima
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/