[rfc] 64-bit inode numbers
Gleb Kurtsou
gleb.kurtsou at gmail.com
Wed Dec 1 09:12:19 UTC 2010
Hi,
I've been working on adding support for 64 bit ino_t and 32 bit nlink_t.
I have a patchset which is still work in progress, but I wasn't able to
find time to continue the project for a month already.
Notes:
* Keep using 32 bit inodes in UFS and UFS boot code: UFS is a critical
component and switching it to 64bit ino_t won't improve anything
* Don't use nlink_t in UFS on-disk structs, introduce ufs_ino_t
* Deprecate incomplete set of NetBSD emulation nstat* syscalls. Remove
COMPAT_FREEBSD32 support which was never functional, mark as COMPAT8
* Implement both kernel level and libc compatibility shims, support
COMPAT_FREEBSD32
* Add d_off (now unused) to struct dirent to facilitate removing cookies
argument from VOP_READDIR. (both OpenSolaris and Linux do the same)
* Libc compatibility shims for struct dirent users
Tar archive of individual patches to make review easier. First several
patches are bug fixes and can be commited as they are:
https://github.com/downloads/glk/freebsd-ino64/freebsd-ino64-patch.tgz
The same but as a single patch:
https://github.com/downloads/glk/freebsd-ino64/freebsd-ino64.big.patch.gz
Patches are against recent CURRENT: svn r215808.
Code is also hosted on gitorious:
http://gitorious.org/~glk/glk-freebsd-ino64
Thanks,
Gleb.
More information about the freebsd-fs
mailing list