diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2008-12-18 00:49:38 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-01-02 12:10:35 -0500 |
commit | 97ae77a1cd332c7b011d71315c8faabce6840c72 (patch) | |
tree | fc243ca28ea474eaf81729079eeb3b259cd1b81b /fs/bio.c | |
parent | 56c451f4b583ccdf80c9e676179c9cb49de86745 (diff) |
[SCSI] block: make blk_rq_map_user take a NULL user-space buffer for WRITE
The commit 818827669d85b84241696ffef2de485db46b0b5e (block: make
blk_rq_map_user take a NULL user-space buffer) extended
blk_rq_map_user to accept a NULL user-space buffer with a READ
command. It was necessary to convert sg to use the block layer mapping
API.
This patch extends blk_rq_map_user again for a WRITE command. It is
necessary to convert st and osst drivers to use the block layer
apping API.
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Acked-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'fs/bio.c')
-rw-r--r-- | fs/bio.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -859,7 +859,7 @@ struct bio *bio_copy_user_iov(struct request_queue *q, | |||
859 | /* | 859 | /* |
860 | * success | 860 | * success |
861 | */ | 861 | */ |
862 | if (!write_to_vm) { | 862 | if (!write_to_vm && (!map_data || !map_data->null_mapped)) { |
863 | ret = __bio_copy_iov(bio, bio->bi_io_vec, iov, iov_count, 0, 0); | 863 | ret = __bio_copy_iov(bio, bio->bi_io_vec, iov, iov_count, 0, 0); |
864 | if (ret) | 864 | if (ret) |
865 | goto cleanup; | 865 | goto cleanup; |