Re: Linux 5.9-rc7 / VmallocTotal wrongly reported
From: Linus Torvalds
Date: Thu Oct 01 2020 - 15:20:19 EST
Adding Vlastimil, Roman and the kernel mailing list to the cc.
Vlastimil, Roman - this looks like a slab regression. And while others
have touched slab in this merge window, you guys did so more than
most.. Comments?
On Wed, Sep 30, 2020 at 11:55 PM Bastian Bittorf <bb@xxxxxx> wrote:
>
> Since 5.9-rc1 i can see false values, booting with qemu (128mb RAM):
>
> / # free
> total used free shared buff/cache available
> Mem: 122176 18014398506028288 114848 0 3461024 3568096
that looks like a negative 64-bit number shifted down by 10 bits (bytes -> kB).
> / # cat /proc/meminfo | grep ^V
> VmallocTotal: 34359738367 kB
.. but this part is normal. VMALLOC_TOTAL is the VM space for vmalloc
areas, and it's large on a 64-bit machine.
And afaik, it hasn't changed in a long time.
So I think there's something else confusing 'free'.
I think it's this:
> / # cat /proc/meminfo
> MemAvailable: 3617184 kB
..
> Slab: 10321920 kB
> SReclaimable: 3506176 kB
> SUnreclaim: 6815744 kB
because those slab reclaimable/unreclaimable numbers look completely
bogus. You have more unreclaimable slab space than you have memory.
Hmm. I'm not seeing anything similar. And your config looks sane, with
the main difference I see wrt SLAB being that you have
# CONFIG_SLAB_MERGE_DEFAULT is not set
but there's nothing wrong with that either.
It would be lovely if you could bisect it, but maybe Vlastimil or
Roman will go "Ahh, obviously.."
Linus