Commit eb761d6521c3 ("mm: parallelize deferred struct page initialization
within each node") the code "++zone" in follow code:
/* Sanity check that the next zone really is unpopulated */
WARN_ON(++zid < MAX_NR_ZONES && populated_zone(++zone));
VM_BUG_ON(nr_init != nr_free);
zone->managed_pages += nr_free;
makes the managed_pages statistics of the current zone incorrect
and the zone may have out-of-bounds memory when
CONFIG_DEFERRED_STRUCT_PAGE_INIT=y, causing the Virtual machine
system startup to fail when the Virtual machine system current
allocated memory is set to half of the Virtual machine
maximum memory using virt-manager tool
Fix it by putting the code “zone->managed_pages += nr_free;”
before “++zone” code
Fixes: eb761d6521c3 ("mm: parallelize deferred struct page initialization
within each node")
Hey gatieme, Welcome to openEuler Community.
All of the projects in openEuler Community are maintained by @openeuler-ci-bot .
That means the developers can comment below every pull request or issue to trigger Bot Commands.
Please follow instructions at https://gitee.com/openeuler/community/blob/master/en/sig-infrastructure/command.md to find the details.
Sign in to comment