#ifndef TARGET_CORE_IBLOCK_H #define TARGET_CORE_IBLOCK_H #define IBLOCK_VERSION "4.0" #define IBLOCK_HBA_QUEUE_DEPTH 512 #define IBLOCK_DEVICE_QUEUE_DEPTH 32 #define IBLOCK_MAX_DEVICE_QUEUE_DEPTH 128 #define IBLOCK_MAX_CDBS 16 #define IBLOCK_LBA_SHIFT 9 struct iblock_req { struct se_task ib_task; unsigned char ib_scsi_cdb[TCM_MAX_COMMAND_SIZE]; atomic_t ib_bio_cnt; atomic_t ib_bio_err_cnt; struct bio *ib_bio; struct iblock_dev *ib_dev; } ____cacheline_aligned; #define IBDF_HAS_UDEV_PATH 0x01 #define IBDF_HAS_FORCE 0x02 struct iblock_dev { unsigned char ibd_udev_path[SE_UDEV_PATH_LEN]; int ibd_force; int ibd_major; int ibd_minor; u32 ibd_depth; u32 ibd_flags; struct bio_set *ibd_bio_set; struct block_device *ibd_bd; struct iblock_hba *ibd_host; } ____cacheline_aligned; struct iblock_hba { int iblock_host_id; } ____cacheline_aligned; #endif /* TARGET_CORE_IBLOCK_H */