1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _BCACHEFS_BTREE_NODE_SCAN_TYPES_H
3 #define _BCACHEFS_BTREE_NODE_SCAN_TYPES_H
4 
5 #include "darray.h"
6 
7 struct found_btree_node {
8 	bool			range_updated:1;
9 	u8			btree_id;
10 	u8			level;
11 	unsigned		sectors_written;
12 	u32			seq;
13 	u64			journal_seq;
14 	u64			cookie;
15 
16 	struct bpos		min_key;
17 	struct bpos		max_key;
18 
19 	unsigned		nr_ptrs;
20 	struct bch_extent_ptr	ptrs[BCH_REPLICAS_MAX];
21 };
22 
23 typedef DARRAY(struct found_btree_node)	found_btree_nodes;
24 
25 struct find_btree_nodes {
26 	int			ret;
27 	struct mutex		lock;
28 	found_btree_nodes	nodes;
29 };
30 
31 #endif /* _BCACHEFS_BTREE_NODE_SCAN_TYPES_H */
32