projects
/
deliverable
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
blk-mq: rework flush sequencing logic
[deliverable/linux.git]
/
include
/
linux
/
blkdev.h
diff --git
a/include/linux/blkdev.h
b/include/linux/blkdev.h
index 1b135d49b27985d3243cdbf92d6002ce5eea8597..b2d25ecbcbc1531864606c9a1f1e267689ae2a11 100644
(file)
--- a/
include/linux/blkdev.h
+++ b/
include/linux/blkdev.h
@@
-101,7
+101,7
@@
struct request {
};
union {
struct call_single_data csd;
};
union {
struct call_single_data csd;
- struct work_struct mq_flush_
data
;
+ struct work_struct mq_flush_
work
;
};
struct request_queue *q;
};
struct request_queue *q;
@@
-291,6
+291,7
@@
struct queue_limits {
unsigned char discard_misaligned;
unsigned char cluster;
unsigned char discard_zeroes_data;
unsigned char discard_misaligned;
unsigned char cluster;
unsigned char discard_zeroes_data;
+ unsigned char raid_partial_stripes_expensive;
};
struct request_queue {
};
struct request_queue {
@@
-450,13
+451,8
@@
struct request_queue {
unsigned long flush_pending_since;
struct list_head flush_queue[2];
struct list_head flush_data_in_flight;
unsigned long flush_pending_since;
struct list_head flush_queue[2];
struct list_head flush_data_in_flight;
- union {
- struct request flush_rq;
- struct {
- spinlock_t mq_flush_lock;
- struct work_struct mq_flush_work;
- };
- };
+ struct request *flush_rq;
+ spinlock_t mq_flush_lock;
struct mutex sysfs_lock;
struct mutex sysfs_lock;
@@
-735,7
+731,7
@@
struct rq_map_data {
};
struct req_iterator {
};
struct req_iterator {
-
int i
;
+
struct bvec_iter iter
;
struct bio *bio;
};
struct bio *bio;
};
@@
-748,10
+744,11
@@
struct req_iterator {
#define rq_for_each_segment(bvl, _rq, _iter) \
__rq_for_each_bio(_iter.bio, _rq) \
#define rq_for_each_segment(bvl, _rq, _iter) \
__rq_for_each_bio(_iter.bio, _rq) \
- bio_for_each_segment(bvl, _iter.bio, _iter.i)
+ bio_for_each_segment(bvl, _iter.bio, _iter.i
ter
)
-#define rq_iter_last(rq, _iter) \
- (_iter.bio->bi_next == NULL && _iter.i == _iter.bio->bi_vcnt-1)
+#define rq_iter_last(bvec, _iter) \
+ (_iter.bio->bi_next == NULL && \
+ bio_iter_last(bvec, _iter.iter))
#ifndef ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE
# error "You should define ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE for your platform"
#ifndef ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE
# error "You should define ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE for your platform"
This page took
0.062898 seconds
and
5
git commands to generate.