diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-08-11 12:57:01 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-08-11 12:57:01 +0200 |
commit | 6de9c70882ecdee63a652d493bf2353963bd4c22 (patch) | |
tree | 9d219e705492331c97f5f7dccce3b0b1a29251bf /fs/direct-io.c | |
parent | d406d21d90dce2e66c7eb4a44605aac947fe55fb (diff) | |
parent | 796aadeb1b2db9b5d463946766c5bbfd7717158c (diff) | |
download | kernel-crypto-6de9c70882ecdee63a652d493bf2353963bd4c22.tar.gz kernel-crypto-6de9c70882ecdee63a652d493bf2353963bd4c22.tar.xz kernel-crypto-6de9c70882ecdee63a652d493bf2353963bd4c22.zip |
Merge branch 'linus' into x86/cleanups
Diffstat (limited to 'fs/direct-io.c')
-rw-r--r-- | fs/direct-io.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/fs/direct-io.c b/fs/direct-io.c index 9e81addbd6e..9606ee848fd 100644 --- a/fs/direct-io.c +++ b/fs/direct-io.c @@ -150,17 +150,11 @@ static int dio_refill_pages(struct dio *dio) int nr_pages; nr_pages = min(dio->total_pages - dio->curr_page, DIO_PAGES); - down_read(¤t->mm->mmap_sem); - ret = get_user_pages( - current, /* Task for fault acounting */ - current->mm, /* whose pages? */ + ret = get_user_pages_fast( dio->curr_user_address, /* Where from? */ nr_pages, /* How many pages? */ dio->rw == READ, /* Write to memory? */ - 0, /* force (?) */ - &dio->pages[0], - NULL); /* vmas */ - up_read(¤t->mm->mmap_sem); + &dio->pages[0]); /* Put results here */ if (ret < 0 && dio->blocks_available && (dio->rw & WRITE)) { struct page *page = ZERO_PAGE(0); |