[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] PAE xen + linux kernel boots ...
> On the linux side of things we have the following in pgtable-3level.h: > > #if 1 /* writable pagetables */ > static inline void set_pte(pte_t *ptep, pte_t pte) > { > ptep->pte_high = pte.pte_high; > smp_wmb(); > ptep->pte_low = pte.pte_low; > } > ... Note there is also set_pte_atomic ... > Switch to xen, which is going to emulate some instructions and fake > the writing. We eventually end up in ptwr_emulated_update(), who among > other things, tries to copy the full l1_pgentry_t (64bits), but from > the 4 byte offset, that is the 4 high bytes and then 4 bytes of > undefined memory that may even be in another page. Having a close look at the emulation is on my todo list. Note that ptwr_emulated_update takes "unsigned long", i.e. 32-bit values (on x86_32) as parameters, so chances are pretty good that there are issues with 64bit updates. It works fine for me nevertheless, for some reason, maybe just pure luck ;) Turning off emulation works fine for me as well btw. (just delete the tree lines which force the emulation path for PAE), so I obviously got the PGT_va backref stuff right ;) Gerd PS: there is revision #6 of the patches on the usual location, I hadn't announced those yet. -- #define printk(args...) fprintf(stderr, ## args) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |