X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=fs%2Fbio.c;h=25f1af0d81e5bee47ee8487b27ca8e0152b6d156;hb=35ad1c8803921b28541ad28bfb18dc3b6295ba98;hp=88322b066acb68f8279e79eeca5842c6b02bd8ce;hpb=3b23e665b68387f5ee7b21f7b75ceea4d9acae4a;p=linux-2.6 diff --git a/fs/bio.c b/fs/bio.c index 88322b066a..25f1af0d81 100644 --- a/fs/bio.c +++ b/fs/bio.c @@ -721,12 +721,8 @@ static struct bio *__bio_map_user_iov(struct request_queue *q, const int local_nr_pages = end - start; const int page_limit = cur_page + local_nr_pages; - down_read(¤t->mm->mmap_sem); - ret = get_user_pages(current, current->mm, uaddr, - local_nr_pages, - write_to_vm, 0, &pages[cur_page], NULL); - up_read(¤t->mm->mmap_sem); - + ret = get_user_pages_fast(uaddr, local_nr_pages, + write_to_vm, &pages[cur_page]); if (ret < local_nr_pages) { ret = -EFAULT; goto out_unmap;