From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38474) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ehEHy-00020l-J6 for qemu-devel@nongnu.org; Thu, 01 Feb 2018 07:48:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ehEHx-0002Zp-8e for qemu-devel@nongnu.org; Thu, 01 Feb 2018 07:48:26 -0500 Received: from mx1.redhat.com ([209.132.183.28]:38658) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ehEHx-0002ZR-0O for qemu-devel@nongnu.org; Thu, 01 Feb 2018 07:48:25 -0500 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 408127EA95 for ; Thu, 1 Feb 2018 12:48:24 +0000 (UTC) Date: Thu, 1 Feb 2018 14:48:20 +0200 From: "Michael S. Tsirkin" Message-ID: <20180201144449-mutt-send-email-mst@kernel.org> References: <20180131092835.GA31397@xz-mi> <20180131160214-mutt-send-email-mst@kernel.org> <20180201021853.GD31397@xz-mi> <20180201042234-mutt-send-email-mst@kernel.org> <20180201023350.GF31397@xz-mi> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180201023350.GF31397@xz-mi> Subject: Re: [Qemu-devel] Windows balloon driver PFN issue List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Xu Cc: QEMU Devel Mailing List On Thu, Feb 01, 2018 at 10:33:50AM +0800, Peter Xu wrote: > On Thu, Feb 01, 2018 at 04:24:40AM +0200, Michael S. Tsirkin wrote: > > On Thu, Feb 01, 2018 at 10:18:53AM +0800, Peter Xu wrote: > > > On Wed, Jan 31, 2018 at 04:03:12PM +0200, Michael S. Tsirkin wrote: > > > > On Wed, Jan 31, 2018 at 05:28:35PM +0800, Peter Xu wrote: > > > > > Hi, Michael and the list, > > > > > > > > > > I observed this on windows 8 enterprise guests, when doing memory ballooning: > > > > > > > > > > 23892@1517298572.328354:virtio_balloon_to_target balloon target: 0x80000000 num_pages: 524288 > > > > > 23892@1517298638.542819:virtio_balloon_get_config num_pages: 524288 actual: 0 > > > > > 23892@1517298638.542974:virtio_balloon_handle_output section name: pc.ram gpa: 0x174604000 > > > > > 23892@1517298638.543059:virtio_balloon_handle_output section name: pc.ram gpa: 0x0 > > > > > 23892@1517298638.543135:virtio_balloon_handle_output section name: pc.ram gpa: 0x17460a000 > > > > > 23892@1517298638.543140:virtio_balloon_handle_output section name: pc.ram gpa: 0x0 > > > > > 23892@1517298638.543143:virtio_balloon_handle_output section name: pc.ram gpa: 0x17460b000 > > > > > 23892@1517298638.543146:virtio_balloon_handle_output section name: pc.ram gpa: 0x0 > > > > > 23892@1517298638.543148:virtio_balloon_handle_output section name: pc.ram gpa: 0x17460c000 > > > > > 23892@1517298638.543152:virtio_balloon_handle_output section name: pc.ram gpa: 0x0 > > > > > 23892@1517298638.543154:virtio_balloon_handle_output section name: pc.ram gpa: 0x17460d000 > > > > > 23892@1517298638.543159:virtio_balloon_handle_output section name: pc.ram gpa: 0x0 > > > > > 23892@1517298638.543162:virtio_balloon_handle_output section name: pc.ram gpa: 0x17460e000 > > > > > 23892@1517298638.543165:virtio_balloon_handle_output section name: pc.ram gpa: 0x0 > > > > > 23892@1517298638.543167:virtio_balloon_handle_output section name: pc.ram gpa: 0x17460f000 > > > > > 23892@1517298638.543170:virtio_balloon_handle_output section name: pc.ram gpa: 0x0 > > > > > ... > > > > > > > > > > I think it's very possible that these zero addresses (please let me > > > > > know what the first 4K page is used for if anyone knows, since IIUC > > > > > that's what we throw away now) are half of the 64bit PFN. Or say, not > > > > > sure whether this means a windows guest driver bug that is using > > > > > 64bits for PFN rather than 32bits (and I suppose the protocol is using > > > > > 32bit for PFNs). > > > > > > > > > > Michael, do you know what to do with this? > > > > > > > > > > Thanks, > > > > > > > > PFN is GPA>>12. Do you have more than 1<<44 bytes of memory in this VM then? > > > > > > No. But isn't it still not good to drop the page at offset zero (and > > > drop it NNN times)? > > > > Absolutely - looks like a bug. I just don't know why does this happen. > > IMHO if we are using a PFN array like this: > > u64 pfn_array[]; > > In the windows guest driver, then we'll see this (as mentioned > above). But for sure this is wild guess of mine. I don't see code like this anywhere in the windows balloon driver. It's here: https://github.com/virtio-win/kvm-guest-drivers-windows.git > > > > > And I'm not sure what will happen if guest has > > > 1<<44 bytes; then we'll possibly drop very random addresses since a > > > real address will be splitted? > > > > > > Thanks, > > > > The balloon won't work, period. There was an interface change to fix > > that but implementation issues remained and contributor seems to be busy > > with page hints. > > Okay. So IIUC this is already a known issue for the driver owner. > Then it seems that there's nothing more I can do for now... > > Thanks, > > -- > Peter Xu