diff --git a/[refs] b/[refs] index cc0b21ec33af..3fcc3af93659 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 185efc0f9a1f2d6ad6d4782c5d9e529f3290567f +refs/heads/master: 461ae488ecb125b140d7ea29ceeedbcce9327003 diff --git a/trunk/mm/vmalloc.c b/trunk/mm/vmalloc.c index 7ef0903058ee..5016f19e1661 100644 --- a/trunk/mm/vmalloc.c +++ b/trunk/mm/vmalloc.c @@ -2140,6 +2140,14 @@ struct vm_struct *alloc_vm_area(size_t size) return NULL; } + /* + * If the allocated address space is passed to a hypercall + * before being used then we cannot rely on a page fault to + * trigger an update of the page tables. So sync all the page + * tables here. + */ + vmalloc_sync_all(); + return area; } EXPORT_SYMBOL_GPL(alloc_vm_area);