Pull block driver changes from Jens Axboe: "Nothing out of the ordinary here, this pull request contains: - A big round of fixes for bcache from Kent Overstreet, Slava Pestov, and Surbhi Palande. No new features, just a lot of fixes. - The usual round of drbd updates from Andreas Gruenbacher, Lars Ellenberg, and Philipp Reisner. - virtio_blk was converted to blk-mq back in 3.13, but now Ming Lei has taken it one step further and added support for actually using more than one queue. - Addition of an explicit SG_FLAG_Q_AT_HEAD for block/bsg, to compliment the the default behavior of adding to the tail of the queue. From Douglas Gilbert" * 'for-3.17/drivers' of git://git.kernel.dk/linux-block: (86 commits) bcache: Drop unneeded blk_sync_queue() calls bcache: add mutex lock for bch_is_open bcache: Correct printing of btree_gc_max_duration_ms bcache: try to set b->parent properly bcache: fix memory corruption in init error path bcache: fix crash with incomplete cache set bcache: Fix more early shutdown bugs bcache: fix use-after-free in btree_gc_coalesce() bcache: Fix an infinite loop in journal replay bcache: fix crash in bcache_btree_node_alloc_fail tracepoint bcache: bcache_write tracepoint was crashing bcache: fix typo in bch_bkey_equal_header bcache: Allocate bounce buffers with GFP_NOWAIT bcache: Make sure to pass GFP_WAIT to mempool_alloc() bcache: fix uninterruptible sleep in writeback thread bcache: wait for buckets when allocating new btree root bcache: fix crash on shutdown in passthrough mode bcache: fix lockdep warnings on shutdown bcache allocator: send discards with correct size bcache: Fix to remove the rcu_sched stalls. ...
Showing the changes to include/uapi (2 of 39 files). Show all
Unified · Split
| @@ -10,12 +10,13 @@ · 9 unmodified lines | |||
| 10 | #define BSG_SUB_PROTOCOL_SCSI_TRANSPORT 2 | 10 | #define BSG_SUB_PROTOCOL_SCSI_TRANSPORT 2 |
| 11 | 11 | ||
| 12 | /* | 12 | /* |
| 13 | * For flags member below | 13 | * For flag constants below: |
| 14 | * sg.h sg_io_hdr also has bits defined for it's flags member. However | 14 | * sg.h sg_io_hdr also has bits defined for it's flags member. These |
| 15 | * none of these bits are implemented/used by bsg. The bits below are | 15 | * two flag values (0x10 and 0x20) have the same meaning in sg.h . For |
| 16 | * allocated to not conflict with sg.h ones anyway. | 16 | * bsg the BSG_FLAG_Q_AT_HEAD flag is ignored since it is the deafult. |
| 17 | */ | 17 | */ |
| 18 | #define BSG_FLAG_Q_AT_TAIL 0x10 /* default, == 0 at this bit, is Q_AT_HEAD */ | 18 | #define BSG_FLAG_Q_AT_TAIL 0x10 /* default is Q_AT_HEAD */ |
| 19 | #define BSG_FLAG_Q_AT_HEAD 0x20 | ||
| 19 | 20 | ||
| 20 | struct sg_io_v4 { | 21 | struct sg_io_v4 { |
| 21 | __s32 guard; /* [i] 'Q' to differentiate from v3 */ | 22 | __s32 guard; /* [i] 'Q' to differentiate from v3 */ |
| @@ -40,6 +40,7 @@ · 39 unmodified lines | |||
| 40 | #define VIRTIO_BLK_F_WCE 9 /* Writeback mode enabled after reset */ | 40 | #define VIRTIO_BLK_F_WCE 9 /* Writeback mode enabled after reset */ |
| 41 | #define VIRTIO_BLK_F_TOPOLOGY 10 /* Topology information is available */ | 41 | #define VIRTIO_BLK_F_TOPOLOGY 10 /* Topology information is available */ |
| 42 | #define VIRTIO_BLK_F_CONFIG_WCE 11 /* Writeback mode available in config */ | 42 | #define VIRTIO_BLK_F_CONFIG_WCE 11 /* Writeback mode available in config */ |
| 43 | #define VIRTIO_BLK_F_MQ 12 /* support more than one vq */ | ||
| 43 | 44 | ||
| 44 | #ifndef __KERNEL__ | 45 | #ifndef __KERNEL__ |
| 45 | /* Old (deprecated) name for VIRTIO_BLK_F_WCE. */ | 46 | /* Old (deprecated) name for VIRTIO_BLK_F_WCE. */ |
| @@ -77,6 +78,10 @@ struct virtio_blk_config { · 31 unmodified lines | |||
| 77 | 78 | ||
| 78 | /* writeback mode (if VIRTIO_BLK_F_CONFIG_WCE) */ | 79 | /* writeback mode (if VIRTIO_BLK_F_CONFIG_WCE) */ |
| 79 | __u8 wce; | 80 | __u8 wce; |
| 81 | __u8 unused; | ||
| 82 | |||
| 83 | /* number of vqs, only available when VIRTIO_BLK_F_MQ is set */ | ||
| 84 | __u16 num_queues; | ||
| 80 | } __attribute__((packed)); | 85 | } __attribute__((packed)); |
| 81 | 86 | ||
| 82 | /* | 87 | /* |