Re: [PATCH v4 0/4] MIPS: Modify mem= and memmap= parameter

Maciej W. Rozycki
2022-03-05T19:21:19Z

On Sat, 5 Mar 2022, Mike Rapoport wrote:

> > > For example I have an x86 system that Linux does not how to interrogate
> > > for RAM beyond 64MiB, so I do use `memmap=128M@0' (for legacy reasons the
> > > x86 platform has a special exception to always exclude area between 640K
> > > and 1M from being used even if not explicitly specified, but we do not
> > > have a need for such legacy such legacy concerns with the MIPS port). I
> > > consider it an interim measure however until the kernel has been fixed.
> > >
> > > Maciej
> > >
> >
> > Hi Mike, Thomas and Maciej,
> >
> > Thank you very much for your feedbacks and discussions.
> >
> > To be frank, I think mem= and memmap= are used for debugging and testing
> > in most cases, the intention of this patchset is to refactor the related
> > code to make them work well on mips.
>
> mem= works fine on mips and there is no need to change it.
>
> If you must supply complex memory layout on the command line, consider
> implementing support for memmap=exact and multiple memmap= parameters on
> the kernel command line, like x86 does.

There's nothing to implement as the MIPS port has supported arbitrary
memory maps since Dec 11th, 2000; that's almost 22 years now. C.f.:
<https://lore.kernel.org/linux-mips/Pine.GSO.3.96.1000814133957.7256S-100000@delta.ds2.pg.gda.pl/>,
<https://git.kernel.org/pub/scm/linux/kernel/git/ralf/linux.git/commit/?id=97b7ae4257ef>.

Sadly commit a09fc446fb6d ("[MIPS] setup.c: use early_param() for early
command line parsing") removed last pieces of inline documentation; I
don't know why things like that get approved, but neither I can take
responsibility.

Also to say (in said commit):

"There's no point to rewrite some logic to parse command line
to pass initrd parameters or to declare a user memory area.
We could use instead parse_early_param() that does the same
thing."

is IMHO unfair given that the "rewrite" was there in place almost six
years before `parse_early_param' even started to exist! Why do people
assume things have always been like they see them at the time they look?

Maciej