xfstests 013 - 2.6.35.11 - hang

Ajeet Yadav ajeet.yadav.77 at gmail.com
Mon May 2 00:41:14 CDT 2011


Is there any thing I left out in xfs related to cache coherency.

On Thu, Apr 28, 2011 at 12:59 PM, Ajeet Yadav <ajeet.yadav.77 at gmail.com> wrote:
> 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 at infradead.org> wrote:
>> Does 001 also fail for say ext2 and ext3?
>>
>>
>




More information about the xfs mailing list