On 10/01/2019 19:21, Johannes Thoma wrote:
I will try that, in theory it should work then. Does it make sense to support loading images > 2GB in 32-bit version also? One has to change some size_t declarations to uint64_t then (it almost works for me), if I keep on trying I think that I can do that (it currently boots a 32GB image in a 32-bit test version).
From memory: the issue in 32-bit builds is that format_decimal() in core/vsprintf.c will handle only 32-bit (signed) integers and so the HTTP range request headers cannot be constructed correctly for >2GB.
This limitation in format_decimal() is originally intended to allow for the binary to be kept as small as possible, by avoiding the need to link in the 64-bit division code. This is arguably obsolete nowadays.
Michael _______________________________________________ ipxe-devel mailing list ipxe-devel@lists.ipxe.org https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel