From patchwork Mon Aug 30 19:17:51 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adam Litke X-Patchwork-Id: 63123 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 30C70B70F6 for ; Tue, 31 Aug 2010 05:19:21 +1000 (EST) Received: from localhost ([127.0.0.1]:40238 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oq9t0-0002iL-Er for incoming@patchwork.ozlabs.org; Mon, 30 Aug 2010 15:19:18 -0400 Received: from [140.186.70.92] (port=59872 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oq9rl-0002Zn-E2 for qemu-devel@nongnu.org; Mon, 30 Aug 2010 15:18:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Oq9rk-0002ei-9k for qemu-devel@nongnu.org; Mon, 30 Aug 2010 15:18:01 -0400 Received: from e2.ny.us.ibm.com ([32.97.182.142]:41042) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Oq9rk-0002dJ-7T for qemu-devel@nongnu.org; Mon, 30 Aug 2010 15:18:00 -0400 Received: from d01relay04.pok.ibm.com (d01relay04.pok.ibm.com [9.56.227.236]) by e2.ny.us.ibm.com (8.14.4/8.13.1) with ESMTP id o7UJ3U57001660 for ; Mon, 30 Aug 2010 15:03:30 -0400 Received: from d03av04.boulder.ibm.com (d03av04.boulder.ibm.com [9.17.195.170]) by d01relay04.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id o7UJHttY067044 for ; Mon, 30 Aug 2010 15:17:55 -0400 Received: from d03av04.boulder.ibm.com (loopback [127.0.0.1]) by d03av04.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id o7UJHs2l028029 for ; Mon, 30 Aug 2010 13:17:54 -0600 Received: from [9.65.57.39] (sig-9-65-57-39.mts.ibm.com [9.65.57.39]) by d03av04.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVin) with ESMTP id o7UJHrQh027980; Mon, 30 Aug 2010 13:17:53 -0600 From: Adam Litke To: Markus Armbruster In-Reply-To: References: <51ec99ce2db02aeb34ec6683a76895b4a127057d.1282886503.git.amit.shah@redhat.com> <20100827092945.GC22361@redhat.com> <4C77B209.6050902@codemonkey.ws> <20100828005243.GB415@amit-laptop.redhat.com> <4C7BACC4.2030603@codemonkey.ws> Organization: IBM Date: Mon, 30 Aug 2010 14:17:51 -0500 Message-ID: <1283195871.2937.26.camel@aglitke> Mime-Version: 1.0 X-Mailer: Evolution 2.28.3 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) Cc: Amit Shah , Paolo Bonzini , qemu list , Luiz Capitulino Subject: [Qemu-devel] [PATCH] Disable virtio-balloon memory stats interface X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Just got back from vacation and saw this thread. I agree with Anthony that the best thing to do is disable the memory stats interface for 0.13. We need to fix the underlying problems in qemu with respect to asynchronous commands first, then we can look at re-enabling the feature. The virtio feature negotiation mechanism allows the feature to be disabled by commenting out a single line of code. This late in the 0.13 release cycle, this is the safest option. We can refactor/remove code in the development tree as needed. On Mon, 2010-08-30 at 17:01 +0200, Markus Armbruster wrote: > Anyone care to submit a patch? Sure... [PATCH] Disable virtio-balloon memory stats interface The addition of memory stats reporting to the virtio balloon causes the 'info balloon' command to become asynchronous. This is a regression because management tools that consume this command were not designed to handle lost or delayed responses. To fix this regression, the virtio balloon memory stats feature is being disabled in qemu-0.13. Signed-off-by: Adam Litke Acked-by: Amit Shah diff --git a/hw/virtio-balloon.c b/hw/virtio-balloon.c index 9fe3886..2d80382 100644 --- a/hw/virtio-balloon.c +++ b/hw/virtio-balloon.c @@ -190,7 +190,18 @@ static void virtio_balloon_set_config(VirtIODevice *vdev, static uint32_t virtio_balloon_get_features(VirtIODevice *vdev, uint32_t f) { - f |= (1 << VIRTIO_BALLOON_F_STATS_VQ); + /* + * The addition of memory stats reporting to the virtio balloon causes + * the 'info balloon' command to become asynchronous. This is a regression + * because management tools that consume this command were not designed to + * handle lost or delayed responses. + * + * To fix this regression, the virtio balloon memory stats feature is being + * disabled in qemu-0.13. + * + * -aglitke + */ + /* f |= (1 << VIRTIO_BALLOON_F_STATS_VQ); */ return f; }