On Wed 2014-10-08 14:08:45, Suriyan Ramasami wrote: > On Wed, Oct 8, 2014 at 1:35 PM, Pavel Machek <pa...@denx.de> wrote: > > On Wed 2014-10-08 13:23:48, Suriyan Ramasami wrote: > >> The commands fatls/ext4ls give -ve values when dealing with files > 2GB. > >> The commands fatsize/ext4size do not update the variable filesize for > >> these files. > >> > >> To deal with this, the functions *_size have been modified to take a second > >> parameter of type "* off_t" which is then populated. The return value of > >> the > >> *_size function is then only used to determine error conditions. > > > > Would not it be better to simply change return type of affected > > functions to off_t? > > > > (If off_t is unsigned, invent signed off_t. It is still nicer than > > extra parameter.) > >> > > off_t is 32 bits in 32 bit architectures. So, signed or unsigned it > shall always have a case where it will be impossible to detect a valid > file size vs an error condition, right? > For example if we return 0xFFFFFFFF, is that an error condition or the > actual file size? > Another approach would be to make the return value off64_t, but then > in sandbox cases we will hit the same issue of differentiating a valid > file size vs an error condition (although we possibly would never have > such a huge file)
I'd just make it off64_t. Because otherwise you fixed files in 2GB..4GB range, but still have problems for >4GB files. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot