Re: xfstests 013 - 2.6.35.11 - hang

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

 



MIPS32Â 34Kâ Core
It does not provide  invalidate_kernel_vmap_range() /
flush_kernel_vmap_range() to deal with cache coherency problem
Therefore we provided dma_cache_inv() / dma_cache_wback_inv() , after
that we did not had any coherency problem
But as you saying it still has cache coherency problem, wrt xfstests 001 ?

diff -Nurp -X linux-2.6.35.11/Documentation/dontdiff
linux-2.6.35.11/fs/xfs/linux-2.6/xfs_buf.c
linux-2.6.35.11-dirty/fs/xfs/linux-2.6/xfs_buf.c
--- linux-2.6.35.11/fs/xfs/linux-2.6/xfs_buf.c  2011-02-07
04:04:07.000000000 +0900
+++ linux-2.6.35.11-dirty/fs/xfs/linux-2.6/xfs_buf.c    2011-03-22
18:29:09.000000000 +0900
@@ -1192,7 +1192,7 @@ xfs_buf_bio_end_io(
        xfs_buf_ioerror(bp, -error);

        if (!error && xfs_buf_is_vmapped(bp) && (bp->b_flags & XBF_READ))
-               invalidate_kernel_vmap_range(bp->b_addr, xfs_buf_vmap_len(bp));
+               dma_cache_inv((unsigned long)bp->b_addr, xfs_buf_vmap_len(bp));

        do {
                struct page     *page = bvec->bv_page;
@@ -1304,7 +1304,7 @@ next_chunk:
 submit_io:
        if (likely(bio->bi_size)) {
                if (xfs_buf_is_vmapped(bp)) {
-                       flush_kernel_vmap_range(bp->b_addr,
+                       dma_cache_wback_inv((unsigned long)bp->b_addr,
                                                xfs_buf_vmap_len(bp));
                }
                submit_bio(rw, bio);

On Wed, Apr 27, 2011 at 10:41 PM, Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:
> Does 001 also fail for say ext2 and ext3?
>
>

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs



[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux