On Mon, Apr 27, 2009 at 10:30:45AM +0200, Michael wrote:
> Hi,
>
> when trying to create a mfs file system I can never get is larger than 1
> GB even though I actually got >6 GB of free RAM.
>
> Depening on how close I get to the 1 GB barrier I see the following
> error messages. The last attempt was successfull, but that doesn't mean
> that,l even though it was successfull now, it will be again... the limit
> seems to be varying.
>
> # mount_mfs -s 2097000 swap /mnt && umount /mnt
> mount_mfs: mmap: Cannot allocate memory
>
> # mount_mfs -s 2096900 swap /mnt && umount /mnt
> mount_mfs: calloc failed
>
> # mount_mfs -s 2096833 swap /mnt && umount /mnt
> mount_mfs: cannot allocate I/O buffer
>
> # mount_mfs -s 2096832 swap /mnt && umount /mnt
>
> ... wait some time ...
>
> # mount_mfs -s 3096832 swap /mnt && umount /mnt
> mount_mfs: mmap: Cannot allocate memory
>
>
> The manpage of mfs says the following:
>
> Note however that for mount_mfs the practical limit is based on datasize
> in login.conf(5), and ultimately depends on the per-arch MAXDSIZ limit.
>
> Well, the datasize is set ti infinity for root (daemon) so it must be
> MAXDSIZ that is set in /usr/src/sys/arch/sparc64/include/vmparam.h and
> describes as values in byte.
>
> for 64 bit
> #define MAXDSIZ (512L*1024*1024*1024) /* max data size */
>
> for 32 bit
> #define MAXDSIZ (1*1024*1024*1024) /* max data size */
>
> What does that 512L for 64 bit mean? However, if I read that correctly,
> I should be able to allocate way more than just ~1 GB of memory for each
> MFS partition?
>
> Is anyone here able to enlighten me? Is ~1 GB the limit or do I miss
> something?
You missed some context. Look at the #if 0 a few lines higher.
-Otto