cvs commit: src/sys/cam/scsi scsi_sg.c scsi_sg.h
src/sys/modules/cam Makefile src/sys/conf NOTES files src/sys/compat/linux
linux_ioctl.c linux_ioctl.h
mjacob at freebsd.org
mjacob at freebsd.org
Mon Apr 9 19:01:48 UTC 2007
I didn't have the time- Doug is kinda pissed at me because of that.
On Mon, 9 Apr 2007, Scott Long wrote:
> I guess this work never got into ports? I'd like to see if there, even if
> it's augmented with other non-CAM versions.
>
> Scott
>
>
> Kenneth D. Merry wrote:
>> That's a pretty neat trick! Thanks Scott!
>>
>> For what it's worth, Doug Gilbert already ported sg3_utils and sdparm to
>> CAM a while back. I see a message from him to -scsi in March, 2006,
>> announcing it.
>>
>> Ken
>>
>> On Sat, Apr 07, 2007 at 18:02:12 -0600, Scott Long wrote:
>>> To tell you the truth, the SG device has one of the worst programming
>>> interfaces that I've ever seen. Even the various official docs on it
>>> complain about how bad it is. I've written apps for CAM, including a
>>> swiss-army-knife java-based management app, and CAM is vastly superior.
>>> I tried porting the app to linux and gave up due to how limited and
>>> unpleasant it was. From the kernel side, it's even scarier.
>>>
>>> But beyond that, the work I committed here was about opening up FreeBSD
>>> to more storage management opportunities. So I'm happy with whatever
>>> anyone wants to do with it that furthers that goal. I'd like to see
>>> the native interface be used as a bridge to help introduce programmers
>>> to FreeBSD and CAM; if the sg3_utils package is a step in that
>>> direction or if it provides tools that camcontrol doesn't, then go for
>>> it.
>>>
>>> Scott
>>>
>>>
>>> mjacob at freebsd.org wrote:
>>>> Cool- does this mean we should commit sg3_utils to ports then?
>>>>
>>>> On Sat, 7 Apr 2007, Scott Long wrote:
>>>>
>>>>> scottl 2007-04-07 19:40:58 UTC
>>>>>
>>>>> FreeBSD src repository
>>>>>
>>>>> Modified files:
>>>>> sys/modules/cam Makefile
>>>>> sys/conf files NOTES
>>>>> sys/compat/linux linux_ioctl.c linux_ioctl.h
>>>>> Added files:
>>>>> sys/cam/scsi scsi_sg.c scsi_sg.h
>>>>> Log:
>>>>> Add the CAM 'SG' peripheral device. This device implements a subset of
>>>>> the
>>>>> Linux SCSI SG passthrough device API. The intention is to allow for
>>>>> both
>>>>> running of Linux apps that want to talk to /dev/sg* nodes, and to
>>>>> facilitate
>>>>> porting of apps from Linux to FreeBSD. As such, both native and
>>>>> linuxolator
>>>>> entry points and definitions are provided.
>>>>>
>>>>> Caveats:
>>>>> - This does not support the procfs and sysfs nodes that the Linux SG
>>>>> driver provides. Some Linux apps may rely on these for operation,
>>>>> others may only use them for informational purposes.
>>>>> - More ioctls need to be implemented.
>>>>> - Linux uses a naming scheme of "sg[a-z]" for devices, while FreeBSD
>>>>> uses a
>>>>> scheme of "sg[0-9]". Devfs aliasis (symlinks) are automatically
>>>>> created
>>>>> to link the two together. However, tools like camcontrol only see
>>>>> the
>>>>> native names.
>>>>> - Some operations were originally designed to return byte counts or
>>>>> other
>>>>> data directly as the syscall return value. The linuxolator doesn't
>>>>> appear
>>>>> to support this well, so this driver just punts for these cases.
>>>>>
>>>>> Now that the driver is in place, others are welcome to add missing
>>>>> functionality. Thanks to Roman Divacky for pushing this work along.
>>>>>
>>>>> Revision Changes Path
>>>>> 1.1 +987 -0 src/sys/cam/scsi/scsi_sg.c (new)
>>>>> 1.1 +139 -0 src/sys/cam/scsi/scsi_sg.h (new)
>>>>> 1.138 +27 -0 src/sys/compat/linux/linux_ioctl.c
>>>>> 1.25 +34 -0 src/sys/compat/linux/linux_ioctl.h
>>>>> 1.1419 +5 -0 src/sys/conf/NOTES
>>>>> 1.1191 +1 -0 src/sys/conf/files
>>>>> 1.15 +1 -0 src/sys/modules/cam/Makefile
>>>>>
>>
>
>
More information about the cvs-src
mailing list