From: Thomas Gleixner <tglx@linutronix.de>
To: Guenter Roeck <guenter.roeck@ericsson.com>
Cc: Greg KH <gregkh@linuxfoundation.org>,
Jidong Xiao <jidong.xiao@gmail.com>,
Kernel development list <linux-kernel@vger.kernel.org>
Subject: Re: Can we move device drivers into user-space?
Date: Thu, 1 Mar 2012 10:54:33 +0100 (CET) [thread overview]
Message-ID: <alpine.LFD.2.02.1203010932070.2742@ionos> (raw)
In-Reply-To: <1330105668.23014.152.camel@groeck-laptop>
On Fri, 24 Feb 2012, Guenter Roeck wrote:
> On Fri, 2012-02-24 at 12:17 -0500, Greg KH wrote:
> > On Fri, Feb 24, 2012 at 09:07:09AM -0800, Guenter Roeck wrote:
> > > How about dropping UIO support from the kernel ? That would make more
> > > sense to me.
> >
> > Again, UIO solves a real need, are you to tell the users of that code
> > that somehow we are now not going to support them anymore?
> >
> > UIO was created when Thomas and I sat in the back of a conference
> > presentation and saw, for the umpteenth time, a presentation by someone
> > who was trying to write userspace drivers, and obviously didn't know
> > what they were doing.
> >
> > UIO provides a framework that actually works (unlike all of the previous
> > research papers were trying to do), and is used in real systems (laser
> > welding robots!) every day, manufacturing things that you use and rely
> > on.
> >
> > You remove UIO at the risk of pissing off those robots, the choice is
> > yours, I know I'm not going to do it...
>
> I understand the background and reasoning, but ...
>
> I have seen UIO used for networking drivers, hwmon drivers, I2C bus
> master drivers (with matching I2C client drivers in user-space), mfd
> devices, and so on. I have seen existing kernel drivers re-implemented
> as UIO drivers. I have seen UIO drivers where the kernel part of the
> driver is larger than the entire driver written as kernel driver. I have
> seen UIO drivers using polling instead of interrupts "because it is
> faster than interrupts".
>
> Often, those drivers are then re-written for the next board (to support
> the same chip) because they were not written with HW-independence in
> mind and don't support HW abstraction.
>
> Yes, there may be real need for UIO in some cases, but all I have seen
> it used for so far is what I would call abuse, resulting in maintenance
> nightmares.
UIO always had a clear target: devices which are application bound and
not related to any larger set of functonality (device class
frameworks, communication stacks, ...)
For that kind of devices in kernel drivers are overkill and
performance bottlenecks. The drivers which are in tree come with open
user space access libraries and are completely sane.
We can't punish the sane users for the asinnity of other people.
If people go there and abuse UIO for other purposes, we can't prevent
it. We can't prevent either that people write totally crappy kernel
drivers ...
> Given the choice, I would be quite happy to piss off some robots. Call
> it a prejudice if you like ;).
You might become less happy when the robot welds your ear onto a car
hood :)
Thanks,
tglx
next prev parent reply other threads:[~2012-03-01 9:54 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-23 4:56 Jidong Xiao
2012-02-23 15:57 ` Cong Wang
2012-02-23 16:34 ` Jidong Xiao
2012-02-23 20:48 ` david
2012-02-23 21:01 ` Jidong Xiao
2012-02-24 18:21 ` Mauro Carvalho Chehab
2012-02-25 15:10 ` Eduard - Gabriel Munteanu
2012-02-26 0:06 ` Mauro Carvalho Chehab
2012-02-26 0:29 ` Richard Yao
2012-02-27 11:31 ` Mauro Carvalho Chehab
2012-02-26 1:58 ` Dr. David Alan Gilbert
2012-02-26 3:34 ` arts zhao
2012-02-27 11:29 ` Mauro Carvalho Chehab
2012-02-25 15:31 ` Richard Yao
2012-02-23 21:18 ` Roland Dreier
2012-02-24 15:19 ` Jidong Xiao
2012-02-24 15:38 ` Greg KH
2012-02-24 16:38 ` Jidong Xiao
2012-02-24 16:54 ` Greg KH
2012-02-24 17:06 ` Jidong Xiao
2012-02-24 17:13 ` Greg KH
2012-02-24 17:21 ` Jidong Xiao
2012-02-24 17:31 ` Greg KH
2012-02-25 2:33 ` Richard Yao
2012-02-25 4:28 ` Jidong Xiao
2012-02-24 17:10 ` Al Viro
2012-02-25 19:23 ` Jidong Xiao
2012-02-25 20:55 ` Greg KH
2012-02-25 23:43 ` Jidong Xiao
2012-02-26 17:40 ` Greg KH
2012-02-26 22:46 ` Greg KH
2012-02-27 11:17 ` Bernd Petrovitsch
2012-02-24 17:07 ` Guenter Roeck
2012-02-24 17:17 ` Greg KH
2012-02-24 17:47 ` Guenter Roeck
2012-02-24 18:34 ` Greg KH
2012-02-24 19:15 ` Henrik Rydberg
2012-02-24 19:26 ` Greg KH
2012-02-24 20:10 ` Henrik Rydberg
2012-02-24 20:16 ` Greg KH
2012-02-24 20:37 ` Henrik Rydberg
2012-02-24 20:56 ` Greg KH
2012-02-24 21:22 ` Henrik Rydberg
2012-02-24 21:30 ` Ted Ts'o
2012-02-24 22:14 ` Henrik Rydberg
2012-02-24 22:20 ` Greg KH
2012-02-24 22:49 ` Henrik Rydberg
2012-02-24 22:54 ` Greg KH
2012-02-24 23:14 ` Henrik Rydberg
2012-02-25 12:15 ` Theodore Tso
2012-02-26 9:54 ` Henrik Rydberg
2012-02-26 4:56 ` Bobby Powers
2012-02-26 10:47 ` Henrik Rydberg
2012-02-26 12:26 ` Richard Yao
2012-02-26 14:23 ` Bernd Petrovitsch
2012-02-26 15:29 ` Henrik Rydberg
[not found] ` <365b85cee33d4f1aadc31336663de21c@HUBCAS2.cs.stonybrook.edu>
2012-02-26 15:05 ` Richard Yao
2012-02-26 20:30 ` Ted Ts'o
[not found] ` <09a5cca9cffb4300843f682be529e8ca@HUBCAS2.cs.stonybrook.edu>
2012-02-26 21:25 ` Richard Yao
2012-02-26 21:35 ` Theodore Tso
[not found] ` <10de0ef9fb5d44c08669191e12343a97@HUBCAS2.cs.stonybrook.edu>
2012-02-26 22:03 ` Richard Yao
2012-02-27 11:17 ` Bernd Petrovitsch
2012-02-26 23:08 ` david
2012-02-27 0:01 ` Henrik Rydberg
2012-02-27 0:53 ` david
2012-02-27 9:07 ` Henrik Rydberg
2012-03-01 9:54 ` Thomas Gleixner [this message]
2012-02-24 15:58 ` Valdis.Kletnieks
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=alpine.LFD.2.02.1203010932070.2742@ionos \
--to=tglx@linutronix.de \
--cc=gregkh@linuxfoundation.org \
--cc=guenter.roeck@ericsson.com \
--cc=jidong.xiao@gmail.com \
--cc=linux-kernel@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
Powered by JetHome