This is a reworking of readdir in xfs to avoid deadlocks which
happened with nfs v3 clients which exercise the readdirplus code
in the linux nfs v3 server. Having said that, this change is to
the base code and will be executed in all getdents system calls.
Date: Thu Mar 15 15:33:20 PST 2001
Workarea: jen.americas.sgi.com:/src/lord/xfs-linux.2.4
The following file(s) were checked into:
bonnie.engr.sgi.com:/isms/slinx/2.4.x-xfs
Modid: 2.4.x-xfs:slinx:90125a
linux/fs/xfs/xfs_dir2_block.c - 1.19
linux/fs/xfs/xfs_dir.c - 1.130
linux/fs/xfs/xfs_dir2_sf.c - 1.21
linux/fs/xfs/xfs_dir_leaf.c - 1.94
linux/fs/xfs/xfs_dir_leaf.h - 1.31
linux/fs/xfs/xfs_dir2_leaf.c - 1.19
linux/fs/xfs/xfs_dir2.h - 1.8
linux/fs/xfs/xfs_dir2.c - 1.27
- Go back to basically the irix code for readdir, linux stuff is
handled
in the upper layers now.
linux/fs/xfs/linux/xfs_file.c - 1.40
- Change linvfs_readdir to allocate a buffer, call xfs to fill it, and
then call the filldir function on each entry. This is instead of
doing the
filldir deep in the bowels of xfs which causes locking problems.
linux/fs/xfs_support/move.h - 1.3
- The uio_copy function is gone, no longer needed.
|