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 struct bio *ib_bio; 15 struct iblock_dev *ib_dev; 16 } ____cacheline_aligned; 17 18 #define IBDF_HAS_UDEV_PATH 0x01 19 20 struct iblock_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 struct iblock_hba *ibd_host; 26 } ____cacheline_aligned; 27 28 struct iblock_hba { 29 int iblock_host_id; 30 } ____cacheline_aligned; 31 32 #endif /* TARGET_CORE_IBLOCK_H */ 33