lkml.org 
[lkml]   [2009]   [Dec]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [git patches] xfs and block fixes for virtually indexed arches
On Thu, Dec 17, 2009 at 09:42:15AM -0800, Linus Torvalds wrote:

>
> I also think that the changes to bio_map_kernel() and bio_map_kern_endio()
> are not just "fundamentally ugly", I think they are made worse by the fact
> that it's not even done "right". You both flush the virtual caches before
> the IO and invalidate after - when the real pattern should be that you
> flush it before a write, and invalidate it after a read.
>
> And I really think that would be all much more properly done at the
> _caller_ level, not by the BIO layer.
>
> You must have some locking and allocation etc logic at the caller anyway,
> why doesn't _that_ level just do the flushing or invalidation?

And then there are certain types of caches that need invalidation before
_and_ after a DMA transaction as a workaround for a processor being
grossly abused in a system that it should not be used in. Basically the
issue is that falsly speculated stores may dirty caches.

Ralf


\
 
 \ /
  Last update: 2009-12-19 19:37    [W:1.273 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site