projects
/
cascardo
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'for-4.9/block-irq' of git://git.kernel.dk/linux-block
[cascardo/linux.git]
/
include
/
linux
/
blk-mq.h
diff --git
a/include/linux/blk-mq.h
b/include/linux/blk-mq.h
index
c5a97d7
..
ef6aebf
100644
(file)
--- a/
include/linux/blk-mq.h
+++ b/
include/linux/blk-mq.h
@@
-2,6
+2,7
@@
#define BLK_MQ_H
#include <linux/blkdev.h>
#define BLK_MQ_H
#include <linux/blkdev.h>
+#include <linux/sbitmap.h>
struct blk_mq_tags;
struct blk_flush_queue;
struct blk_mq_tags;
struct blk_flush_queue;
@@
-12,12
+13,6
@@
struct blk_mq_cpu_notifier {
int (*notify)(void *data, unsigned long action, unsigned int cpu);
};
int (*notify)(void *data, unsigned long action, unsigned int cpu);
};
-struct blk_mq_ctxmap {
- unsigned int size;
- unsigned int bits_per_word;
- struct blk_align_bitmap *map;
-};
-
struct blk_mq_hw_ctx {
struct {
spinlock_t lock;
struct blk_mq_hw_ctx {
struct {
spinlock_t lock;
@@
-37,7
+32,7
@@
struct blk_mq_hw_ctx {
void *driver_data;
void *driver_data;
- struct
blk_mq_ctxmap
ctx_map;
+ struct
sbitmap
ctx_map;
struct blk_mq_ctx **ctxs;
unsigned int nr_ctx;
struct blk_mq_ctx **ctxs;
unsigned int nr_ctx;
@@
-158,6
+153,7
@@
enum {
BLK_MQ_F_TAG_SHARED = 1 << 1,
BLK_MQ_F_SG_MERGE = 1 << 2,
BLK_MQ_F_DEFER_ISSUE = 1 << 4,
BLK_MQ_F_TAG_SHARED = 1 << 1,
BLK_MQ_F_SG_MERGE = 1 << 2,
BLK_MQ_F_DEFER_ISSUE = 1 << 4,
+ BLK_MQ_F_BLOCKING = 1 << 5,
BLK_MQ_F_ALLOC_POLICY_START_BIT = 8,
BLK_MQ_F_ALLOC_POLICY_BITS = 1,
BLK_MQ_F_ALLOC_POLICY_START_BIT = 8,
BLK_MQ_F_ALLOC_POLICY_BITS = 1,
@@
-178,8
+174,8
@@
enum {
struct request_queue *blk_mq_init_queue(struct blk_mq_tag_set *);
struct request_queue *blk_mq_init_allocated_queue(struct blk_mq_tag_set *set,
struct request_queue *q);
struct request_queue *blk_mq_init_queue(struct blk_mq_tag_set *);
struct request_queue *blk_mq_init_allocated_queue(struct blk_mq_tag_set *set,
struct request_queue *q);
-int blk_mq_register_d
isk(struct gendisk
*);
-void blk_mq_unregister_d
isk(struct gendisk
*);
+int blk_mq_register_d
ev(struct device *, struct request_queue
*);
+void blk_mq_unregister_d
ev(struct device *, struct request_queue
*);
int blk_mq_alloc_tag_set(struct blk_mq_tag_set *set);
void blk_mq_free_tag_set(struct blk_mq_tag_set *set);
int blk_mq_alloc_tag_set(struct blk_mq_tag_set *set);
void blk_mq_free_tag_set(struct blk_mq_tag_set *set);