linux_dsm_epyc7002/fs/nfs
Bryan Schumaker d1bacf9eb2 NFS: add readdir cache array
This patch adds the readdir cache array and functions to retreive the array
stored on a cache page, clear the array by freeing allocated memory, add an
entry to the array, and search the array for a given cookie.

It then modifies readdir to make use of the new cache array.
With the new cache array method, we no longer need some of this code.

Finally, nfs_llseek_dir() will set file->f_pos to a value greater than 0 and
desc->dir_cookie to zero.  When we see this, readdir needs to find the file
at position file->f_pos from the start of the directory.

Signed-off-by: Bryan Schumaker <bjschuma@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2010-10-23 15:27:30 -04:00
..
cache_lib.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
cache_lib.h NFS: Add a dns resolver for use with NFSv4 referrals and migration 2009-08-19 18:22:15 -04:00
callback_proc.c NFS: Fix the locking in nfs4_callback_getattr 2010-08-06 13:41:39 -04:00
callback_xdr.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
callback.c param: use ops in struct kernel_param, rather than get and set fns directly 2010-08-11 23:04:13 +09:30
callback.h nfs41: implement cb_recall_slot 2010-02-10 08:30:59 -05:00
client.c nfs: introduce mount option '-olocal_lock' to make locks local 2010-09-23 08:55:58 -04:00
delegation.c NFS: Clean up the callers of nfs_wb_all() 2010-08-03 22:06:40 -04:00
delegation.h NFSv41: Fix nfs_async_inode_return_delegation() ugliness 2010-06-22 13:24:02 -04:00
dir.c NFS: add readdir cache array 2010-10-23 15:27:30 -04:00
direct.c NFSv4: Ensure that we track the NFSv4 lock state in read/write requests. 2010-07-30 14:41:56 -04:00
dns_resolve.c NFS: Use kernel DNS resolver [ver #2] 2010-08-11 17:11:28 +00:00
dns_resolve.h NFS: Use kernel DNS resolver [ver #2] 2010-08-11 17:11:28 +00:00
file.c NFS: Don't SIGBUS if nfs_vm_page_mkwrite races with a cache invalidation 2010-10-19 19:37:54 -04:00
fscache-index.c NFS: Add read context retention for FS-Cache to call back with 2009-04-03 16:42:44 +01:00
fscache.c NFS: Squelch compiler warning 2010-05-14 15:09:31 -04:00
fscache.h NFS: Propagate 'fsc' mount option through automounts 2009-09-23 14:36:39 -04:00
getroot.c nfs4 use mandatory attribute file type in nfs4_get_root 2010-06-22 13:17:43 -04:00
idmap.c NFS: new idmapper 2010-10-07 18:48:49 -04:00
inode.c NFS: new idmapper 2010-10-07 18:48:49 -04:00
internal.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2010-08-10 11:26:52 -07:00
iostat.h NFS: Squelch compiler warning in nfs_add_server_stats() 2010-05-14 15:09:31 -04:00
Kconfig NFS: new idmapper 2010-10-07 18:48:49 -04:00
Makefile NFS: Add a dns resolver for use with NFSv4 referrals and migration 2009-08-19 18:22:15 -04:00
mount_clnt.c NFS: Remove \t from mount debugging message 2010-09-17 10:54:37 -04:00
namespace.c NFS: Reduce the stack footprint of nfs_follow_mountpoint() 2010-05-14 15:09:22 -04:00
nfs2xdr.c SUNRPC: Refactor logic to NUL-terminate strings in pages 2010-09-21 16:55:48 -04:00
nfs3acl.c NFS: Reduce stack footprint of nfs3_proc_getacl() and nfs3_proc_setacl() 2010-05-14 15:09:28 -04:00
nfs3proc.c NFS: Fix NFSv3 debugging messages in fs/nfs/nfs3proc.c 2010-09-21 16:55:47 -04:00
nfs3xdr.c SUNRPC: Refactor logic to NUL-terminate strings in pages 2010-09-21 16:55:48 -04:00
nfs4_fs.h NFS: Add an 'open_context' element to struct nfs_rpc_ops 2010-09-17 10:56:51 -04:00
nfs4namespace.c NFSv4: Fix up the documentation for nfs_do_refmount 2010-05-14 15:09:29 -04:00
nfs4proc.c NFSv4: The state manager must ignore EKEYEXPIRED. 2010-10-23 15:27:28 -04:00
nfs4renewd.c NFSv41: Convert the various reboot recovery ops etc to minor version ops 2010-06-22 13:24:02 -04:00
nfs4state.c nfs: include ratelimit.h, fix nfs4state build error 2010-10-23 15:27:29 -04:00
nfs4xdr.c NFS: new idmapper 2010-10-07 18:48:49 -04:00
nfsroot.c NFS: Allow NFSROOT debugging messages to be enabled dynamically 2010-09-17 10:54:37 -04:00
pagelist.c NFSv4: Ensure that we track the NFSv4 lock state in read/write requests. 2010-07-30 14:41:56 -04:00
proc.c nfs: make sillyrename an async operation 2010-09-17 17:31:57 -04:00
read.c NFSv4.1: keep seq_res.sr_slot as pointer rather than an index 2010-09-24 09:17:01 -04:00
super.c nfs: show "local_lock" mount option in /proc/mounts 2010-09-23 14:26:48 -04:00
symlink.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
sysctl.c NFS: new idmapper 2010-10-07 18:48:49 -04:00
unlink.c NFSv4.1: keep seq_res.sr_slot as pointer rather than an index 2010-09-24 09:17:01 -04:00
write.c NFS: don't use FLUSH_SYNC on WB_SYNC_NONE COMMIT calls (try #2) 2010-09-29 14:42:30 -04:00