linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kay Sievers <kay.sievers@vrfy.org>
To: Jean Delvare <khali@linux-fr.org>
Cc: Tejun Heo <tj@kernel.org>, Greg KH <gregkh@suse.de>,
	mingo@elte.hu, tglx@linutronix.de, bphilips@suse.de,
	yinghai@kernel.org, akpm@linux-foundation.org,
	torvalds@linux-foundation.org, linux-kernel@vger.kernel.org,
	jeff@garzik.org, linux-ide@vger.kernel.org,
	stern@rowland.harvard.edu
Subject: Re: [PATCH 12/12] usb: use IRQ watching
Date: Tue, 15 Jun 2010 15:30:14 +0200	[thread overview]
Message-ID: <AANLkTinnpbSVfA1vWWDdVHy0UpLh-SlAXXg0o54OgXFi@mail.gmail.com> (raw)
In-Reply-To: <20100615130518.1a62210a@hyperion.delvare>

On Tue, Jun 15, 2010 at 13:05, Jean Delvare <khali@linux-fr.org> wrote:
> On Tue, 15 Jun 2010 12:30:00 +0200, Kay Sievers wrote:
>> On Tue, Jun 15, 2010 at 00:19, Tejun Heo <tj@kernel.org> wrote:
>> > Hmm... maybe what we can do is generating an uevent when an IRQ is
>> > confirmed to be bad and then let udev notify the user.  That way we'll
>> > probably have better chance of getting bug reports and users have
>> > whiny but working system.
>>
>> Not really, uevents are not picked up by anything that could report an
>> error to userspace, they are just seen by udev. Also uevents are
>> usually not the proper passing method. They are not meant to ever
>> transport higher frequency events, or structured data. They cause to
>> run the entire udev rule matching machine, and update symlinks and
>> permissions with every event.
>>
>> We will need some better error reporting facility. On Linux you don't
>> even get notified when the kernel mounts your filesystem read-only
>> because of an error. It will only end up in 'dmesg' as a pretty much
>> undefined bunch of words. :)
>>
>> We will need some generic error reporting facility, with structured
>> data exported, and where userspace stuff can subscribe to.
>> Uevents/udev can not really properly provide such infrastructure.
>> Maybe that can be extended somehow, but using kobject_uevent() and
>> trigger the usual udev rule engine is not what we are looking for, for
>> sane error reporting.
>
> Random idea of the day (I don't know anything about it all): let the
> kernel connect to D-Bus and use it somehow?

Yeah, D-Bus is an peer-to-peer IPC mechanism/protocol. The D-Bus
daemon can filter and multiplex/distibute messages.

It's very similar to what we can do with netlink. The netlink
multicast stuff can even provide lots of the functionality the D-Bus
daemon provides.

I think we should avoid the D-Bus complexity for the very low-level
stuff. Very much like udev is not using it, but has efficient
in-kernel message filtering based on Berkeley Packet Filters, and
multiple listeners event subscription/distribution based on netlink
multicast functionality.

Not sure if netlink is the right answer here, but it's surely easier
to handle than D-Bus, and would provide a very similar functionality.

Kay

  reply	other threads:[~2010-06-15 13:30 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-13 15:31 [PATCHSET] irq: better lost/spurious irq handling Tejun Heo
2010-06-13 15:31 ` [PATCH 01/12] irq: cleanup irqfixup Tejun Heo
2010-06-13 15:31 ` [PATCH 02/12] irq: make spurious poll timer per desc Tejun Heo
2010-06-15  5:10   ` Konrad Rzeszutek Wilk
2010-06-15 16:34     ` Tejun Heo
2010-06-13 15:31 ` [PATCH 03/12] irq: use desc->poll_timer for irqpoll Tejun Heo
2010-06-13 15:31 ` [PATCH 04/12] irq: kill IRQF_IRQPOLL Tejun Heo
2010-06-13 15:31 ` [PATCH 05/12] irq: misc preparations for further changes Tejun Heo
2010-06-13 15:31 ` [PATCH 06/12] irq: implement irq_schedule_poll() Tejun Heo
2010-06-13 15:31 ` [PATCH 07/12] irq: improve spurious IRQ handling Tejun Heo
2010-06-13 15:31 ` [PATCH 08/12] irq: implement IRQ watching Tejun Heo
2010-06-13 15:31 ` [PATCH 09/12] irq: implement IRQ expecting Tejun Heo
2010-06-14  9:21   ` Jiri Slaby
2010-06-14  9:43     ` Tejun Heo
2010-06-14  9:46       ` Tejun Heo
2010-06-17  3:48   ` Arjan van de Ven
2010-06-17  8:18     ` Tejun Heo
2010-06-17 11:12       ` Thomas Gleixner
2010-06-17 11:23         ` Tejun Heo
2010-06-17 11:43           ` Alan Cox
2010-06-17 15:54             ` Tejun Heo
2010-06-17 16:02               ` Arjan van de Ven
2010-06-17 16:47                 ` Tejun Heo
2010-06-18  6:26                   ` Arjan van de Ven
2010-06-18  9:23                     ` Tejun Heo
2010-06-18  9:45                       ` Thomas Gleixner
2010-06-19  8:35     ` Andi Kleen
2010-06-19  8:42       ` Tejun Heo
2010-06-19  9:00         ` Andi Kleen
2010-06-19  9:03           ` Tejun Heo
2010-06-19 14:54           ` Arjan van de Ven
2010-06-19 19:49             ` Andi Kleen
2010-06-19 20:07               ` Arjan van de Ven
2010-06-13 15:31 ` [PATCH 10/12] irq: add comment about overall design of lost/spurious IRQ handling Tejun Heo
2010-06-13 15:31 ` [PATCH 11/12] libata: use IRQ expecting Tejun Heo
2010-06-13 15:31 ` [PATCH 12/12] usb: use IRQ watching Tejun Heo
2010-06-14 21:41   ` Greg KH
2010-06-14 21:52     ` Tejun Heo
2010-06-14 22:11       ` Greg KH
2010-06-14 22:19       ` Tejun Heo
2010-06-15 10:30         ` Kay Sievers
2010-06-15 11:05           ` Jean Delvare
2010-06-15 13:30             ` Kay Sievers [this message]
2010-06-15 11:20           ` Tejun Heo
2010-06-15 13:36             ` Kay Sievers
2010-06-15 17:36               ` Tejun Heo
2010-06-15 17:47                 ` Greg KH
2010-06-15 17:52                   ` Tejun Heo
2010-06-21 13:51   ` Tejun Heo
2010-06-21 20:27     ` Greg KH
2010-06-22  7:32       ` Tejun Heo
     [not found] ` <1276443098-20653-12-git-send-email-tj@kernel.org>
2010-06-21 13:52   ` [PATCH 11/12] libata: use IRQ expecting Tejun Heo
2010-06-25  0:22   ` Jeff Garzik
2010-06-25  7:44     ` Tejun Heo
2010-06-25  9:48       ` Jeff Garzik
2010-06-25  9:51         ` Tejun Heo
2010-06-25 13:02           ` [PATCH 1/2 #upstream] sata_fsl,mv,nv: prepare for NCQ command completion update Tejun Heo
2010-06-25 13:03             ` [PATCH 2/2 #upstream] libata: always use ata_qc_complete_multiple() for NCQ command completions Tejun Heo
2010-08-17 22:03               ` Jeff Garzik
2010-08-01 23:47             ` [PATCH 1/2 #upstream] sata_fsl,mv,nv: prepare for NCQ command completion update Jeff Garzik
2010-08-02  7:18               ` Tejun Heo
2010-08-04  4:22                 ` Jeff Garzik
2010-06-26  3:45       ` [PATCH 11/12] libata: use IRQ expecting Jeff Garzik
2010-06-26  3:52         ` Jeff Garzik
2010-06-26  8:31         ` Tejun Heo
2010-06-26  9:16           ` Jeff Garzik
2010-06-26  9:44             ` Tejun Heo
2010-07-02 14:41               ` Tejun Heo
2010-07-02 14:53                 ` Tejun Heo
2010-07-10 10:06                 ` Tejun Heo
2010-07-14  7:58                   ` Jeff Garzik
2010-07-14  9:26                     ` Tejun Heo
2010-07-27 17:37                 ` Jeff Garzik
2010-07-02 14:59 ` [GIT PULL] irq: better lost/spurious irq handling Tejun Heo

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=AANLkTinnpbSVfA1vWWDdVHy0UpLh-SlAXXg0o54OgXFi@mail.gmail.com \
    --to=kay.sievers@vrfy.org \
    --cc=akpm@linux-foundation.org \
    --cc=bphilips@suse.de \
    --cc=gregkh@suse.de \
    --cc=jeff@garzik.org \
    --cc=khali@linux-fr.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=stern@rowland.harvard.edu \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    --cc=torvalds@linux-foundation.org \
    --cc=yinghai@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;
as well as URLs for NNTP newsgroup(s).