Ring page is mapped by kernel and updated so dcache must be flushed.
Signed-off-by: Alexey Dobriyan <[email protected]>
---
Not tested but the usage looks fishy.
fs/aio.c | 1 +
1 file changed, 1 insertion(+)
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -653,6 +653,7 @@ static int ioctx_add_table(struct kioctx *ctx, struct mm_struct *mm)
ring = kmap_atomic(ctx->ring_pages[0]);
ring->id = ctx->id;
kunmap_atomic(ring);
+ flush_dcache_page(ctx->ring_pages[0]);
return 0;
}
Alexey Dobriyan <[email protected]> writes:
> Ring page is mapped by kernel and updated so dcache must be flushed.
>
> Signed-off-by: Alexey Dobriyan <[email protected]>
> ---
>
> Not tested but the usage looks fishy.
>
> fs/aio.c | 1 +
> 1 file changed, 1 insertion(+)
>
> --- a/fs/aio.c
> +++ b/fs/aio.c
> @@ -653,6 +653,7 @@ static int ioctx_add_table(struct kioctx *ctx, struct mm_struct *mm)
> ring = kmap_atomic(ctx->ring_pages[0]);
> ring->id = ctx->id;
> kunmap_atomic(ring);
> + flush_dcache_page(ctx->ring_pages[0]);
> return 0;
> }
>
>
Sorry for the late review.
Reviewed-by: Jeff Moyer <[email protected]>