> > 32 bit Solaris can use at most 2^31 as disk address; a disk block is > > 512bytes, so in total it can address 2^40 bytes. > > > > A SMI label found in Solaris 10 (update 8?) and OpenSolaris has been > > enhanced > > and can address 2TB but only on a 64 bit system. > > is what the problem is. so 32-bit zfs cannot use disks larger than > 1(.09951)tb regardless of whether it's for the root pool or not.
I think this isn't a problem with the 32-bit zfs module, but with all of the 32-bit Solaris kernel. The daddr_t type is used in a *lot* of places, and is defined as a signed 32-bit integer ("long") in the 32-bit kernel. It seems that there already are 64-bit disk address types defined, diskaddr_t and lldaddr_t (that could be used in the 32-bit kernel, too), but a lot of the existing kernel code doesn't use them. And redefining the existing daddr_t type to 64-bit "long long" for the 32-bit kernel won't work, because it would break binary compatibility. -- This message posted from opensolaris.org _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss