[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-ia64-devel] Support big endian domU's
On Thu, Nov 16, 2006 at 01:11:18PM +0100, Dietmar Hahn wrote: > I started with supporting big endian domU's on ia64 and have some questions. > I did some changes to tools/libxc/xc_load_elf.c and now I can load and start > the big endian domU. > Because this is some sort of a new branch in load_elf how can I get in > changes? Should I simply send patches to x86 list or should I first initiate > a discussion about that? If you have already (even imcomplete) patches, it would be good to initiate a discussion with the patch sending a mail of the subject [RFC][PATCH] on x86 list. > I added a flag is_be to struct arch_domain. Is this ok, or may this produce > some problems? Although I'm not sure how the flag is used, I don't suppose that it would cause issues to introduce the new flag. I think that big endianess is per-vcpu issue, not per-domain, so that I don't think is_be is necessary. Could you elaborate on is_be? > struct arch_domain { > struct mm_struct mm; > /* Flags. */ > union { > unsigned long flags; > struct { > unsigned int is_vti : 1; > #ifdef CONFIG_XEN_IA64_PERVCPU_VHPT > unsigned int has_pervcpu_vhpt : 1; > #endif > unsigned int is_be : 1; <-------- > }; > }; > > Should I introduce a new compiler flag where the special big endion support > can be switched off? > > A question to the function reflect_interruptions() in fault.c: > As far as I understand the code, PSCB(...) are prepared to contain the > trapped > dumU environment.. > regs->... are prepared to contain the environment for return to the trap > handler of the domU. > If this is the case then on a big endian domU the psr.be bit ist not set in > regs->ipsr from dcr.be. This is needed on return from Xen to the trap handler > of the domU. > The other thing is that in vcpu_get_ipsr_int_state() the psr.be bit should > not > be overwritten by dcr.be. There are cases where a big endian domU runs > temporarily littlen endian (during efi calls, ...). If there would be a trap, > it would return with psr.be = 1, which is not what we want. > The same problem may occur on reflect_event()! > Thanks. > > Dietmar. > > _______________________________________________ > Xen-ia64-devel mailing list > Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx > http://lists.xensource.com/xen-ia64-devel -- yamahata _______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |