From a26a6bf470bc20086af1761eea20f9d90cf6b6fa Mon Sep 17 00:00:00 2001 From: "K. Y. Srinivasan" Date: Fri, 25 Jan 2013 16:18:47 -0800 Subject: [PATCH] --- yaml --- r: 355055 b: refs/heads/master c: 0731572b6c529f8e8a320dc4df6d67d9a595ecf3 h: refs/heads/master i: 355053: be5901a703af5d09a2f74fb542ed00c3ec4e27d1 355051: e0de03d4dcdaa3813ffe2c7f534d9b980c88e46f 355047: 937900d3d740f460b260a50bcdd047c4f617c49c 355039: 2756279f67606aa4666a6d6d10fc494c4b8885ce v: v3 --- [refs] | 2 +- trunk/drivers/hv/hv_balloon.c | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index e10f8e7459e6..1fc6539fe32f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 06a8f1feb9e82e5b66f781ba3e39055e3f89a641 +refs/heads/master: 0731572b6c529f8e8a320dc4df6d67d9a595ecf3 diff --git a/trunk/drivers/hv/hv_balloon.c b/trunk/drivers/hv/hv_balloon.c index ce6f984535ec..32a96f164dc8 100644 --- a/trunk/drivers/hv/hv_balloon.c +++ b/trunk/drivers/hv/hv_balloon.c @@ -529,15 +529,21 @@ static void process_info(struct hv_dynmem_device *dm, struct dm_info_msg *msg) static void post_status(struct hv_dynmem_device *dm) { struct dm_status status; + struct sysinfo val; - + si_meminfo(&val); memset(&status, 0, sizeof(struct dm_status)); status.hdr.type = DM_STATUS_REPORT; status.hdr.size = sizeof(struct dm_status); status.hdr.trans_id = atomic_inc_return(&trans_id); - - status.num_committed = vm_memory_committed(); + /* + * The host expects the guest to report free memory. + * Further, the host expects the pressure information to + * include the ballooned out pages. + */ + status.num_avail = val.freeram; + status.num_committed = vm_memory_committed() + dm->num_pages_ballooned; vmbus_sendpacket(dm->dev->channel, &status, sizeof(struct dm_status),