LKML Archive on lore.kernel.org help / color / mirror / Atom feed
From: Nadav Amit <namit@vmware.com> To: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Xavier Deguillard <xdeguillard@vmware.com>, <linux-kernel@vger.kernel.org>, Arnd Bergmann <arnd@arndb.de>, Nadav Amit <namit@vmware.com>, <stable@vger.kernel.org>, Nadav Amit <nadav.amit@gmail.com> Subject: [PATCH v2 2/7] vmw_balloon: do not use 2MB without batching Date: Wed, 13 Jun 2018 06:54:07 -0700 [thread overview] Message-ID: <20180613135412.81660-3-namit@vmware.com> (raw) In-Reply-To: <20180613135412.81660-1-namit@vmware.com> If the hypervisor sets 2MB batching is on, while batching is cleared, the balloon code breaks. In this case the legacy mechanism is used with 2MB page. The VM would report a 2MB page is ballooned, and the hypervisor would only take the first 4KB. While the hypervisor should not report such settings, make the code more robust by not enabling 2MB support without batching. Fixes: 365bd7ef7ec8e ("VMware balloon: Support 2m page ballooning.") Cc: stable@vger.kernel.org Reviewed-by: Xavier Deguillard <xdeguillard@vmware.com> Signed-off-by: Nadav Amit <nadav.amit@gmail.com> --- drivers/misc/vmw_balloon.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/misc/vmw_balloon.c b/drivers/misc/vmw_balloon.c index 28e77ab1e136..60ab83d3d0ef 100644 --- a/drivers/misc/vmw_balloon.c +++ b/drivers/misc/vmw_balloon.c @@ -341,7 +341,13 @@ static bool vmballoon_send_start(struct vmballoon *b, unsigned long req_caps) success = false; } - if (b->capabilities & VMW_BALLOON_BATCHED_2M_CMDS) + /* + * 2MB pages are only supported with batching. If batching is for some + * reason disabled, do not use 2MB pages, since otherwise the legacy + * mechanism is used with 2MB pages, causing a failure. + */ + if ((b->capabilities & VMW_BALLOON_BATCHED_2M_CMDS) && + (b->capabilities & VMW_BALLOON_BATCHED_CMDS)) b->supported_page_sizes = 2; else b->supported_page_sizes = 1; -- 2.17.0
next prev parent reply other threads:[~2018-06-13 21:09 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-06-13 13:54 [PATCH v2 0/7] vmw_balloon: addressing bugs and issues Nadav Amit 2018-06-13 13:54 ` [PATCH v2 1/7] vmw_balloon: fix inflation of 64-bit GFNs Nadav Amit 2018-06-14 5:23 ` Greg Kroah-Hartman 2018-06-14 5:41 ` Nadav Amit 2018-06-14 5:50 ` Greg Kroah-Hartman 2018-06-14 5:56 ` Nadav Amit 2018-06-13 13:54 ` Nadav Amit [this message] 2018-06-13 13:54 ` [PATCH v2 3/7] vmw_balloon: VMCI_DOORBELL_SET does not check status Nadav Amit 2018-06-13 13:54 ` [PATCH v2 4/7] vmw_balloon: fix VMCI use when balloon built into kernel Nadav Amit 2018-06-13 13:54 ` [PATCH v2 5/7] vmw_balloon: remove inflation rate limiting Nadav Amit 2018-06-13 13:54 ` [PATCH v2 6/7] vmw_balloon: update copyright message Nadav Amit 2018-06-14 5:24 ` Greg Kroah-Hartman 2018-06-14 5:33 ` Nadav Amit 2018-06-14 5:48 ` Greg Kroah-Hartman 2018-06-15 20:35 ` valdis.kletnieks 2018-06-15 20:38 ` Nadav Amit 2018-06-16 8:03 ` Greg Kroah-Hartman 2018-06-13 13:54 ` [PATCH v2 7/7] vmw_balloon: update maintainers list Nadav Amit
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20180613135412.81660-3-namit@vmware.com \ --to=namit@vmware.com \ --cc=arnd@arndb.de \ --cc=gregkh@linuxfoundation.org \ --cc=linux-kernel@vger.kernel.org \ --cc=nadav.amit@gmail.com \ --cc=stable@vger.kernel.org \ --cc=xdeguillard@vmware.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).