From: Douglas Gilbert <dougg@torque.net>
To: Adrian Bunk <bunk@fs.tum.de>
Cc: linux-scsi@vger.kernel.org
Subject: Re: SCSI sg: Questions regarding jiffies usage
Date: Mon, 12 Jul 2004 19:11:54 -0400 [thread overview]
Message-ID: <40F31ABA.1060709@torque.net> (raw)
In-Reply-To: <20040712224629.GY4701@fs.tum.de>
Adrian Bunk wrote:
> On Mon, Jul 12, 2004 at 03:35:06PM -0400, Douglas Gilbert wrote:
>
<snip/>
>>>In function sg_new_write:
>>> timeout = sg_ms_to_jif(srp->header.timeout);
>>>How is it possible that srp->header.timeout isn't already
>>>in jiffies?
>>
>>The sg_new_write() function is invoked when the sg_io_hdr
>>interface structure is used (compared with the older
>>sg_header structure). The unit of the timeout in the
>>sg_io_hdr structure is milliseconds [which is probably
>>overkill]. The mid level wants timeouts in jiffies.
>
>
> As far as I can see, timeout is set in two places:
>
> sg_add_sfp:
> sfp->timeout = SG_DEFAULT_TIMEOUT;
>
> sg_ioctl:
> sfp->timeout = MULDIV (val, HZ, USER_HZ);
>
> Isn't timeout set to jiffies in both places?
>
Adrian,
There may be some confusion here. The older struct
sg_header interface did not have explicit per command timeouts.
As a poor substitute an ioctl was added to associate
a timeout (in seconds) to the file descriptor. This way
subsequent commands issued via that file descriptor
got the new timeout value. This is the "sfp->timeout"
value. The snippets above show the "sfp->timeout"
value being set to a default when a sg device is opened
and then being changed after a SG_SET_TIMEOUT ioctl call.
The newer sg_io_hdr interface has per command timeouts
(in milliseconds). A sg_io_hdr::timeout value overrides
the "sfp->timeout" value. In the above code the
sg_io_hdr::timeout value is in "srp->header.timeout".
Doug Gilbert
next prev parent reply other threads:[~2004-07-12 23:11 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-07-11 0:41 SCSI sg: Questions regarding jiffies usage Adrian Bunk
2004-07-12 19:35 ` Douglas Gilbert
2004-07-12 22:46 ` Adrian Bunk
2004-07-12 23:11 ` Douglas Gilbert [this message]
2004-07-12 23:59 ` Adrian Bunk
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=40F31ABA.1060709@torque.net \
--to=dougg@torque.net \
--cc=bunk@fs.tum.de \
--cc=linux-scsi@vger.kernel.org \
/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