Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753434AbcDYDLL (ORCPT ); Sun, 24 Apr 2016 23:11:11 -0400 Received: from mga01.intel.com ([192.55.52.88]:48435 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751781AbcDYDLJ convert rfc822-to-8bit (ORCPT ); Sun, 24 Apr 2016 23:11:09 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,530,1455004800"; d="scan'208";a="952116148" From: "Li, Liang Z" To: "Michael S. Tsirkin" , "Dr. David Alan Gilbert" CC: Rik van Riel , "viro@zeniv.linux.org.uk" , "linux-kernel@vger.kernel.org" , "quintela@redhat.com" , "amit.shah@redhat.com" , "pbonzini@redhat.com" , "linux-mm@kvack.org" , "kvm@vger.kernel.org" , "qemu-devel@nongnu.org" , "agraf@suse.de" , "borntraeger@de.ibm.com" Subject: RE: [PATCH kernel 1/2] mm: add the related functions to build the free page bitmap Thread-Topic: [PATCH kernel 1/2] mm: add the related functions to build the free page bitmap Thread-Index: AQHRmknpgl1kdv1qZESOs9NZnESE3J+Q3AOAgACHhcD//48GAIAESwsAgABF24CABIIuoA== Date: Mon, 25 Apr 2016 03:11:05 +0000 Message-ID: References: <1461076474-3864-1-git-send-email-liang.z.li@intel.com> <1461076474-3864-2-git-send-email-liang.z.li@intel.com> <1461077659.3200.8.camel@redhat.com> <20160419191111-mutt-send-email-mst@redhat.com> <20160422094837.GC2239@work-vm> <20160422164936-mutt-send-email-mst@redhat.com> In-Reply-To: <20160422164936-mutt-send-email-mst@redhat.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiOTVmMGY2OTUtNTNmYi00OTQxLTlkNzMtNGEzNjE3NTQzZGM0IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IlIxTWNyWmtKV3Y1T2NrVkhKdHV2QnB4WVRMaWNDbE1yVVRIT09FRDVlUGs9In0= x-ctpclassification: CTP_IC x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2409 Lines: 60 > On Fri, Apr 22, 2016 at 10:48:38AM +0100, Dr. David Alan Gilbert wrote: > > * Michael S. Tsirkin (mst@redhat.com) wrote: > > > On Tue, Apr 19, 2016 at 03:02:09PM +0000, Li, Liang Z wrote: > > > > > On Tue, 2016-04-19 at 22:34 +0800, Liang Li wrote: > > > > > > The free page bitmap will be sent to QEMU through virtio > > > > > > interface and used for live migration optimization. > > > > > > Drop the cache before building the free page bitmap can get > > > > > > more free pages. Whether dropping the cache is decided by user. > > > > > > > > > > > > > > > > How do you prevent the guest from using those recently-freed > > > > > pages for something else, between when you build the bitmap and > > > > > the live migration completes? > > > > > > > > Because the dirty page logging is enabled before building the > > > > bitmap, there is no need to prevent the guest from using the recently- > freed pages ... > > > > > > > > Liang > > > > > > Well one point of telling host that page is free is so that it can > > > mark it clean even if it was dirty previously. > > > So I think you must pass the pages to guest under the lock. > > > This will allow host optimizations such as marking these pages > > > MADV_DONTNEED or MADV_FREE. > > > Otherwise it's all too tied up to a specific usecase - you aren't > > > telling host that a page is free, you are telling it that a page was > > > free in the past. > > > > But doing it under lock sounds pretty expensive, especially given how > > long the userspace side is going to take to work through the bitmap > > and device what to do. > > > > Dave > > We need to make it as fast as we can since the VCPU is stopped on exit > anyway. This just means e.g. sizing the bitmap reasonably - don't always try > to fit all memory in a single bitmap. Then we should pause the whole VM when using the bitmap, too expensive? > Really, if the page can in fact be in use when you tell host it's free, then it's > rather hard to explain what does it mean from host/guest interface point of > view. > How about rename the interface to a more appropriate name other than 'free page' ? Liang. > It probably can be defined but the interface seems very complex. > > Let's start with a simple thing instead unless it can be shown that there's a > performance problem. > > > > > > > > -- > > > MST > > -- > > Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK