Re: recent head having significantly less "avail memory"

From: Guido Falsi via freebsd-current <freebsd-current_at_freebsd.org>
Date: Mon, 13 Sep 2021 22:25:55 UTC
On 14/09/21 00:12, Konstantin Belousov wrote:
> On Mon, Sep 13, 2021 at 10:07:46PM +0200, Guido Falsi wrote:
>> On 13/09/21 19:08, Konstantin Belousov wrote:
>>> On Mon, Sep 13, 2021 at 02:59:25PM +0200, Guido Falsi via freebsd-current wrote:
>>>> Hi,
>>>>
>>>> I updated head recently and today I noticed a difference which looks wrong.
>>>>
>>>> At boodt the new head shows signifcantly less avail memory than before,
>>>> around 3 GiB less.
>>>>
>>>> I moved from commit 71fbc6faed6 [1] where I got:
>>>>
>>>> Aug 28 22:03:03 marvin kernel: real memory  = 17179869184 (16384 MB)
>>>> Aug 28 22:03:03 marvin kernel: avail memory = 16590352384 (15821 MB)
>>>>
>>>> to commit 7955efd574b [2] where I get:
>>>>
>>>> Sep 13 10:44:40 marvin kernel: real memory  = 17179869184 (16384 MB)
>>>> Sep 13 10:44:40 marvin kernel: avail memory = 13298876416 (12682 MB)
>>>>
>>>> I'm seeing this on multiple machines.
>>>>
>>>> Unluckily bisecting and trying an older loader.efi in sseparate tests did
>>>> not give me any more insight.
>>>>
>>>> The recent changes to efi loader, starting with commit 6032b6ba9596 [3] look
>>>> like a possible trigger to this, but I have been unable to confirm it.
>>>>
>>>> Any suggesstions on how to proceed to debug thiss? ANy idea what a fix could
>>>> be?
>>>
>>> Is this UEFI or bios boot?
>>> Provide verbose dmesg for old and new boots on the same machine.
>>> For UEFI boot, show output of 'sysctl machdep.efi_map', again for old
>>> and new boots.
>>>
>>
>> I shared the data you request here:
>>
>> https://www.madpilot.net/cloud/s/ENW5zF7jfmrmFeG
> 
> Thanks.
> 
> If you do on the loader prompt for the new (AKA bad) kernel
> 	copy_staging enable
> and then boot, does the report of avail memory becomes good?
> 

Yes, it works as expected, that is reports the amount of memory I expect:

Sep 14 00:24:50 marvin kernel: real memory  = 17179869184 (16384 MB)
Sep 14 00:24:50 marvin kernel: avail memory = 16590356480 (15821 MB)

-- 
Guido Falsi <mad@madpilot.net>