diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/aio.c | 7 |
1 files changed, 2 insertions, 5 deletions
@@ -92,11 +92,8 @@ static void aio_free_ring(struct kioctx *ctx) | |||
92 | for (i=0; i<info->nr_pages; i++) | 92 | for (i=0; i<info->nr_pages; i++) |
93 | put_page(info->ring_pages[i]); | 93 | put_page(info->ring_pages[i]); |
94 | 94 | ||
95 | if (info->mmap_size) { | 95 | if (info->mmap_size) |
96 | down_write(&ctx->mm->mmap_sem); | 96 | vm_munmap(ctx->mm, info->mmap_base, info->mmap_size); |
97 | do_munmap(ctx->mm, info->mmap_base, info->mmap_size); | ||
98 | up_write(&ctx->mm->mmap_sem); | ||
99 | } | ||
100 | 97 | ||
101 | if (info->ring_pages && info->ring_pages != info->internal_pages) | 98 | if (info->ring_pages && info->ring_pages != info->internal_pages) |
102 | kfree(info->ring_pages); | 99 | kfree(info->ring_pages); |