[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#66009: 32 Mb, but "Sorry, not enough memory" (caused by new kernels sysinfo syscall)



On Thu Jun 22, 2000 at 02:47:30AM +0200, Goswin Brederlow wrote:
> >>>>> " " == Erik Andersen <andersen@codepoet.org> writes:
> 
>      > On Wed Jun 21, 2000 at 11:13:17AM +0200, Debian Linux User
>      > wrote:
>     >> Package: boot-floppies Version: N/A; Severity: normal
>     >> 
>     >> The problem is that sysinfo has changed with recent kernels:
> 
>      > Yup.  See:
>      > http://kernelnotes.org/lnxlists/linux-kernel/lk_0006_01/msg00619.html
> 
>      > I am still fighting it out with the kernel gods, since I think
>      > binary incompatable changes to the kernel are a bad thing...
>      > So far, Alan does not agree.
> 
>      >  -Erik
> 
> Its a bad thing, but its a change between 2.2 and 2.4.
> The old way wasn't good enough, so they needed a new one.
> 
> Maybe the new one should have been called sysinfo2 or the like.

If you read the linux kernel mailing list, I offered to implement a 'sysinfo64'
but was ignored, so I waiting to appeal to Linus when he is back from
vacation...  If I don't win out, then I will adapt busybox accordingly.

> But those people never do the sensible stuff.
> 
> As a workaround I just made busybox print out the warning, wait rather
> long and then continue (after 300 seconds). Maybe that could be done in
> the boot-floppies together with a changed message saying the on
> developer kernels the warning is worng and they can wait 5 minutes and
> then it continues.
> 
> MfG
> 	Goswin
> 
> PS: Of cause thats only ment as a dirty hack.

I can implement a correct solution for the way the kernel currently changed 
right now (not requiring such a hack).  I asked on the boot-floppies mailing 
list and it was agreed to _not_ do anything about this, and that 2.4.x kernels
were not a potato boot-floppy target.

The "correct" way to work around the change is the copy the 2.2.x and the 2.4.x
sysinfo structs into the busybox source tree, giving them unique names.  Then
on boot, call uname to decide which struct to use, and then, if the kernel is
2.4.x also take ito account sysinfo.mem_unit.  This is ugly, but workable.

For the moment, it was agreed to _not_ fix this in the boot floppies for
potato, so I am not touching it unless asked to by Adam Di Carlo (potato boot
floppies team lead).

 -Erik

--
Erik B. Andersen   Web:    http://www.xmission.com/~andersen/ 
                   email:  andersee@debian.org
--This message was written using 73% post-consumer electrons--



Reply to: