1 #ifndef TARGET_CORE_IBLOCK_H
2 #define TARGET_CORE_IBLOCK_H
3 
4 #include <linux/atomic.h>
5 #include <target/target_core_base.h>
6 
7 #define IBLOCK_VERSION		"4.0"
8 
9 #define IBLOCK_MAX_CDBS		16
10 #define IBLOCK_LBA_SHIFT	9
11 
12 struct iblock_req {
13 	atomic_t pending;
14 	atomic_t ib_bio_err_cnt;
15 } ____cacheline_aligned;
16 
17 #define IBDF_HAS_UDEV_PATH		0x01
18 
19 struct iblock_dev {
20 	struct se_device dev;
21 	unsigned char ibd_udev_path[SE_UDEV_PATH_LEN];
22 	u32	ibd_flags;
23 	struct bio_set	*ibd_bio_set;
24 	struct block_device *ibd_bd;
25 	bool ibd_readonly;
26 } ____cacheline_aligned;
27 
28 #endif /* TARGET_CORE_IBLOCK_H */
29