bcache: Break up struct search
With all the recent refactoring around struct btree op struct search has gotten rather large. But we can now easily break it up in a different way - we break out struct btree_insert_op which is for inserting data into the cache, and that's now what the copying gc code uses - struct search is now specific to request.c Signed-off-by: Kent Overstreet <kmo@daterainc.com>
This commit is contained in:
@@ -3,46 +3,25 @@
|
||||
|
||||
#include <linux/cgroup.h>
|
||||
|
||||
struct search {
|
||||
/* Stack frame for bio_complete */
|
||||
struct data_insert_op {
|
||||
struct closure cl;
|
||||
struct closure btree;
|
||||
|
||||
struct bcache_device *d;
|
||||
struct cache_set *c;
|
||||
struct task_struct *task;
|
||||
|
||||
struct bbio bio;
|
||||
struct bio *orig_bio;
|
||||
struct bio *cache_miss;
|
||||
|
||||
/* Bio to be inserted into the cache */
|
||||
struct bio *cache_bio;
|
||||
unsigned cache_bio_sectors;
|
||||
struct bio *bio;
|
||||
|
||||
unsigned inode;
|
||||
uint16_t write_prio;
|
||||
short error;
|
||||
|
||||
unsigned recoverable:1;
|
||||
unsigned unaligned_bvec:1;
|
||||
|
||||
unsigned write:1;
|
||||
unsigned writeback:1;
|
||||
|
||||
unsigned csum:1;
|
||||
unsigned bypass:1;
|
||||
unsigned writeback:1;
|
||||
unsigned flush_journal:1;
|
||||
unsigned csum:1;
|
||||
|
||||
unsigned replace:1;
|
||||
unsigned replace_collision:1;
|
||||
|
||||
unsigned insert_data_done:1;
|
||||
unsigned replace:1;
|
||||
unsigned insert_collision:1;
|
||||
|
||||
uint16_t write_prio;
|
||||
|
||||
/* IO error returned to s->bio */
|
||||
short error;
|
||||
unsigned long start_time;
|
||||
|
||||
struct btree_op op;
|
||||
|
||||
/* Anything past this point won't get zeroed in search_alloc() */
|
||||
struct keylist insert_keys;
|
||||
|
Reference in New Issue
Block a user