On Mon, 2021-06-07 at 15:02 +1000, David Gibson wrote:
On Fri, Apr 30, 2021 at 11:36:06AM -0300, Leonardo Bras wrote:
quoted
Because hypervisors may need to create HPTs without knowing the
guest
page size, the smallest used page-size (4k) may be chosen,
resulting in
a HPT that is possibly bigger than needed.
On a guest with bigger page-sizes, the amount of entries for HTP
may be
too high, causing the guest to ask for a HPT resize-down on the
first
hotplug.
This becomes a problem when HPT resize-down fails, and causes the
HPT resize to be performed on every LMB added, until HPT size is
compatible to guest memory size, causing a major slowdown.
So, avoiding HPT resizing-down on hot-add significantly improves
memory
hotplug times.
As an example, hotplugging 256GB on a 129GB guest took 710s without
this
patch, and 21s after applied.
Signed-off-by: Leonardo Bras <redacted>
Sorry it's taken me so long to look at these
I don't love the extra statefulness that the 'shrinking' parameter
adds, but I can't see an elegant way to avoid it, so:
Reviewed-by: David Gibson <redacted>
np, thanks for reviewing!
Best regards,
Leonardo Bras