diff options
author | Edward Tomasz Napierala <trasz@FreeBSD.org> | 2013-08-24 01:50:31 +0000 |
---|---|---|
committer | Edward Tomasz Napierala <trasz@FreeBSD.org> | 2013-08-24 01:50:31 +0000 |
commit | 81a2151d5c8f2a1cf1cdf4078b4071e1779aea40 (patch) | |
tree | 52dcb94d89496617616c044e5b34ab0f832f6721 /sys/cam/ctl/ctl_frontend.h | |
parent | 83b6a67e66d3bcf5fc9f0f767409a7109356f1e0 (diff) | |
download | src-81a2151d5c8f2a1cf1cdf4078b4071e1779aea40.tar.gz src-81a2151d5c8f2a1cf1cdf4078b4071e1779aea40.zip |
CTL changes required for iSCSI target, most notably LUN remapping
and a mechanism to allow CTL frontends for retrieving LUN options.
Reviewed by: ken (earlier version)
Notes
Notes:
svn path=/head/; revision=254759
Diffstat (limited to 'sys/cam/ctl/ctl_frontend.h')
-rw-r--r-- | sys/cam/ctl/ctl_frontend.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/cam/ctl/ctl_frontend.h b/sys/cam/ctl/ctl_frontend.h index b286476c06bf..23f91b4a810e 100644 --- a/sys/cam/ctl/ctl_frontend.h +++ b/sys/cam/ctl/ctl_frontend.h @@ -49,6 +49,9 @@ typedef enum { typedef void (*port_func_t)(void *onoff_arg); typedef int (*targ_func_t)(void *arg, struct ctl_id targ_id); typedef int (*lun_func_t)(void *arg, struct ctl_id targ_id, int lun_id); +typedef int (*fe_ioctl_t)(struct cdev *dev, u_long cmd, caddr_t addr, int flag, + struct thread *td); +typedef int (*fe_devid_t)(struct ctl_scsiio *ctsio, int alloc_len); /* * The ctl_frontend structure is the registration mechanism between a FETD @@ -213,6 +216,8 @@ struct ctl_frontend { targ_func_t targ_disable; /* passed to CTL */ lun_func_t lun_enable; /* passed to CTL */ lun_func_t lun_disable; /* passed to CTL */ + fe_ioctl_t ioctl; /* passed to CTL */ + fe_devid_t devid; /* passed to CTL */ void *targ_lun_arg; /* passed to CTL */ void (*fe_datamove)(union ctl_io *io); /* passed to CTL */ void (*fe_done)(union ctl_io *io); /* passed to CTL */ |