New iSCSI stack.

Outback Dingo outbackdingo at gmail.com
Thu Sep 5 20:03:32 UTC 2013


On Thu, Sep 5, 2013 at 2:47 PM, Miroslav Lachman <000.fbsd at quip.cz> wrote:

> Edward Tomasz Napierała wrote:
>
>> Wiadomość napisana przez Ivan Voras<ivoras at freebsd.org>  w dniu 5 wrz
>> 2013, o godz. 13:18:
>>
>>> On 05/09/2013 12:27, Edward Tomasz Napierała wrote:
>>>
>>>> Hello.  At http://people.freebsd.org/~**trasz/cfiscsi-20130904.diff<http://people.freebsd.org/~trasz/cfiscsi-20130904.diff>you'll find
>>>> a patch which adds the new iSCSI initiator and target, against
>>>> 10-CURRENT.
>>>> To use the new initiator, start with "man iscsictl".  For the target -
>>>> "man
>>>> ctld".
>>>>
>>>
>>> Just a naming question: "ctld" could mean anything, I'd parse it as a
>>> "control deamon" or something like that. Could you name it something
>>> which reminds the user of iscsi? Like iscsictld?
>>>
>>
>> As the man page says, ctld is "CAM Target Layer / iSCSI target daemon".
>> Sure, right now it's pretty iSCSI-specific, but it doesn't need to be -
>> it can
>> be extended to just manage CTL configuration (e.g. for Fibre Channel),
>> or to support other CTL-backed storage protocols, such as FCoE.
>>
>> It's just a helper daemon for ctl(4) - thus, ctld(8).  And in case someone
>> does "man -k iscsi", there is the "iSCSI target" in the manual page title.
>>
>
> I understand your explanation, but still thinking rc.conf variables are
> really confusing and unintuitive:
>
> iscsid_enable
> iscsictl_enable
> ctld_enable
>
> I cannot tell what they control just by their names and the same apply for
> services names.
>
> "If I want to restart iscsi target, should I use 'service iscsid restart'
> or 'service iscsictl restart'? ... oh wait, it should be 'service ctld
> restart'"
>
> I think it should be more user friendly. Something as Apache 2.2.x has
> httpd and httpd.conf, but users are using 'service apache22 restart' and
> 'apache22_enable="YES"', because there can be more "http" daemons.
>
> My $0.02
>
>
Just an FYI 10_CURRENT svn info
Path: .
Working Copy Root Path: /usr/src
URL: http://svn.freebsd.org/base/head
Relative URL: ^/head
Repository Root: http://svn.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 255253
Node Kind: directory
Schedule: normal
Last Changed Author: sjg
Last Changed Rev: 255253
Last Changed Date: 2013-09-05 11:57:26 -0400 (Thu, 05 Sep 2013)


cc  -O2 -pipe  -I/usr/src/usr.sbin/ctld -I/usr/src/usr.sbin/ctld/../../sys
-I/usr/src/usr.sbin/ctld/../../sys/cam/ctl
-I/usr/src/usr.sbin/ctld/../../sys/dev/iscsi -std=gnu99 -Qunused-arguments
-fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
-Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
-Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow
-Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs
-Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wno-empty-body
-Wno-string-plus-int -c /usr/src/usr.sbin/ctld/ctld.c
cc  -O2 -pipe  -I/usr/src/usr.sbin/ctld -I/usr/src/usr.sbin/ctld/../../sys
-I/usr/src/usr.sbin/ctld/../../sys/cam/ctl
-I/usr/src/usr.sbin/ctld/../../sys/dev/iscsi -std=gnu99 -Qunused-arguments
-fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
-Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
-Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow
-Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs
-Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wno-empty-body
-Wno-string-plus-int -c /usr/src/usr.sbin/ctld/discovery.c
cc  -O2 -pipe  -I/usr/src/usr.sbin/ctld -I/usr/src/usr.sbin/ctld/../../sys
-I/usr/src/usr.sbin/ctld/../../sys/cam/ctl
-I/usr/src/usr.sbin/ctld/../../sys/dev/iscsi -std=gnu99 -Qunused-arguments
-fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
-Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
-Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow
-Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs
-Wredundant-decls -Wold-style-definition -Wno-pointer-sign -Wno-empty-body
-Wno-string-plus-int -c /usr/src/usr.sbin/ctld/kernel.c
/usr/src/usr.sbin/ctld/kernel.c:762:35: error: incompatible integer to
pointer conversion passing 'unsigned long long' to parameter of type 'const
cap_rights_t *' (aka 'const struct cap_rights *') [-Werror,-Wint-conversion]
        error = cap_rights_limit(ctl_fd, CAP_IOCTL);
                                         ^~~~~~~~~
/usr/src/usr.sbin/ctld/../../sys/sys/capability.h:197:20: note: expanded
from macro 'CAP_IOCTL'
#define CAP_IOCTL               CAPRIGHT(1, 0x0000000000000080ULL)
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/usr.sbin/ctld/../../sys/sys/capability.h:53:28: note: expanded
from macro 'CAPRIGHT'
#define CAPRIGHT(idx, bit)      ((1ULL << (57 + (idx))) | (bit))
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/src/usr.sbin/ctld/../../sys/sys/capability.h:327:50: note: passing
argument to parameter 'rights' here
int cap_rights_limit(int fd, const cap_rights_t *rights);
                                                 ^
1 error generated.
*** Error code 1

Stop.
make[4]: stopped in /usr/src/usr.sbin/ctld



> Miroslav Lachman
>
> ______________________________**_________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/**mailman/listinfo/freebsd-**current<http://lists.freebsd.org/mailman/listinfo/freebsd-current>
> To unsubscribe, send any mail to "freebsd-current-unsubscribe@**
> freebsd.org <freebsd-current-unsubscribe at freebsd.org>"
>


More information about the freebsd-scsi mailing list