1. 12 6月, 2009 4 次提交
  2. 30 3月, 2009 2 次提交
  3. 30 12月, 2008 1 次提交
  4. 12 8月, 2008 1 次提交
    • R
      lguest: use get_user_pages_fast() instead of get_user_pages() · 71a3f4ed
      Rusty Russell 提交于
      Using a simple page table thrashing program I measure a slight
      improvement.  The program creates five processes.  Each touches 1000
      pages then schedules the next process.  We repeat this 1000 times.  As
      lguest only caches 4 cr3 values, this rebuilds a lot of shadow page
      tables requiring virt->phys mappings.
      
      	Before: 5.93 seconds
      	After: 5.40 seconds
      
      (Counts of slow vs fastpath in this usage are 6092 and 2852462 respectively.)
      
      And more importantly for lguest, the code is simpler.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      71a3f4ed
  5. 28 3月, 2008 1 次提交
  6. 11 3月, 2008 1 次提交
    • R
      lguest: Revert 1ce70c4f, fix real problem. · 4357bd94
      Rusty Russell 提交于
      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 37cc8d7f 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: NRusty Russell <rusty@rustcorp.com.au>
      4357bd94
  7. 10 2月, 2008 1 次提交
  8. 30 1月, 2008 8 次提交
  9. 25 10月, 2007 1 次提交
  10. 23 10月, 2007 5 次提交
  11. 27 7月, 2007 3 次提交
  12. 20 7月, 2007 1 次提交