Messages in this thread | | | Subject | Re: Why NFS enforce size limit on readdirplus | From | Trond Myklebust <> | Date | Fri, 02 Jun 2006 14:44:55 -0400 |
| |
On Fri, 2006-06-02 at 01:54 -0400, Xin Zhao wrote: > Maybe this question is a little dumb. > > I am wondering why in NFS readdirplus can be used only for directories > of size less than 8*PAGE_SIZE, otherwise, it will switch to use normal > readdir? > > In nfs/inode.c, I noticed the following code: > if (nfs_server_capable(inode, NFS_CAP_READDIRPLUS) && > fattr->size <= NFS_LIMIT_READDIRPLUS) > set_bit(NFS_INO_ADVISE_RDPLUS, &NFS_FLAGS(inode)); > > Can someone kindly explain the reason?
Efficiency: READDIRPLUS requires a lookup for each entry. If there are too many entries, the whole thing gets really really slow...
Cheers, Trond
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |