Add some stuff to make it easier to figure out for the system administrator

whether the ICL_KERNEL_PROXY stuff got compiled in correctly.

Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Edward Tomasz Napierala 2014-04-16 10:18:44 +00:00
parent ba3a2d31c8
commit 2ebde326cb
3 changed files with 25 additions and 2 deletions

View File

@ -75,6 +75,10 @@ __FBSDID("$FreeBSD$");
#include <sys/socketvar.h>
#endif
#ifdef ICL_KERNEL_PROXY
FEATURE(cfiscsi_kernel_proxy, "iSCSI target built with ICL_KERNEL_PROXY");
#endif
static MALLOC_DEFINE(M_CFISCSI, "cfiscsi", "Memory used for CTL iSCSI frontend");
static uma_zone_t cfiscsi_data_wait_zone;
@ -1960,7 +1964,18 @@ cfiscsi_ioctl(struct cdev *dev,
case CTL_ISCSI_CLOSE:
cfiscsi_ioctl_close(ci);
break;
#endif /* ICL_KERNEL_PROXY */
#else
case CTL_ISCSI_LISTEN:
case CTL_ISCSI_ACCEPT:
case CTL_ISCSI_SEND:
case CTL_ISCSI_RECEIVE:
case CTL_ISCSI_CLOSE:
ci->status = CTL_ISCSI_ERROR;
snprintf(ci->error_str, sizeof(ci->error_str),
"%s: CTL compiled without ICL_KERNEL_PROXY",
__func__);
break;
#endif /* !ICL_KERNEL_PROXY */
default:
ci->status = CTL_ISCSI_ERROR;
snprintf(ci->error_str, sizeof(ci->error_str),

View File

@ -617,7 +617,11 @@ typedef enum {
CTL_ISCSI_LIST,
CTL_ISCSI_LOGOUT,
CTL_ISCSI_TERMINATE,
#ifdef ICL_KERNEL_PROXY
#if defined(ICL_KERNEL_PROXY) || 1
/*
* We actually need those in all cases, but leave the ICL_KERNEL_PROXY,
* to remember to remove them along with rest of proxy code, eventually.
*/
CTL_ISCSI_LISTEN,
CTL_ISCSI_ACCEPT,
CTL_ISCSI_SEND,

View File

@ -66,6 +66,10 @@
#include <sys/socketvar.h>
#endif
#ifdef ICL_KERNEL_PROXY
FEATURE(iscsi_kernel_proxy, "iSCSI initiator built with ICL_KERNEL_PROXY");
#endif
/*
* XXX: This is global so the iscsi_unload() can access it.
* Think about how to do this properly.