From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752604AbcJDKry (ORCPT ); Tue, 4 Oct 2016 06:47:54 -0400 Received: from mailhub.sw.ru ([195.214.232.25]:24433 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750908AbcJDKrx (ORCPT ); Tue, 4 Oct 2016 06:47:53 -0400 Reply-To: kneumoin@virtuozzo.com Subject: Re: [PATCH v2 1/1] virtio: update balloon size in balloon "probe" References: <1475144232-10579-1-git-send-email-den@openvz.org> To: virtualization@lists.linux-foundation.org, linux-kernel@vger.kernel.org Cc: "Denis V. Lunev" , "Michael S . Tsirkin" From: Konstantin Neumoin Organization: Virtuozzo Message-ID: Date: Tue, 4 Oct 2016 13:47:38 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 In-Reply-To: <1475144232-10579-1-git-send-email-den@openvz.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ping On 09/29/2016 01:17 PM, Denis V. Lunev wrote: > From: Konstantin Neumoin > > The following commit 'fad7b7b27b6a (virtio_balloon: Use a workqueue > instead of "vballoon" kthread)' has added a regression. Original code with > kthread starts the thread inside probe and checks the necessity to update > balloon inside the thread immediately. > > Nowadays the code behaves differently. Work is queued only on the first > command from the host after the negotiation. Thus there is a window > especially at the guest startup or the module reloading when the balloon > size is not updated until the notification from the host. > > This patch adds balloon size check at the end of the probe to match > original behaviour. > > Signed-off-by: Konstantin Neumoin > Signed-off-by: Denis V. Lunev > CC: Michael S. Tsirkin > --- > drivers/virtio/virtio_balloon.c | 2 ++ > 1 file changed, 2 insertions(+) > > Changes from v1: > - fixed description > - removed update_balloon_size() call > > diff --git a/drivers/virtio/virtio_balloon.c b/drivers/virtio/virtio_balloon.c > index 4e7003d..181793f 100644 > --- a/drivers/virtio/virtio_balloon.c > +++ b/drivers/virtio/virtio_balloon.c > @@ -577,6 +577,8 @@ static int virtballoon_probe(struct virtio_device *vdev) > > virtio_device_ready(vdev); > > + if (towards_target(vb)) > + virtballoon_changed(vdev); > return 0; > > out_del_vqs: