1 #ifndef TARGET_CORE_IBLOCK_H
2 #define TARGET_CORE_IBLOCK_H
3 
4 #define IBLOCK_VERSION		"4.0"
5 
6 #define IBLOCK_MAX_CDBS		16
7 #define IBLOCK_LBA_SHIFT	9
8 
9 struct iblock_req {
10 	struct se_task ib_task;
11 	unsigned char ib_scsi_cdb[TCM_MAX_COMMAND_SIZE];
12 	atomic_t ib_bio_cnt;
13 	atomic_t ib_bio_err_cnt;
14 } ____cacheline_aligned;
15 
16 #define IBDF_HAS_UDEV_PATH		0x01
17 
18 struct iblock_dev {
19 	unsigned char ibd_udev_path[SE_UDEV_PATH_LEN];
20 	u32	ibd_flags;
21 	struct bio_set	*ibd_bio_set;
22 	struct block_device *ibd_bd;
23 	struct iblock_hba *ibd_host;
24 } ____cacheline_aligned;
25 
26 struct iblock_hba {
27 	int		iblock_host_id;
28 } ____cacheline_aligned;
29 
30 #endif /* TARGET_CORE_IBLOCK_H */
31