Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / md / bcache / request.h
1 #ifndef _BCACHE_REQUEST_H_
2 #define _BCACHE_REQUEST_H_
3
4 struct data_insert_op {
5         struct closure          cl;
6         struct cache_set        *c;
7         struct bio              *bio;
8         struct workqueue_struct *wq;
9
10         unsigned                inode;
11         uint16_t                write_point;
12         uint16_t                write_prio;
13         short                   error;
14
15         union {
16                 uint16_t        flags;
17
18         struct {
19                 unsigned        bypass:1;
20                 unsigned        writeback:1;
21                 unsigned        flush_journal:1;
22                 unsigned        csum:1;
23
24                 unsigned        replace:1;
25                 unsigned        replace_collision:1;
26
27                 unsigned        insert_data_done:1;
28         };
29         };
30
31         struct keylist          insert_keys;
32         BKEY_PADDED(replace_key);
33 };
34
35 unsigned bch_get_congested(struct cache_set *);
36 void bch_data_insert(struct closure *cl);
37
38 void bch_cached_dev_request_init(struct cached_dev *dc);
39 void bch_flash_dev_request_init(struct bcache_device *d);
40
41 extern struct kmem_cache *bch_search_cache, *bch_passthrough_cache;
42
43 #endif /* _BCACHE_REQUEST_H_ */