1. 08 Jan, 2007 3 commits
    • Russell King's avatar
      [ARM] Resolve fuse and direct-IO failures due to missing cache flushes · 6020dff0
      Russell King authored
      fuse does not work on ARM due to cache incoherency issues - fuse wants
      to use get_user_pages() to copy data from the current process into
      kernel space.  However, since this accesses userspace via the kernel
      mapping, the kernel mapping can be out of date wrt data written to
      userspace.
      
      This can lead to unpredictable behaviour (in the case of fuse) or data
      corruption for direct-IO.
      
      This resolves debian bug #402876
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      6020dff0
    • Russell King's avatar
      [ARM] pass vma for flush_anon_page() · a6f36be3
      Russell King authored
      Since get_user_pages() may be used with processes other than the
      current process and calls flush_anon_page(), flush_anon_page() has to
      cope in some way with non-current processes.
      
      It may not be appropriate, or even desirable to flush a region of
      virtual memory cache in the current process when that is different to
      the process that we want the flush to occur for.
      
      Therefore, pass the vma into flush_anon_page() so that the architecture
      can work out whether the 'vmaddr' is for the current process or not.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      a6f36be3
    • Russell King's avatar
      [ARM] Fix potential MMCI bug · e47c222b
      Russell King authored
      The MMCI driver might end up aborting the initial command and leaving
      the data part of the command sequence still in place.  Avoid this
      problem by ensuring that any data sequence is properly cleared out
      when a command completes.
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      e47c222b
  2. 06 Jan, 2007 4 commits
  3. 04 Jan, 2007 26 commits
  4. 03 Jan, 2007 6 commits
  5. 02 Jan, 2007 1 commit