Make necessary changes to readdir/getdirentries to support HAMMER. HAMMER
authorMatthew Dillon <dillon@dragonflybsd.org>
Tue, 20 Nov 2007 21:03:51 +0000 (21:03 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Tue, 20 Nov 2007 21:03:51 +0000 (21:03 +0000)
commit84009d9227577df7542f1ac31df12b1e1638ca06
tree93134fe29b3f9b3f0f25e9323b0bd49ebf42888e
parent7fd3e801b5bde70056e6e5cc245333f6a2fee6e2
Make necessary changes to readdir/getdirentries to support HAMMER.  HAMMER
needs to use 64 bit directory cookies.

Adjust libc's DIR structure and change readdir to acquire the directory
position via lseek() instead of using the basep argument to getdirentries().
The basep argument is a long, which is 32 bits on IA32, and it just isn't
wide enough.  The seek position is 64 bits and is wide enough.

Sizeof(DIR) has changed, but hopefully won't cause any major issues since
libc is responsible for allocating it.  The APIs remain the same.

Adjust the VOP_READIR() VFS interface routine to return 64 bit cookies.
All VFSs have been reworked, requiring only minor adjustments.
19 files changed:
include/dirent.h
sys/emulation/linux/i386/linprocfs/linprocfs_vnops.c
sys/kern/vfs_vopops.c
sys/sys/dirent.h
sys/sys/vfsops.h
sys/vfs/fdesc/fdesc_vnops.c
sys/vfs/gnu/ext2fs/ext2_lookup.c
sys/vfs/hpfs/hpfs_vnops.c
sys/vfs/isofs/cd9660/cd9660_vnops.c
sys/vfs/msdosfs/msdosfs_vnops.c
sys/vfs/ntfs/ntfs_vnops.c
sys/vfs/nwfs/nwfs_vnops.c
sys/vfs/portal/portal_vnops.c
sys/vfs/procfs/procfs_vnops.c
sys/vfs/smbfs/smbfs_vnops.c
sys/vfs/udf/udf_vnops.c
sys/vfs/ufs/ufs_vnops.c
sys/vfs/union/union_vnops.c
sys/vfs/userfs/userfs_vnops.c