Re: mem= handling mess.

From: H. Peter Anvin
Date: Thu May 27 2004 - 16:26:40 EST


Followup to: <40B65B0F.9090106@xxxxxxxxx>
By author: "H. Peter Anvin" <hpa@xxxxxxxxx>
In newsgroup: linux.dev.kernel
>
> Dave Jones wrote:
> > mem=exactmap mem=640k@0 mem=511m@1m
>
> It was changed to memmap= I thought. The command line suggested above, for
> example, WILL NOT boot with any correctly operating boot loader.
> Unfortunately, given its history I suspect GRUB is nowhere in that category.
>

I take that back. It works by pure accident: since "mem=511m@1m"
comes last most bootloaders will read it as "mem=511m" which is safe
given this particular memory map.

In other words, this and stuff like this work by pure accident if they
work at all, which is to some degree even worse -- partially because
it let people be lazy about it and thus the wrong thing was allowed to
simmer, as evidenced above. The "right thing", if there is such a
thing, is probably to detect entries of this form and report an error
to the user ("use memmap= instead.")

The only other sane alternative is worse in terms of incompatibility:
completely throw away the old initrd protocol and design a better
one. The initrd loading protocol is horrible, but it's been around
for a long time and it's not likely to go away.

-hpa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/