All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Duncan <lduncan@suse.com>
To: "Kai Mäkisara" <kai.makisara@kolumbus.fi>
Cc: linux-scsi@vger.kernel.org
Subject: Re: [PATCH] [SCSI] st: expand ability to write immediate filemarks
Date: Thu, 01 Mar 2012 08:44:16 -0800	[thread overview]
Message-ID: <4F4FA760.6090900@suse.com> (raw)
In-Reply-To: <4F4DCE31.1000001@kolumbus.fi>

Kai:

Your argument makes sense. I will resubmit the patch without the module
variable, and with a little more added to the documentation concerning
the possible dangers of writing immediate EOFs.

On 02/28/2012 11:05 PM, Kai Mäkisara wrote:
> On 02/29/2012 12:03 AM, Lee Duncan wrote:
>> Hi Kai:
>>
>> Thanks for your response ...
>>
>> On 02/28/2012 11:40 AM, Kai Makisara wrote:
>>> On Wed, 15 Feb 2012, Lee Duncan wrote:
>>>
>>>> The st tape driver recently added the MTWEOFI ioctl, which writes
>>>> a tape filemark (EOF), like the MTWEOF ioctl, except that MTWEOFI
>>>> returns immediately. This makes certain applications, like backup
>>>> software, run much more quickly on buffered tape drives.
>>>>
> ...
>>>>
>>>>   static int st_dev_max;
>>>>   static int st_nr_dev;
>>>> @@ -103,6 +104,8 @@ module_param_named(max_sg_segs, max_sg_segs,
>>>> int, 0);
>>>>   MODULE_PARM_DESC(max_sg_segs, "Maximum number of scatter/gather
>>>> segments to use (256)");
>>>>   module_param_named(try_direct_io, try_direct_io, int, 0);
>>>>   MODULE_PARM_DESC(try_direct_io, "Try direct I/O between user
>>>> buffer and tape drive (1)");
>>>> +module_param_named(st_nowait_eof, st_nowait_eof, int, 0);
>>>> +MODULE_PARM_DESC(st_nowait_eof, "Do not wait when writing EOF
>>>> (filemark) (0)");
>>>>
>>>
>>> I think this should not be a module option. The property should be
>>> settable only as a mode option like other options of this kind.
>>> (I may have not written this clearly in my previous reply).
>>>
>>
>> I respectfully disagree.
>>
>> There are legacy applications, such as the IBM network backup program
>> that sparked this
>> bug fix. Such applications do not know about the capability added by
>> this patch, just as
>> they do not know about the relatively new MTWEOFI ioctl. Hence the
>> module option is a
>> convenient method for such applications to achieve increased throughput.
>>
> You may not have fully understood what there mode options mean in
> practice. For each physical tape, you have up to four different device
> files (modes; eight if you count both auto-rewind and non-rewind
> devices). Each can be programmed with different characteristics using
> the ioctls. For instance, you can have /dev/nst0a which uses "normal"
> WEOF and /dev/nst0b which uses immediate WEOF. If you want the program
> to benefit from immeadiate WEOFs, you tell it to use /dev/nst0b. The
> program does not have to know anything about the new options.
> 
> The system should configure the devices when detected, according to the
> choices made by the system manager. I once made a proof-of-concept
> program stinit for this purpose. mt can also be used for this. The trend
> is systems has for tens of years to move from boot-time configuration to
> run-time configuration.
> 
>> I agree there is a small risk of loosing errors or error context when
>> writing immediate
>> filemarks, but is the same problem that already exists in the case of
>> the MTWEOFI ioctl.
>>
> Yes, but in case of MWEOFI, the programmer takes a calculated risk. For
> instance, he/she can use MTWEOF for the last filemark to catch the
> errors (or just look at possible errors from close()). The defaults are
> safe. In case of a module option, the default for the unsuspecting user
> is unsafe.
> 
>> I would be glad to add a section in the st documentation that mentions
>> the dangers of
>> writing immediate filemarks, if you think that would help clarify
>> usage of this feature.
>>
> It helps clarity but it does not remove the danger.
> 
> Kai
> -- 
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
Lee Duncan
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2012-03-01 16:44 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-15 20:11 [PATCH] [SCSI] st: expand ability to write immediate filemarks Lee Duncan
2012-02-28 19:40 ` Kai Makisara
2012-02-28 22:03   ` Lee Duncan
2012-02-29  7:05     ` Kai Mäkisara
2012-03-01 16:44       ` Lee Duncan [this message]
  -- strict thread matches above, loose matches on Subject: below --
2012-03-01 20:41 [PATCH] SCSI " Lee Duncan
2012-03-04 20:09 ` Kai Makisara

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=4F4FA760.6090900@suse.com \
    --to=lduncan@suse.com \
    --cc=kai.makisara@kolumbus.fi \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.