Fix 32-bit MAXOFFSET_T definition
authorBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 22 Apr 2011 23:21:26 +0000 (16:21 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 22 Apr 2011 23:21:26 +0000 (16:21 -0700)
Having MAXOFFSET_T defined to 0x7fffffffl was artificially limiting
the maximum file size on 32-bit systems.  In reality MAXOFFSET_T is
used when working with 'long long' types and as such we now define
it as LLONG_MAX.  This resolves the 2GB file size limit for files
and additionally allows zvols greater than 2GB on 32-bit systems.

Closes #136
Closes #81

lib/libspl/include/sys/param.h

index d9e7782..3efb56e 100644 (file)
 #define DEV_BSIZE  512
 #define DEV_BSHIFT 9     /* log2(DEV_BSIZE) */
 
-#define MAXNAMELEN 256
-
-#ifdef _LP64
-#define MAXOFFSET_T 0x7fffffffffffffffl
-#else
-#define MAXOFFSET_T 0x7fffffffl
-#endif
+#define MAXNAMELEN      256
+#define MAXOFFSET_T     LLONG_MAX
 
 #define UID_NOBODY      60001   /* user ID no body */
 #define GID_NOBODY      UID_NOBODY