From: Jeff Garzik <jeff@garzik.org>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
Linux-SCSI <linux-scsi@vger.kernel.org>,
akpm@linux-foundation.org
Subject: Re: [PATCH v4 0/2] [SCSI] Asynchronous event notification infrastructure
Date: Mon, 29 Oct 2007 12:24:59 -0400 [thread overview]
Message-ID: <4726095B.6030508@garzik.org> (raw)
In-Reply-To: <1193674253.3383.38.camel@localhost.localdomain>
James Bottomley wrote:
> Ah, OK; I haven't communicated what we need very clearly. We need a way
> to see if the event is supported by the device, as well as a way to turn
> it off. For some of the events (possibly not the SATA AN one, since I
> know all SATA devices will be well behaved) there's going to be a need
> to deal with berserk or broken devices that become trigger happy, so
> turning off the event will be a useful (and possibly essential) way of
> coping.
That's possible with the presented interface[1]:
# see if event is supported
cat $path/evt_media_change
# turn off event to deal with broken/beserk devices
echo 0 > $path/evt_media_change
Some sillyhead can always do
echo 1 > $path/evt_some_event_my_device_does_not_support
but that will be obviously be a no-op because their device simply will
not send such events.
Granted ls(1) is no longer a method for viewing supported-at-boot-time
list of events -- ls(1) in the presented interface lists what events the
_kernel_ supports, and cat(1) is used to discover which events are
actually enabled.
I think that is the only difference between our two positions: [if I
understand you correctly] you want ls(1) to be able to list the device's
supported events. However, I feel that is inconsistent: for your
proposal, userspace must perform two checks in order to determine a
feature's availability: 1) does the file exist? 2) is the file context
non-zero?
Regards,
Jeff
[1] modulo my comment from the original email in this thread:
> * I was slack and did not bother to implement the 'set' operation
> for the attributes. This can easily be done at a later time in a
> separate patch.
next prev parent reply other threads:[~2007-10-29 16:25 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-29 14:42 [PATCH v4 0/2] [SCSI] Asynchronous event notification infrastructure Jeff Garzik
2007-10-29 14:42 ` [PATCH v4 1/2] SCSI: " Jeff Garzik
2007-10-29 15:51 ` James Bottomley
2007-10-29 16:07 ` Jeff Garzik
2007-10-29 16:17 ` James Bottomley
2007-10-29 16:29 ` Jeff Garzik
2007-10-29 17:01 ` James Bottomley
2007-10-29 21:31 ` [PATCH v5 0/2] SCSI asynchronous event notification API Jeff Garzik
2007-10-29 21:31 ` [PATCH v5 1/2] SCSI: add " Jeff Garzik
2007-10-29 21:31 ` [PATCH v5 2/2] libata: Utilize new SCSI event infrastructure Jeff Garzik
2007-10-29 14:42 ` [PATCH v4 " Jeff Garzik
2007-10-29 15:43 ` [PATCH v4 0/2] [SCSI] Asynchronous event notification infrastructure James Bottomley
2007-10-29 15:58 ` Jeff Garzik
2007-10-29 16:10 ` James Bottomley
2007-10-29 16:24 ` Jeff Garzik [this message]
2007-10-29 16:34 ` James Bottomley
2007-10-29 16:48 ` Jeff Garzik
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=4726095B.6030508@garzik.org \
--to=jeff@garzik.org \
--cc=James.Bottomley@SteelEye.com \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--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.