Displaying 4 results from an estimated 4 matches for "cleanup_writable_pagetable".
2006 Feb 14
1
implicit grant unmap
...the domain_crash() in mm.c line ~615
without requiring new OS hooks. This crash occurs when the operating
system writes a zero to the PTE for a grant mapping without an explicit
Xen call to unmap.
In hacking around, it seems the problem is this: When the mapping PTE
gets squashed, Xen''s cleanup_writable_pagetable() has no way to find the
correct maptrack entry for the affected mapping. Consequently, the
grant mapping is not properly cleaned-up.
Sound correct? Are there worse problems here?
Thanks,
-steve
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.co...
2006 Mar 15
0
implicit grant unmap hacking [was RE: Grant tables from dom0 userspace?]
...he printk() when the OS squashes the
mapping PTE. Instead, I get the backtrace I already mentioned, namely:
(XEN) [<ff13603e>] put_page_from_l1e+0xd0/0x1af
(XEN) [<ff13a891>] revalidate_l1+0x159/0x168
(XEN) [<ff13aac1>] ptwr_flush+0x221/0x32f
(XEN) [<ff13b6a7>] cleanup_writable_pagetable+0x5c/0x7d
(XEN) [<ff137c20>] do_mmuext_op+0x85/0x8c1
(XEN) [<ff149e0f>] hypercall+0x8f/0xaf
I was hoping that ptwr_do_page_fault() would happen first, but it
doesn''t happen at all. I conclude that the page table is writable by
the paravirtual OS, and the hypercall() ab...
2005 Mar 14
4
[patch/unstable] page table cleanups
...struct domain *d,
struct exec_domain *ed)
{
@@ -1984,30 +1986,32 @@ int update_grant_va_mapping(unsigned lon
*/
int rc = 0;
- l1_pgentry_t *pl1e;
- unsigned long _ol1e;
+ l1_pgentry_t *pl1e;
+ l1_pgentry_t _ol1e;
cleanup_writable_pagetable(d);
pl1e = &linear_pg_table[l1_linear_offset(va)];
- if ( unlikely(__get_user(_ol1e, (unsigned long *)pl1e) != 0) )
+ if ( unlikely(__copy_from_user(&_ol1e, pl1e, sizeof(_ol1e)) != 0) )
rc = -EINVAL;
else
{
- l1_pgentry_t ol1e = mk_l1_pgentry(_ol1e);...
2006 Jul 25
18
[PATCH] turn off writable page tables
At OLS I gave a talk on some of the Xen scalability inhibitors, and one
of these was writable page tables. We went over why the feature does
not scale, but just as important, we found that the uniprocessor case
does not provide any advantage either. These tests were done on x86_64,
so I wanted to run the 1-way test on 32 bit to show the same problem.
So, I have run with writable PTs and