aboutsummaryrefslogtreecommitdiffstats
path: root/fs/bio.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/bio.c')
-rw-r--r--fs/bio.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/fs/bio.c b/fs/bio.c
index 460554b07ff9..4d21ee3873ec 100644
--- a/fs/bio.c
+++ b/fs/bio.c
@@ -386,6 +386,25 @@ static int __bio_add_page(request_queue_t *q, struct bio *bio, struct page
386} 386}
387 387
388/** 388/**
389 * bio_add_pc_page - attempt to add page to bio
390 * @bio: destination bio
391 * @page: page to add
392 * @len: vec entry length
393 * @offset: vec entry offset
394 *
395 * Attempt to add a page to the bio_vec maplist. This can fail for a
396 * number of reasons, such as the bio being full or target block
397 * device limitations. The target block device must allow bio's
398 * smaller than PAGE_SIZE, so it is always possible to add a single
399 * page to an empty bio. This should only be used by REQ_PC bios.
400 */
401int bio_add_pc_page(request_queue_t *q, struct bio *bio, struct page *page,
402 unsigned int len, unsigned int offset)
403{
404 return __bio_add_page(q, bio, page, len, offset);
405}
406
407/**
389 * bio_add_page - attempt to add page to bio 408 * bio_add_page - attempt to add page to bio
390 * @bio: destination bio 409 * @bio: destination bio
391 * @page: page to add 410 * @page: page to add
@@ -1228,6 +1247,7 @@ EXPORT_SYMBOL(bio_clone);
1228EXPORT_SYMBOL(bio_phys_segments); 1247EXPORT_SYMBOL(bio_phys_segments);
1229EXPORT_SYMBOL(bio_hw_segments); 1248EXPORT_SYMBOL(bio_hw_segments);
1230EXPORT_SYMBOL(bio_add_page); 1249EXPORT_SYMBOL(bio_add_page);
1250EXPORT_SYMBOL(bio_add_pc_page);
1231EXPORT_SYMBOL(bio_get_nr_vecs); 1251EXPORT_SYMBOL(bio_get_nr_vecs);
1232EXPORT_SYMBOL(bio_map_user); 1252EXPORT_SYMBOL(bio_map_user);
1233EXPORT_SYMBOL(bio_unmap_user); 1253EXPORT_SYMBOL(bio_unmap_user);