Re: [PATCH v3] xen/balloon: add late_initcall_sync() for initial ballooning done

From: Juergen Gross
Date: Mon Nov 01 2021 - 03:15:34 EST


On 29.10.21 23:46, Boris Ostrovsky wrote:

On 10/29/21 10:20 AM, Juergen Gross wrote:
--- a/Documentation/ABI/stable/sysfs-devices-system-xen_memory
+++ b/Documentation/ABI/stable/sysfs-devices-system-xen_memory
@@ -84,3 +84,13 @@ Description:
          Control scrubbing pages before returning them to Xen for others domains
          use. Can be set with xen_scrub_pages cmdline
          parameter. Default value controlled with CONFIG_XEN_SCRUB_PAGES_DEFAULT.
+
+What:        /sys/devices/system/xen_memory/xen_memory0/boot_timeout
+Date:        November 2021
+KernelVersion:    5.16
+Contact:    xen-devel@xxxxxxxxxxxxxxxxxxxx
+Description:
+        The time (in seconds) to wait before giving up to boot in case
+        initial ballooning fails to free enough memory. Applies only
+        when running as HVM or PVH guest and started with less memory
+        configured than allowed at max.


How is this going to be used? We only need this during boot.

Of course. Will switch to module_param().

-        state = update_schedule(state);
+        balloon_state = update_schedule(balloon_state);


Now that balloon_state has whole file scope it can probably be updated inside update_schedule().

I can do that.

+    while ((credit = current_credit()) < 0) {
+        if (credit != last_credit) {
+            last_changed = jiffies;
+            last_credit = credit;
+        }
+        if (balloon_state == BP_ECANCELED) {


What about other states? We are really waiting for BP_DONE, aren't we?

Nearly. We are waiting for credit not being negative.

And in case of cancelled we know this won't happen without Xen admin
intervention.


Juergen

Attachment: OpenPGP_0xB0DE9DD628BF132F.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature