From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [PATCH] DOM0_GETDOMAININFO hypercall support for DOMID_SELF Date: Fri, 16 Dec 2005 20:09:11 -0600 Message-ID: <43A37347.5080309@us.ibm.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "Cihula, Joseph" Cc: Xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Cihula, Joseph wrote: >The attached (and following) patch allows a privileged domain to use the >DOM0_GETDOMAININFO dom0_op (and by extension, userspace apps to use >xc_domain_getinfo()) to query about themselves by specifying the domid >as DOMID_SELF. > >Most importantly, this allows the domain to determine its own domid. > > If you want to find out your domid (you'll have to be very careful wrt save/restore/migrate btw) what you can do today is: 1) Copy libxenctrl.so.3.0.0, libxenstore.so, and xenstore-read into your guest. 2) xenstore-read domid This will work in any type of domain. You can also just use libxenstore directly (just make sure to use xs_domain_open()). Regards, Anthony Liguori >Signed-off-by: joseph.cihula@intel.com > >diff -r 6ee4c16bfdec xen/common/dom0_ops.c >--- a/xen/common/dom0_ops.c Fri Dec 16 17:58:21 2005 >+++ b/xen/common/dom0_ops.c Fri Dec 16 18:40:39 2005 >@@ -358,12 +358,17 @@ > case DOM0_GETDOMAININFO: > { > struct domain *d; >+ domid_t dom; >+ >+ dom = op->u.getdomaininfo.domain; >+ if ( dom == DOMID_SELF ) >+ dom = current->domain->domain_id; > > read_lock(&domlist_lock); > > for_each_domain ( d ) > { >- if ( d->domain_id >= op->u.getdomaininfo.domain ) >+ if ( d->domain_id >= dom ) > break; > } > > > >------------------------------------------------------------------------ > >_______________________________________________ >Xen-devel mailing list >Xen-devel@lists.xensource.com >http://lists.xensource.com/xen-devel > >