Re: problems in commit 2d4dc890b5c8 (block: add helpers to run flush_dcache_page() against a bio and a request's pages)

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

 



On Thu, 10 Dec 2009 16:00:18 -0600
James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote:


> Actually, I think only sparc and mips need it.

How I can know this exactly?

> It's only needed for an
> aliasing architecture.  Next, it's only used for pio drivers, so if the
> platform never uses a pio driver, it can get away without having this
> (that's the sparc case, I think).

> Unfortunately, you can't do it at the bio level.  The reason is the
> kmap/kunmap.  On a highmem system the mapping disappears after kunmap,
> so you have to flush before you lose the mapping ... that means right in
> the guts of the driver where it's doing the kmap/copy/kunmap.
> 
> Sounds like aio does have the issue, yes.  If you grep the kernel for
> flush_kernel_dcache_pages(), you'll see that a lot of PIO drivers are
> already using this, so there's not a lot of conversion to be done.

I will write my seeing of current stage. Please correct me.

All mtd drivers and aio works correctly(about flushes). But there is a
lot of waste work on some architecrures (PA-RISC as example). It is bad.

We want to add flush_kernel_dcache_page() in MIPS(and may be SPARC and
other archs) and call it after kunmap in slram driver(and in aio may be).
So, we will fix the specific bug and, may be, bugs in other drivers which
use flush_kernel_dcache_page which(bugs) have not been founded yet. But
bugs in mtd may be will remain.

-- 
Ilya Loginov <isloginov@xxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux