From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hollis Blanchard Subject: Re: Re: [Xen-devel] [PATCH 6 of 6] [XEN][LINUX] Add 32-bit privcmd ioctlconversion for 64-b Date: Fri, 06 Jul 2007 13:17:03 -0500 Message-ID: <1183745823.3008.18.camel@basalt> References: <3833674b6d561e690b49.1183674475@localhost> <468E14E8.76E4.0078.0@novell.com> <1183736659.3008.8.camel@basalt> <468E854E.76E4.0078.0@novell.com> Reply-To: Hollis Blanchard Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <468E854E.76E4.0078.0@novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-ppc-devel-bounces@lists.xensource.com Errors-To: xen-ppc-devel-bounces@lists.xensource.com To: Jan Beulich Cc: xen-devel@lists.xensource.com, Keir Fraser , xen-ppc-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On Fri, 2007-07-06 at 17:09 +0100, Jan Beulich wrote: > >>> Hollis Blanchard 06.07.07 17:44 >>> > >> Where does the hypercall argument translation happen? > > > >It happens inside privcmd_hypercall(). See > >http://xenbits.xensource.com/ext/linux-ppc-2.6.hg?file/04f6ad5d9232/arch/powerpc/platforms/xen/hcall.c > > > >(In that tree, the function is named "arch_privcmd_hypercall".) IA64 and > >PPC both implement this function now; only x86 is left with #ifdefs in > >drivers/xen/privcmd/privcmd.c . > > > >COMPATIBLE_IOCTL is just about the ioctl itself, not the sub-structures. > > Hmm, I can't really see any structures being translated there, all I see is > guest handles getting dereferenced. So I'm still unclear where you do the > 32-bit layout to 64-bit layout conversion, but obviously I must be missing > something. Which structures do you think need further conversion? We've already fixed all the shared structures (e.g. sysctl) to use explicitly-sized types, so the PowerPC port has always had proper interfaces. For example, look at the definition of xen_ulong_t on the different architectures. The x86 interfaces were frozen too early, cementing this problem for you. -- Hollis Blanchard IBM Linux Technology Center