Thread (20 messages) flat view 20 messages, 4 authors, 2012-05-25

Re: [git pull] Input updates for 3.5-rc0

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2012-05-24 18:02:04
Also in: lkml

On Thu, May 24, 2012 at 10:33:49AM -0700, Linus Torvalds wrote:
On Thu, May 24, 2012 at 1:32 AM, Dmitry Torokhov
[off-list ref] wrote:
quoted
Hi Linus,

to receive updates for the input subsystem. You will get:
I get an annoying conflict, and the reason I call it annoying is not
because it's hard to resolve, it's because doing that shows that you
seem to have preferred using

   dev_dbg(&input->dev.parent, ...)

over the much more natural

   dev_dbg(&input->dev, ...)

which would seem to make more sense.

Why? Are the input layer device names so bad that using them for debug
output is useless? And if so, why *are* they so bad?

I'm going to take your version over Greg's more straightforward one,
because I assume Greg did things a bit more mindlessly and I think you
presumably had a *reason* for your extra (stupid) ".parent" part. But
I'm unhappy with it, because I suspect the reason you did that implies
that the input layer does something bad.
A couple of points:

1. A driver should try to use the same device for all its messages and
input devices are not created yet at the time we try to bind USB
interface to a driver. Most (all?) USB probe() methods use interface's
device with dev_xxx() which shows exactly which interface we are dealing
with.

2. Input devices are essentially driver-less (they are class devices) and
therefore do not provide useful information if used in messages as the
format of the message would be:

	input inputX: some message

which does not identify neitehr the driver nor hardware device.  By
using input->dev.parent we get to the USB interface thus getting more
meaningful messages:

	wacom 2-1.2:1.0: some error happened

We had a discussion with Greg about this and he was going to change his
patchset to use USB interfaces in the messages...

Thanks.

-- 
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help