From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: Re: [RFC QEMU PATCH v4 00/10] Implement vNVDIMM for Xen HVM guest Date: Tue, 6 Mar 2018 11:38:24 +0000 Message-ID: <20180306113824.GD1921@perard.uk.xensource.com> References: <20171207101030.22364-1-haozhong.zhang@intel.com> <20171207101812.23602-1-haozhong.zhang@intel.com> <20180227172223.GD1799@perard.uk.xensource.com> <20180228093659.xpq2amq2zjuw2mdr@hz-desktop> <20180302120323.GG1799@perard.uk.xensource.com> <20180306041608.mbr6b25y557awxrn@hz-desktop> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1etAvn-0000h8-1T for xen-devel@lists.xenproject.org; Tue, 06 Mar 2018 11:38:55 +0000 Content-Disposition: inline In-Reply-To: <20180306041608.mbr6b25y557awxrn@hz-desktop> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, Stefano Stabellini , Konrad Rzeszutek Wilk , Dan Williams , Chao Peng , Eduardo Habkost , Igor Mammedov , "Michael S. Tsirkin" , Xiao Guangrong , Paolo Bonzini , Richard Henderson List-Id: xen-devel@lists.xenproject.org T24gVHVlLCBNYXIgMDYsIDIwMTggYXQgMTI6MTY6MDhQTSArMDgwMCwgSGFvemhvbmcgWmhhbmcg d3JvdGU6Cj4gT24gMDMvMDIvMTggMTI6MDMgKzAwMDAsIEFudGhvbnkgUEVSQVJEIHdyb3RlOgo+ ID4gT24gV2VkLCBGZWIgMjgsIDIwMTggYXQgMDU6MzY6NTlQTSArMDgwMCwgSGFvemhvbmcgWmhh bmcgd3JvdGU6Cj4gPiA+IE9uIDAyLzI3LzE4IDE3OjIyICswMDAwLCBBbnRob255IFBFUkFSRCB3 cm90ZToKPiA+ID4gPiBPbiBUaHUsIERlYyAwNywgMjAxNyBhdCAwNjoxODowMlBNICswODAwLCBI YW96aG9uZyBaaGFuZyB3cm90ZToKPiA+ID4gPiA+IFRoaXMgaXMgdGhlIFFFTVUgcGFydCBwYXRj aGVzIHRoYXQgd29ya3Mgd2l0aCB0aGUgYXNzb2NpYXRlZCBYZW4KPiA+ID4gPiA+IHBhdGNoZXMg dG8gZW5hYmxlIHZOVkRJTU0gc3VwcG9ydCBmb3IgWGVuIEhWTSBkb21haW5zLiBYZW4gcmVsaWVz IG9uCj4gPiA+ID4gPiBRRU1VIHRvIGJ1aWxkIGd1ZXN0IE5GSVQgYW5kIE5WRElNTSBuYW1lc3Bh Y2UgZGV2aWNlcywgYW5kIGFsbG9jYXRlCj4gPiA+ID4gPiBndWVzdCBhZGRyZXNzIHNwYWNlIGZv ciB2TlZESU1NIGRldmljZXMuCj4gPiA+ID4gCj4gPiA+ID4gSSd2ZSBnb3Qgb3RoZXIgcXVlc3Rp b24sIGFuZCBtYXliZSBwb3NzaWJsZSBpbXByb3ZlbWVudHMuCj4gPiA+ID4gCj4gPiA+ID4gV2hl biBRRU1VIGJ1aWxkIHRoZSBBQ1BJIHRhYmxlcywgaXQgYWxzbyBpbml0aWFsaXplIHNvbWUgTWVt b3J5UmVnaW9uLAo+ID4gPiA+IHdoaWNoIHVzZSBtb3JlIGd1ZXN0IG1lbW9yeS4gRG8geW91IGtu b3cgaWYgdGhvc2UgcmVnaW9ucyBhcmUgdXNlZCB3aXRoCj4gPiA+ID4geW91ciBwYXRjaCBzZXJp ZXMgb24gWGVuPwo+ID4gPiAKPiA+ID4gWWVzLCB0aGF0J3Mgd2h5IGRtX2FjcGlfc2l6ZSBpcyBp bnRyb2R1Y2VkLgo+ID4gPiAKPiA+ID4gPiBPdGhlcndpc2UsIHdlIGNvdWxkIHRyeSB0byBhdm9p ZCB0aGVpcgo+ID4gPiA+IGNyZWF0aW9uIHdpdGggdGhpczoKPiA+ID4gPiBJbiB4ZW5mdl9tYWNo aW5lX29wdGlvbnMoKQo+ID4gPiA+IG0tPnJvbV9maWxlX2hhc19tciA9IGZhbHNlOwo+ID4gPiA+ IChzZXR0aW5nIHRoaXMgaW4geGVuX2h2bV9pbml0KCkgd291bGQgcHJvYmFibHkgYmUgYmV0dGVy LCBidXQgSSBoYXZuJ3QKPiA+ID4gPiB0cnkpCj4gPiA+IAo+ID4gPiBJZiBteSBtZW1vcnkgaXMg Y29ycmVjdCwgc2ltcGx5IHNldHRpbmcgcm9tX2ZpbGVfaGFzX21yIHRvIGZhbHNlIGRvZXMKPiA+ ID4gbm90IHdvcmsgKHRob3VnaCBJIGNhbm5vdCByZW1pbmQgdGhlIGV4YWN0IHJlYXNvbikuIEkn bGwgaGF2ZSBhIGxvb2sKPiA+ID4gYXMgdGhlIGNvZGUgdG8gcmVmcmVzaCBteSBtZW1vcnkuCj4g PiAKPiA+IEkndmUgcGxheWVkIGEgYml0IHdpdGggdGhpcyBpZGVhLCBidXQgd2l0aG91dCBhIHBy b3BlciBOVkRJTU0gYXZhaWxhYmxlCj4gPiBmb3IgdGhlIGd1ZXN0LCBzbyBJIGRvbid0IGtub3cg aWYgaXQncyBnb2luZyB0byB3b3JrIHByb3Blcmx5IHdpdGhvdXQKPiA+IHRoZSBtci4KPiA+IAo+ ID4gVG8gbWFrZSBpdCB3b3JrLCBJIGhhZCB0byBkaXNhYmxlIHNvbWUgY29kZSBpbiBhY3BpX2J1 aWxkX3VwZGF0ZSgpIHRoYXQKPiA+IG1ha2UgdXNlIG9mIHRoZSBNZW1vcnlSZWdpb25zLCBhcyB3 ZWxsIGFzIGFuIGFzc2VydCBpbiBhY3BpX3NldHVwKCkuCj4gPiBBZnRlciB0aG9zZSBzbWFsbCBo YWNrcywgSSBjb3VsZCBib290IHRoZSBndWVzdCwgYW5kIEkndmUgY2hlY2sgdGhhdCB0aGUKPiA+ IGV4cGVjdGVkIEFDUEkgdGFibGVzIHdoZXJlIHRoZXJlLCBhbmQgdGhleSBsb29rZWQgY29ycmVj dCB0byBteSBleWVzLgo+ID4gQW5kIGxlYXN0IGBuZGN0bCBsaXN0YCB3b3JrcyBhbmQgc2hvd2Vk IHRoZSBudmRpbW0gKHRoYXQgSSBoYXZlCj4gPiBjb25maWd1cmVkIG9uIFFFTVUncyBjbWRsaW5l KS4KPiA+IAo+ID4gQnV0IEkgbWF5IG5vdCBoYXZlIGJlZW4gZmFyIGVub3VnaCB3aXRoIG15IHRl c3RzLCBhbmQgbWF5YmUgc29tZXRoaW5nCj4gPiBsYXRlciByZWxpZXMgb24gdGhlIE1ScywgZXNw ZWNpYWxseSB0aGUgX0RTTSBtZXRob2QgdGhhdCBJIGRvbid0IGtub3cgaWYKPiA+IGl0IHdhcyB3 b3JraW5nIHByb3Blcmx5Lgo+ID4gCj4gPiBBbnl3YXksIHRoYXQgd2h5IEkgcHJvcG9zZWQgdGhl IGlkZWEsIGFuZCBpZiB3ZSBjYW4gYXZvaWQgbW9yZQo+ID4gdW5jZXJ0YWludHkgYWJvdXQgaG93 IG11Y2ggZ3Vlc3QgbWVtb3J5IFFFTVUgaXMgZ29pbmcgdG8gdXNlLCB0aGF0IHdvdWxkCj4gPiBi ZSBnb29kLgo+ID4gCj4gCj4gWWVzLCBJIGFsc28gdGVzdGVkIHNvbWUgbm9uLXRyaXZpYWwgX0RT TSBtZXRob2RzIGFuZCBpdCBsb29rcyByb20KPiBmaWxlcyB3aXRob3V0IG1lbW9yeSByZWdpb25z IGNhbiB3b3JrIHdpdGggWGVuIGFmdGVyIHNvbWUKPiBtb2RpZmljYXRpb25zLiBJJ2xsIGFwcGx5 IHRoaXMgaWRlYSBpbiB0aGUgbmV4dCB2ZXJzaW9uIGlmIG5vIG90aGVyCj4gaXNzdWVzIGFyZSBm b3VuZC4KCkF3ZXNvbWUsIHRoYW5rcy4KCi0tIApBbnRob255IFBFUkFSRAoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlz dApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0 Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA== From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:55779) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1etAvq-0005Qj-M2 for qemu-devel@nongnu.org; Tue, 06 Mar 2018 06:38:59 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1etAvn-0004wx-HP for qemu-devel@nongnu.org; Tue, 06 Mar 2018 06:38:58 -0500 Received: from smtp.citrix.com ([66.165.176.89]:30976) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1etAvn-0004uu-6f for qemu-devel@nongnu.org; Tue, 06 Mar 2018 06:38:55 -0500 Date: Tue, 6 Mar 2018 11:38:24 +0000 From: Anthony PERARD Message-ID: <20180306113824.GD1921@perard.uk.xensource.com> References: <20171207101030.22364-1-haozhong.zhang@intel.com> <20171207101812.23602-1-haozhong.zhang@intel.com> <20180227172223.GD1799@perard.uk.xensource.com> <20180228093659.xpq2amq2zjuw2mdr@hz-desktop> <20180302120323.GG1799@perard.uk.xensource.com> <20180306041608.mbr6b25y557awxrn@hz-desktop> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20180306041608.mbr6b25y557awxrn@hz-desktop> Subject: Re: [Qemu-devel] [Xen-devel] [RFC QEMU PATCH v4 00/10] Implement vNVDIMM for Xen HVM guest List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org, xen-devel@lists.xenproject.org, Stefano Stabellini , Konrad Rzeszutek Wilk , Dan Williams , Chao Peng , Eduardo Habkost , Igor Mammedov , "Michael S. Tsirkin" , Xiao Guangrong , Paolo Bonzini , Richard Henderson On Tue, Mar 06, 2018 at 12:16:08PM +0800, Haozhong Zhang wrote: > On 03/02/18 12:03 +0000, Anthony PERARD wrote: > > On Wed, Feb 28, 2018 at 05:36:59PM +0800, Haozhong Zhang wrote: > > > On 02/27/18 17:22 +0000, Anthony PERARD wrote: > > > > On Thu, Dec 07, 2017 at 06:18:02PM +0800, Haozhong Zhang wrote: > > > > > This is the QEMU part patches that works with the associated Xen > > > > > patches to enable vNVDIMM support for Xen HVM domains. Xen relies on > > > > > QEMU to build guest NFIT and NVDIMM namespace devices, and allocate > > > > > guest address space for vNVDIMM devices. > > > > > > > > I've got other question, and maybe possible improvements. > > > > > > > > When QEMU build the ACPI tables, it also initialize some MemoryRegion, > > > > which use more guest memory. Do you know if those regions are used with > > > > your patch series on Xen? > > > > > > Yes, that's why dm_acpi_size is introduced. > > > > > > > Otherwise, we could try to avoid their > > > > creation with this: > > > > In xenfv_machine_options() > > > > m->rom_file_has_mr = false; > > > > (setting this in xen_hvm_init() would probably be better, but I havn't > > > > try) > > > > > > If my memory is correct, simply setting rom_file_has_mr to false does > > > not work (though I cannot remind the exact reason). I'll have a look > > > as the code to refresh my memory. > > > > I've played a bit with this idea, but without a proper NVDIMM available > > for the guest, so I don't know if it's going to work properly without > > the mr. > > > > To make it work, I had to disable some code in acpi_build_update() that > > make use of the MemoryRegions, as well as an assert in acpi_setup(). > > After those small hacks, I could boot the guest, and I've check that the > > expected ACPI tables where there, and they looked correct to my eyes. > > And least `ndctl list` works and showed the nvdimm (that I have > > configured on QEMU's cmdline). > > > > But I may not have been far enough with my tests, and maybe something > > later relies on the MRs, especially the _DSM method that I don't know if > > it was working properly. > > > > Anyway, that why I proposed the idea, and if we can avoid more > > uncertainty about how much guest memory QEMU is going to use, that would > > be good. > > > > Yes, I also tested some non-trivial _DSM methods and it looks rom > files without memory regions can work with Xen after some > modifications. I'll apply this idea in the next version if no other > issues are found. Awesome, thanks. -- Anthony PERARD