1. 11 5月, 2009 1 次提交
    • D
      intel-iommu: PAE memory corruption fix · fd18de50
      David Woodhouse 提交于
      PAGE_MASK is 0xFFFFF000 on i386 -- even with PAE.
      
      So it's not sufficient to ensure that you use phys_addr_t or uint64_t
      everywhere you handle physical addresses -- you also have to avoid using
      the construct 'addr & PAGE_MASK', because that will strip the high 32
      bits of the address.
      
      This patch avoids that problem by using PHYSICAL_PAGE_MASK instead of
      PAGE_MASK where appropriate. It leaves '& PAGE_MASK' in a few instances
      that don't matter -- where it's being used on the virtual bus addresses
      we're dishing out, which are 32-bit anyway.
      
      Since PHYSICAL_PAGE_MASK is not present on other architectures, we have
      to define it (to PAGE_MASK) if it's not already defined.
      
      Maybe it would be better just to fix PAGE_MASK for i386/PAE?
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      fd18de50
  2. 07 4月, 2009 4 次提交
  3. 04 4月, 2009 4 次提交
  4. 26 3月, 2009 2 次提交
  5. 25 3月, 2009 1 次提交
  6. 24 3月, 2009 3 次提交
  7. 20 3月, 2009 1 次提交
  8. 18 3月, 2009 3 次提交
  9. 18 2月, 2009 1 次提交
  10. 15 2月, 2009 1 次提交
  11. 05 2月, 2009 1 次提交
  12. 29 1月, 2009 2 次提交
  13. 14 1月, 2009 1 次提交
  14. 06 1月, 2009 3 次提交
  15. 03 1月, 2009 12 次提交