[LinuxBIOS] FILO issues

Peter Stuge stuge-linuxbios at cdy.org
Sat Apr 7 20:21:22 CEST 2007


On Sat, Apr 07, 2007 at 07:44:00PM +0200, Stefan Reinauer wrote:
> * Peter Stuge <stuge-linuxbios at cdy.org> [070407 06:04]:
> > In blockdev.c unsigned long is used for the sector, this will
> > overflow when a kernel is beyond 2TB on a drive. The IDE driver
> > users sector_t which is typedef:ed to uint64_t or unsigned long long.
> > Maybe GRUB2 will be here before this becomes a problem.
>  
> There is no portable 128 bit type on 32bit platforms. Except you
> use a
> struct {
>  u64 low;
>  u64 high;
> };

Oh, no, what I meant is that parts of FILO are using a 32 bit
variable for sector values.


> I think the problem is on x86 you need all registers at once to
> describe a single 128bit value ;)

Hehe. Yeah. But you can cheat and use MMX or SSE. :)


//Peter




More information about the coreboot mailing list