Re: files > 2GB

From: Stephen C. Tweedie (sct@redhat.com)
Date: Thu Jan 27 2000 - 14:14:22 EST


Hi,

On Tue, 25 Jan 2000 12:11:40 +0000 (GMT), Riley Williams
<rhw@MemAlpha.CX> said:

>>> My suggestion would be to use the following rule set:

>> What are those rules for?

> They specify how the KERNEL should respond when it finds itself
> running a syscall that needs to return a 32-bit off_t but has a value
> too big to fit in one.

That is already perfectly well defined in the LFS standard. If you open
a file with a 32-bit off_t and the file is larger than 2G, you get
EOVERFLOW. Similarly, extending a fd opened with 32-bit off_t past the
2G boundary returns the same error.

> Providing that's been done for ALL of the utilities on the system,
> this discussion is irrelevant as the proposed scenario could not
> arise. However, if there's just ONE utility that hasn't been compiled
> with that flag (including those supplied in binary-only form) then
> there is the possibility of it happenning.

The worst that will happen is that such a utility will fail with a
clean, well-defined error code.

> Q. What should the kernel do when, in the middle of executing a
> function that returns a 32-bit off_t value,
> My reply can be summarised as follows:
> A. If the value to be returned fits into the 32-bit off_t value,
> return that, otherwise return -ETOOBIG

Please read the standard before continuing with this thread, it already
deals with these issues.

--Stephen

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Jan 31 2000 - 21:00:18 EST