[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-ia64-devel] unaligned access handler deadlock when auserapplication runs in big endian mode ( psr.be is set )


  • To: "Xu, Anthony" <anthony.xu@xxxxxxxxx>, "Gareth Knight" <gareth@xxxxxxxxxxxxxx>, <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Xu, Anthony" <anthony.xu@xxxxxxxxx>
  • Date: Fri, 25 Aug 2006 15:06:14 +0800
  • Delivery-date: Fri, 25 Aug 2006 00:07:12 -0700
  • List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: AcbH2UwMkVluA0uXTcibjc4RCf9mvgADATwgAAt7mdA=
  • Thread-topic: [Xen-ia64-devel] unaligned access handler deadlock when auserapplication runs in big endian mode ( psr.be is set )

Bin endian mode application investigation.

RHEL4U2 2.6.9-22.
Both native and VTIdomain can't support big endian mode application,
This will cause kernel hang.
>From the source code 2,6.9-22 should support big endian application,
Seems there is a bug in the path of handling unaligned fault. Which cause 
kernel 
hang.

Kernel 2.6.16
Both native and VTIdomain support big endian mode application,
kernel will send bus signal to application.
Output is,
Performing unaligned load from 60000fffffaaf1b0
Bus error.


Seems VTI-domain supports big endian application.
VTI-domain doesn't support big endian OS by far.

Thanks,
Anthony



>-----Original Message-----
>From: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
>[mailto:xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Xu, Anthony
>Sent: 2006?8?25? 9:33
>To: Gareth Knight; xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>Subject: RE: [Xen-ia64-devel] unaligned access handler deadlock when
>auserapplication runs in big endian mode ( psr.be is set )
>
>Hi Gareth
>
>Handling big endian mode is an interesting topic.
>Frankly, In VTI side, we didn't handle big endian mode, and we knew this is
>an issue.
>I would like to look at this issue.
>
>Did you run this application on domU or VTI-domain?
>
>
>Thanks
>Anthony
>
>>-----Original Message-----
>>From: xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>[mailto:xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Gareth
>>Knight
>>Sent: 2006?8?25? 7:58
>>To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>>Subject: [Xen-ia64-devel] unaligned access handler deadlock when a
>>userapplication runs in big endian mode ( psr.be is set )
>>
>>All,
>>
>>Repost sans confidentiality notice !
>>
>>I've got top of tree xen-ia64-unstable.hg running on my Tiger
>>system.  I'm working on getting our (Transitive's) QuickTransit
>>dynamic binary translator working in a guest machine.  QuickTransit
>>Sparc Solaris -> ia64 linux makes use of the big endian mode to speed
>>up its translation of Sparc applications.
>>
>>I've tried adding a "rum psr.be" in all the interrupt vectors near
>>the top and that certainly improves matters, but it also causes the
>>unaligned access handler to believe the user app is running in little
>>endian mode, which is not true.  I've put together an example to
>>demonstrate the issue.  The source is attached below.  Basically the
>>example tries to do an unaligned access whilst in big endian mode,
>>which when running correctly currently produces a SIGBUS ( since the
>>Linux kernel currently has no big endian unaligned access
>>handling ).  On the Xen kernel it currently deadlocks.
>>
>>Comments welcome,
>>
>>Gareth.
>
>_______________________________________________
>Xen-ia64-devel mailing list
>Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
>http://lists.xensource.com/xen-ia64-devel

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.