Messages in this thread | | | From | "Stephen C. Tweedie" <> | Date | Thu, 27 Jan 2000 19:14:22 +0000 (GMT) | Subject | Re: files > 2GB |
| |
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/
| |