Re: [PATCHv2 1/5] mm: add coherence API for DMA to vmalloc/vmap areas

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2009-12-24 at 05:39 -0700, Matthew Wilcox wrote:
> On Thu, Dec 24, 2009 at 10:08:53AM +0000, Matt Fleming wrote:
> > On Wed, Dec 23, 2009 at 03:22:21PM -0600, James Bottomley wrote:
> > > +
> > > +  void flush_kernel_vmap_range(void *vaddr, int size)
> > > +       flushes the kernel cache for a given virtual address range in
> > > +       the vmap area.  This API makes sure that and data the kernel
> > 
> >   	      	   	       	   	      	^^^ code and data?
> 
> I'd guess it's a typo for 'any data'.
> 
> > > +  void invalidate_kernel_vmap_range(void *vaddr, int size)
> > > +       invalidates the kernel cache for a given virtual address range
> > > +       in the vmap area.  This API is designed to make sure that while
> > > +       I/O went on to an address range in the vmap area, the processor
> > > +       didn't speculate cache reads and thus make the cache over the
> > > +       virtual address stale.
> > > +
> > 
> > Could this sentence be reworked a little? I find the "over the virtual
> > address" part a little difficult to parse.
> 
> How about:
> 
> invalidates the processor cache for a given virtual address range
> in the vmap area.  This API addresses the problem that the processor
> may have performed speculative reads into its cache of the vmapped
> area while I/O was occurring to the underlying physical pages.

So better, I think is

invalidates the cache for a given virtual address range in the vmap area
which prevents the processor from making the cache stale by
speculatively reading data while the I/O was occurring to the physical
pages.

James


--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux