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

[Xen-ia64-devel] Strange problem with virtual aliases



Hi folks,

I have a curious Xen/ia64 problem which looks like it could be a bug.

I'm running my own small OS in DomU.  I've created two mappings which
are supposed to be aliases; one is a large identity mapping, pinned
through a translation register, the other maps a specific page:

itr.d dtr[r0]: 0x2000000000000000 -> 0 size 256M
         (thus 0x2000000002500000 -> 0x2500000)
        itc.d: 0x00000000fbdf7000 -> 0x2500000 size 4K

tpa from inside the domain "proves" that the mappings are aliases:

tpa(0x2000000002500038) = 0x2500038
tpa(0xfbdf7038) = 0x2500038

However reading the data shows they are not:

*(0x2000000002500038) = 0x2000000001
*(0xfbdf7038) = 0

The real hardware TLB indeed has different physical addresses for the
two pages:

#                     VA            PA     RID    KEY   PS MA  ATTR     PL PERMS
14 V A   00000000fbdf7000 0000017309000 000008 000000   4K WB  p a d     2 
rwrwrw--
69 V A   2000000002500000 0000017c00000 010008 000000   4K WB  p a d     2 
rwrwrw--
                          ^^^^^^^^^^^^^

Before I spend more time delving through Xen, does anyone have any ideas
how this could have happened?

N.B. I've compiled Xen with 4KB page size which may or may not be
relevant...  most likely not since Xenlinux runs fine.

Matt


_______________________________________________
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®.