From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mukesh Rathor Subject: Re: [PATCH 19/20] PVH xen: elf and iommu related changes to prep for dom0 PVH Date: Fri, 17 May 2013 19:01:19 -0700 Message-ID: <20130517190119.736d23c7@mantra.us.oracle.com> References: <1368579168-30829-1-git-send-email-mukesh.rathor@oracle.com> <1368579168-30829-20-git-send-email-mukesh.rathor@oracle.com> <519397E802000078000D6718@nat28.tlf.novell.com> <20130515185817.27b83538@mantra.us.oracle.com> <5194AEE402000078000D6A33@nat28.tlf.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <5194AEE402000078000D6A33@nat28.tlf.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich Cc: xen-devel List-Id: xen-devel@lists.xenproject.org On Thu, 16 May 2013 09:03:16 +0100 "Jan Beulich" wrote: > >>> On 16.05.13 at 03:58, Mukesh Rathor > >>> wrote: > > On Wed, 15 May 2013 13:12:56 +0100 > > "Jan Beulich" wrote: > > > >> > + { > >> > + unsigned long addr = (unsigned long)dst; > >> > + early_pvh_copy_or_zero(addr, src, filesz); > >> > + early_pvh_copy_or_zero(addr + filesz, NULL, memsz - > >> > filesz); > >> > >> And anyway - repeating my earlier complaint - I don't see why this > >> is necessary. In fact I don't see why most of the PV Dom0 building > >> code can't be used unchanged for PVH: There's no real need for > >> lifting the few restrictions that apply, and hence there needn't be > >> any fear of colliding address spaces. > > > > Hmm... thats the best way I could come up with. If you want to > > prototype something and replace what I've got, it's perfectly ok by > > me. > > There's nothing to prototype - just use the code that's there for > PV Dom0. Not sure if you are referring to just changes in elf_load_image(): + if ( opt_dom0pvh ) + { + unsigned long addr = (unsigned long)dst; + early_pvh_copy_or_zero(addr, src, filesz); + early_pvh_copy_or_zero(addr + filesz, NULL, memsz - filesz); + + return 0; + } + rc = raw_copy_to_guest(dst, src, filesz); or all changes including construct_dom0() also? As the comment says, for elf_load_image() we need early_pvh_copy_or_zero because it's too early in boot and construct_dom0() is running on idle vcpu where curr points to. If that doesn't address your concern, please elaborate. thanks Mukesh