From: Douglas Gilbert <dgilbert@interlog.com>
To: Newtech Tan <tan@newtech.co.jp>
Cc: linux-scsi@vger.kernel.org
Subject: Re: how to use SES driver to send SES commands?
Date: Mon, 02 Dec 2013 15:53:07 +0100 [thread overview]
Message-ID: <529C9ED3.8080600@interlog.com> (raw)
In-Reply-To: <20131202101210.62B1.46AD7750@newtech.co.jp>
I'm not sure what you expect from the ses driver
in the kernel. If it likes an SES device (and it
doesn't like some of them) then you will get a
small, but useful, set of "knobs" to twiddle and
read in sysfs. As far as I can see the ses driver does
not create any device nodes (as found in /dev). This
means there is no way to extend it by using the SG_IO
ioctl to send SCSI commands to the enclosure via
the ses driver. And there is no need since the sg and
bsg drivers already give you that capability.
Your question is vague, if by "send SES commands" you
are referring to SCSI commands then again my advice is
to look at what sg_senddiag and sg_ses do. If that is not
what you want then write something yourself using the
SG_IO ioctl on a bsg or sg device node.
Doug Gilbert
On 13-12-02 02:12 AM, Newtech Tan wrote:
> Hi Douglas
>
> Thanks for your kind reply.
>
> sg_senddiag is the sg_ses utility. But i want to use SES driver(linux/driver/scsi/ses.c), do you have any advice?
>
>
>> On 13-11-29 05:07 AM, Newtech Tan wrote:
>>> Hi friends
>>>
>>> I subscribed the mailing list just now. Would you please to give me help?
>>>
>>> Who can tell me how to use SES driver(linux/driver/scsi/ses.c) to send SES command(SEND DIAGNOSTIC, RECEIVE DIAGNOSTIC RESULTS) in my linux program?
>>> (I don't want to use sg_ses.)
>>
>> Then look at the source for sg_senddiag (sg_senddiag.c).
>> Your SES device is either /dev/sg2 or /dev/bsg/4:0:0:0
>>
>>> The following is my system info. /dev/sg2 is my SES device.
>>>
>>> [root@tan-sl dev]# lsscsi -g
>>> [0:0:0:0] cd/dvd HL-DT-ST DVD+-RW GSA-H53N B104 /dev/sr0 /dev/sg0
>>> [3:0:0:0] disk ATA TOSHIBA MK8061GS ME0A /dev/sda /dev/sg1
>>> [4:0:0:0] enclosu LSI SAS616x 0502 - /dev/sg2
>>>
>>> [root@tan-sl enclosure]# pwd
>>> /sys/class/enclosure
>>> [root@tan-sl enclosure]# ls -l
>>> total 0
>>> lrwxrwxrwx 1 root root 0 Nov 29 14:51 4:0:0:0 -> ../../devices/pci0000:00/0000:00:1c.0/0000:02:00.0/host4/port-4:0/expan
>>> der-4:0/port-4:0:0/end_device-4:0:0/target4:0:0/4:0:0:0/enclosure/4:0:0:0
>>>
>>> in linux, I can't find ses device. Under /sys/class/enclosure, folder 4:0:0:0 existed.
>>>
>>> I will apprectiate for your help.
next prev parent reply other threads:[~2013-12-02 14:53 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-29 10:07 how to use SES driver to send SES commands? Newtech Tan
2013-11-29 12:50 ` Douglas Gilbert
2013-12-02 1:12 ` Newtech Tan
2013-12-02 14:53 ` Douglas Gilbert [this message]
2013-12-04 0:42 ` Newtech Tan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=529C9ED3.8080600@interlog.com \
--to=dgilbert@interlog.com \
--cc=linux-scsi@vger.kernel.org \
--cc=tan@newtech.co.jp \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox