diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-11-10 20:23:49 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-11-10 20:23:49 -0500 |
commit | 3419b45039c6b799c974a8019361c045e7ca232c (patch) | |
tree | 36a63602036cc50f34fadcbd5d5d8fca94e44297 /drivers/block/zram/zram_drv.c | |
parent | 01504f5e9e071f1dde1062e3be15f54d4555308f (diff) | |
parent | c1c534609fe8a859f9c8108a5591e6e8a97e34d1 (diff) |
Merge branch 'for-4.4/io-poll' of git://git.kernel.dk/linux-block
Pull block IO poll support from Jens Axboe:
"Various groups have been doing experimentation around IO polling for
(really) fast devices. The code has been reviewed and has been
sitting on the side for a few releases, but this is now good enough
for coordinated benchmarking and further experimentation.
Currently O_DIRECT sync read/write are supported. A framework is in
the works that allows scalable stats tracking so we can auto-tune
this. And we'll add libaio support as well soon. Fow now, it's an
opt-in feature for test purposes"
* 'for-4.4/io-poll' of git://git.kernel.dk/linux-block:
direct-io: be sure to assign dio->bio_bdev for both paths
directio: add block polling support
NVMe: add blk polling support
block: add block polling support
blk-mq: return tag/queue combo in the make_request_fn handlers
block: change ->make_request_fn() and users to return a queue cookie
Diffstat (limited to 'drivers/block/zram/zram_drv.c')
-rw-r--r-- | drivers/block/zram/zram_drv.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c index 81a557c33a1f..47915d736f8d 100644 --- a/drivers/block/zram/zram_drv.c +++ b/drivers/block/zram/zram_drv.c | |||
@@ -894,7 +894,7 @@ out: | |||
894 | /* | 894 | /* |
895 | * Handler function for all zram I/O requests. | 895 | * Handler function for all zram I/O requests. |
896 | */ | 896 | */ |
897 | static void zram_make_request(struct request_queue *queue, struct bio *bio) | 897 | static blk_qc_t zram_make_request(struct request_queue *queue, struct bio *bio) |
898 | { | 898 | { |
899 | struct zram *zram = queue->queuedata; | 899 | struct zram *zram = queue->queuedata; |
900 | 900 | ||
@@ -911,11 +911,12 @@ static void zram_make_request(struct request_queue *queue, struct bio *bio) | |||
911 | 911 | ||
912 | __zram_make_request(zram, bio); | 912 | __zram_make_request(zram, bio); |
913 | zram_meta_put(zram); | 913 | zram_meta_put(zram); |
914 | return; | 914 | return BLK_QC_T_NONE; |
915 | put_zram: | 915 | put_zram: |
916 | zram_meta_put(zram); | 916 | zram_meta_put(zram); |
917 | error: | 917 | error: |
918 | bio_io_error(bio); | 918 | bio_io_error(bio); |
919 | return BLK_QC_T_NONE; | ||
919 | } | 920 | } |
920 | 921 | ||
921 | static void zram_slot_free_notify(struct block_device *bdev, | 922 | static void zram_slot_free_notify(struct block_device *bdev, |