Rusty Russell 4357bd9453 lguest: Revert 1ce70c4fac3c3954bd48c035f448793867592bc0, fix real problem.
Ahmed managed to crash the Host in release_pgd(), which cannot be a Guest
bug, and indeed it wasn't.

The bug was that handing a 0 as the address of the toplevel page table
being manipulated can cause the lookup code in find_pgdir() to return
an uninitialized cache entry (we shadow up to 4 top level page tables
for each Guest).

Commit 37cc8d7f963ba2deec29c9b68716944516a3244f introduced this
behaviour in the Guest, uncovering the bug.

The patch which he submitted (which removed the /4 from the index
calculation) simply ensured that these high-indexed entries hit the
early exit path of guest_set_pmd().  But you get lots of segfaults in
guest userspace as the PMDs aren't being updated.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2008-03-11 09:35:58 +11:00
..
2008-03-09 10:05:15 -07:00
2008-02-27 14:23:53 +01:00
2008-02-23 17:12:16 -08:00
2008-02-09 10:46:40 +01:00
2008-02-14 21:13:33 -08:00
2008-03-05 12:37:20 +01:00
2008-03-06 17:23:15 +09:00
2008-02-09 10:46:40 +01:00