forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
824 B
39 lines
824 B
/* SPDX-License-Identifier: GPL-2.0 */ |
|
#ifndef TARGET_CORE_IBLOCK_H |
|
#define TARGET_CORE_IBLOCK_H |
|
|
|
#include <linux/atomic.h> |
|
#include <linux/refcount.h> |
|
#include <linux/blkdev.h> |
|
#include <target/target_core_base.h> |
|
|
|
#define IBLOCK_VERSION "4.0" |
|
|
|
#define IBLOCK_MAX_CDBS 16 |
|
|
|
struct iblock_req { |
|
refcount_t pending; |
|
atomic_t ib_bio_err_cnt; |
|
} ____cacheline_aligned; |
|
|
|
#define IBDF_HAS_UDEV_PATH 0x01 |
|
|
|
#define IBD_PLUGF_PLUGGED 0x01 |
|
|
|
struct iblock_dev_plug { |
|
struct se_dev_plug se_plug; |
|
struct blk_plug blk_plug; |
|
unsigned long flags; |
|
}; |
|
|
|
struct iblock_dev { |
|
struct se_device dev; |
|
unsigned char ibd_udev_path[SE_UDEV_PATH_LEN]; |
|
u32 ibd_flags; |
|
struct bio_set ibd_bio_set; |
|
struct block_device *ibd_bd; |
|
bool ibd_readonly; |
|
struct iblock_dev_plug *ibd_plug; |
|
} ____cacheline_aligned; |
|
|
|
#endif /* TARGET_CORE_IBLOCK_H */
|
|
|