Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 2 Apr 2010 11:53:09 -0700
From:      Artem Belevich <fbsdlist@src.cx>
To:        FreeBSD Hackers <freebsd-hackers@freebsd.org>
Subject:   write(2) size is limited by INT_MAX on amd64 -- is it a bug or a  feature?
Message-ID:  <v2qed91d4a81004021153ka44d4bc8k5483145ba887f587@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi,

I've ran into a problem on 8-stable/amd64 today. Basically any attempt
to pass 2GB chunk  of data to write(2) returns EINVAL. It looks like
we're limiting amount of data to be written to INT_MAX which looks
rather restrictive on LP64 platforms. NetBSD/OpenBSD do use SSIZE_MAX
which does seem to be the limit specified by POSIX, if I'm looking at
the correct specification here
http://www.opengroup.org/onlinepubs/000095399/functions/write.html

A bit of googling shows that this issue was also recently mentioned on
svn-src-all:
http://www.mail-archive.com/svn-src-all@freebsd.org/msg18266.html

Was the INT_MAX limit in FreeBSD imposed intentionally, even on 64-bit
platforms or is it a bug that needs fixing?

Thanks,
--Artem



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?v2qed91d4a81004021153ka44d4bc8k5483145ba887f587>