[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190211120650.GA74879@gmail.com>
Date: Mon, 11 Feb 2019 13:06:50 +0100
From: Ingo Molnar <mingo@...nel.org>
To: Juergen Gross <jgross@...e.com>
Cc: linux-kernel@...r.kernel.org, xen-devel@...ts.xenproject.org,
x86@...nel.org, linux-mm@...ck.org, boris.ostrovsky@...cle.com,
sstabellini@...nel.org, hpa@...or.com, tglx@...utronix.de,
mingo@...hat.com, bp@...en8.de
Subject: Re: [PATCH v2 1/2] x86: respect memory size limiting via mem=
parameter
* Juergen Gross <jgross@...e.com> wrote:
> When limiting memory size via kernel parameter "mem=" this should be
> respected even in case of memory made accessible via a PCI card.
>
> Today this kind of memory won't be made usable in initial memory
> setup as the memory won't be visible in E820 map, but it might be
> added when adding PCI devices due to corresponding ACPI table entries.
>
> Not respecting "mem=" can be corrected by adding a global max_mem_size
> variable set by parse_memopt() which will result in rejecting adding
> memory areas resulting in a memory size above the allowed limit.
So historically 'mem=xxxM' was a way to quickly limit RAM.
If PCI devices had physical mmio memory areas above this range, we'd
still expect them to work - the option was really only meant to limit
RAM.
So I'm wondering what the new logic is here - why should an iomem
resource from a PCI device be ignored? It's a completely separate area
that might or might not be enumerated in the e820 table - the only
requirement we have here I think is that it not overlap RAM areas or each
other (obviously).
So if I understood this new restriction you want mem= to imply, devices
would start failing to initialize on bare metal when mem= is used?
Thanks,
Ingo
Powered by blists - more mailing lists