From: "H. Peter Anvin" <hpa@zytor.com>
To: Andrea Mazzoleni <amadvance@users.sourceforge.net>
Cc: linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [syslinux] SYSLINUX 2.09-pre11
Date: Sun, 08 Feb 2004 10:58:40 -0800 [thread overview]
Message-ID: <402686E0.3040806@zytor.com> (raw)
In-Reply-To: <20040208142021.GA494@elitel.biz>
Andrea Mazzoleni wrote:
> On 02/05, H. Peter Anvin wrote:
>
>>Please test it out. Some time over the weekend I'm going to do a sweep
>>for bug fixes I've forgotten and otherwise I'd like to release 2.09 next
>>week.
>
> Please consider to compare the behaviour of the SYSLINUX mem= option with
> the Linux kernel behaviour. I've rechecked it a lot of time, and I'm sure that
> there is a difference.
>
> In the kernel function parse_cmdline_early() in the file arch/i386/kernel/setup.c
> the "mem=" option is used to only reducing (and never expanding) the memory map
> calling the limit_regions() function. This happen also if E820 is not available.
>
> Instead, SYSLINUX uses the "mem=" option also for expanding the memory map
> over the value read from the BIOS.
>
> Please note that this is only true for the simplest format of the "mem=" option
> like "mem=512M". Other formats like "mem=512M@512M" have different behaviours
> because add_memory_region() is called instead of limit_regions().
>
> Also note that if E820 is not present, a fake E820 memory map is created
> in the setup_memory_regions() kernel function in arch/i386/kernel/setup.c.
> This is the fake memory map on which the limit_regions() function operates.
> That exactly happen is that copy_e820_map() returns -1 because "nr_map" is
> set to 0 in the arch/i386/boot/setup.S file if E820 is not present.
>
This is unfixable, because someone fucked up and re-used a
well-established protocol-defined option for another purpose. E.g.
"mem=512M" has meant exactly that (and was/is widely used to specify
that memory should be added up to 512M).
Since the behaviour you describe is kernel-version-dependent, IT CANNOT
BE FIXED IN THE BOOTLOADER, and whomever thought it was a good idea to
mess with mem= should be taken out and shot.
-hpa
parent reply other threads:[~2004-02-08 18:58 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <20040208142021.GA494@elitel.biz>]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=402686E0.3040806@zytor.com \
--to=hpa@zytor.com \
--cc=amadvance@users.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®