-
Notifications
You must be signed in to change notification settings - Fork 373
Support memory hotplugged removable #791
Comments
@BetaXOi correct me if I am wrong but, one thing that is difficult is that even if we request to the OS, sometimes is not possible to remove the slot because memory is fragmented and if it is possible this may be slow because the kernel has to move pages to only one slot before allow hotplug the device. |
I'm not sure which one is better for kata container,hava a look at this paper |
@BetaXOi interesting! I will read it tomorrow morning, seems that we will need some measures to compare this the two options. I was worried that memory can not being hot removed (I've tried was slow and sometimes not possible)but in theory your PR kata-containers/agent#386 will help to this. I will test your patches tomorrow. If you find additional benefits please feel free to add it. Something my first idea was combination of both hotplug when we needed more memory and balloon to reduce the memory. But now seeeing that is possible to hot remove I want to evaluate both. |
With this change, a container is not longer given access to the underlying nvdimm root partition. This is done by explicitly adding the nvdimm root partition to the device cgroup of the container. Fixes kata-containers#791 Signed-off-by: Archana Shinde <[email protected]>
Since kata support hotplug memory by update(#624),it's easy to increase memory but not support to reduce.
I modify some code to support remove the memory hotplugged.
But the feature maybe conflict with udev rules in VM(the kata container image build by
osbuilder
):There is a memory udev rules(/usr/lib/udev/rules.d/40-redhat.rules) in VM already, it will cause the memory hotplugged maybe mapped in ZONE_DMA32 instead of ZONE_Movable.
There is no any memory udev rules in VM, the memory hotplugged will be mapped in ZONE_Movable, so you can remove the memory safly in the case.
no test yet
I have no good solution how to fix the conflict, suggestions anyone?
The text was updated successfully, but these errors were encountered: