Hi,

I've noticed that ZFS uses:

sys/zfs_znode.h:
        uint_t  z_mapcnt;       /* number of memory maps to file */

while UFS (and the others) do:

sys/fs/ufs_inode.h:
        long    i_mapcnt;       /* mappings to file pages */

Now for UFS (and others), the count of mapped pages on a file can
be 32bit since the filesize there is always small enough, so the
use of "long" is overkill there. You can't mmap a > 1TB file on
UFS, and that's only 128M 8kB pages.

But:
Why is it appropriate to use a 32bit counter on ZFS ? 4G pages
are no more than 32TB on SPARC (16TB on AMD64), far below the
maximum filesize on ZFS, and still significantly below the VA
space on either sparcv9/amd64.

Does this mean ZFS has a bug there ?

Thx,
FrankH.

_______________________________________________
ufs-discuss mailing list
[email protected]

Reply via email to