<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/input/evdev.c, branch v2.6.30</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v2.6.30</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v2.6.30'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2009-03-16T14:34:35Z</updated>
<entry>
<title>Rationalize fasync return values</title>
<updated>2009-03-16T14:34:35Z</updated>
<author>
<name>Jonathan Corbet</name>
<email>corbet@lwn.net</email>
</author>
<published>2009-02-01T21:52:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=60aa49243d09afc873f082567d2e3c16634ced84'/>
<id>urn:sha1:60aa49243d09afc873f082567d2e3c16634ced84</id>
<content type='text'>
Most fasync implementations do something like:

     return fasync_helper(...);

But fasync_helper() will return a positive value at times - a feature used
in at least one place.  Thus, a number of other drivers do:

     err = fasync_helper(...);
     if (err &lt; 0)
             return err;
     return 0;

In the interests of consistency and more concise code, it makes sense to
map positive return values onto zero where -&gt;fasync() is called.

Cc: Al Viro &lt;viro@ZenIV.linux.org.uk&gt;
Signed-off-by: Jonathan Corbet &lt;corbet@lwn.net&gt;
</content>
</entry>
<entry>
<title>Merge commit 'v2.6.28-rc9' into next</title>
<updated>2008-12-20T09:54:54Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2008-12-20T09:54:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=93b8eef1c098efbea2f1fc0be7e3c681f259a7e7'/>
<id>urn:sha1:93b8eef1c098efbea2f1fc0be7e3c681f259a7e7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>saner FASYNC handling on file close</title>
<updated>2008-11-01T16:49:46Z</updated>
<author>
<name>Al Viro</name>
<email>viro@ZenIV.linux.org.uk</email>
</author>
<published>2008-10-31T23:28:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=233e70f4228e78eb2f80dc6650f65d3ae3dbf17c'/>
<id>urn:sha1:233e70f4228e78eb2f80dc6650f65d3ae3dbf17c</id>
<content type='text'>
As it is, all instances of -&gt;release() for files that have -&gt;fasync()
need to remember to evict file from fasync lists; forgetting that
creates a hole and we actually have a bunch that *does* forget.

So let's keep our lives simple - let __fput() check FASYNC in
file-&gt;f_flags and call -&gt;fasync() there if it's been set.  And lose that
crap in -&gt;release() instances - leaving it there is still valid, but we
don't have to bother anymore.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Input: struct device - replace bus_id with dev_name(), dev_set_name()</title>
<updated>2008-10-30T13:29:05Z</updated>
<author>
<name>Kay Sievers</name>
<email>kay.sievers@vrfy.org</email>
</author>
<published>2008-10-30T04:07:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a6c2490f010d9235b1424110c6f414460e41dfe1'/>
<id>urn:sha1:a6c2490f010d9235b1424110c6f414460e41dfe1</id>
<content type='text'>
Acked-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Signed-off-by: Kay Sievers &lt;kay.sievers@vrfy.org&gt;
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
</content>
</entry>
<entry>
<title>Input: refactor evdev 32bit compat to be shareable with uinput</title>
<updated>2008-10-28T02:03:42Z</updated>
<author>
<name>Philip Langdale</name>
<email>philipl@overt.org</email>
</author>
<published>2008-10-17T02:31:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2d56f3a32c0e62f99c043d2579840f9731fe5855'/>
<id>urn:sha1:2d56f3a32c0e62f99c043d2579840f9731fe5855</id>
<content type='text'>
Currently, evdev has working 32bit compatibility and uinput does not. uinput
needs the input_event code that evdev uses, so let's refactor it so it can
be shared.

[dtor@mail.ru: add fix for force feedback compat issues]
Signed-off-by: Philip Langdale &lt;philipl@overt.org&gt;
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
</content>
</entry>
<entry>
<title>Input: evdev - fix printf() format for sizeof</title>
<updated>2008-08-19T15:35:27Z</updated>
<author>
<name>Geert Uytterhoeven</name>
<email>Geert.Uytterhoeven@sonycom.com</email>
</author>
<published>2008-08-19T15:28:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c85e2031eb55381a5e2f0f66c2e1d62ecd58eb85'/>
<id>urn:sha1:c85e2031eb55381a5e2f0f66c2e1d62ecd58eb85</id>
<content type='text'>
commit f2afa7711f8585ffc088ba538b9a510e0d5dca12 ("Input: paper over a bug in
Synaptics X driver") introduced a compiler warning on 64-bit platforms, as
sizeof() returns a size_t, not an (unsigned) int:

| drivers/input/evdev.c: In function 'handle_eviocgbit':
| drivers/input/evdev.c:684: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int'

Use the proper `z' modifier for size_t, and make the printf() formats for the
sizes unsigned while we're at it.

Signed-off-by: Geert Uytterhoeven &lt;Geert.Uytterhoeven@sonycom.com&gt;
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
</content>
</entry>
<entry>
<title>Input: paper over a bug in Synaptics X driver</title>
<updated>2008-08-08T18:54:59Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2008-08-08T15:46:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f2afa7711f8585ffc088ba538b9a510e0d5dca12'/>
<id>urn:sha1:f2afa7711f8585ffc088ba538b9a510e0d5dca12</id>
<content type='text'>
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
</content>
</entry>
<entry>
<title>Input: evdev - split EVIOCGBIT handlig into a separate function</title>
<updated>2008-08-08T15:54:58Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2008-08-05T15:42:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=5402a7349d26875f69c184badf87b88541b1cf6c'/>
<id>urn:sha1:5402a7349d26875f69c184badf87b88541b1cf6c</id>
<content type='text'>
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
</content>
</entry>
<entry>
<title>Input: fix force feedback upload issue in compat mode</title>
<updated>2008-06-30T13:37:06Z</updated>
<author>
<name>Adam Dawidowski</name>
<email>drake_ster@wp.pl</email>
</author>
<published>2008-06-02T05:08:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f2278f31d6feb9036eaa79f2e8abcce850420abd'/>
<id>urn:sha1:f2278f31d6feb9036eaa79f2e8abcce850420abd</id>
<content type='text'>
Force feedback upload of effects through the event device (ioctl
EVIOCSFF) is not working in 32 bit applications running on 64-bit
kernel due to the fact that struct ff_effect contains a pointer,
resulting in the structure having different sizes in 64 and 32 bit
programs and causing difference in ioctl numbers.

[dtor@mail.ru: refactor to keep all ugliness in evdev]

Signed-off-by: Adam Dawidowski &lt;drake_ster@wp.pl&gt;
Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
</content>
</entry>
<entry>
<title>Input: make sure input interfaces pin parent input devices</title>
<updated>2008-04-01T04:22:53Z</updated>
<author>
<name>Dmitry Torokhov</name>
<email>dmitry.torokhov@gmail.com</email>
</author>
<published>2008-04-01T04:22:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a7097ff89c3204737a07eecbc83f9ae6002cc534'/>
<id>urn:sha1:a7097ff89c3204737a07eecbc83f9ae6002cc534</id>
<content type='text'>
Recent driver core change causes references to parent devices being
dropped early, at device_del() time, as opposed to when all children
are freed. This causes oops in evdev with grabbed devices. Take the
reference to the parent input device ourselves to ensure that it
stays around long enough.

Signed-off-by: Dmitry Torokhov &lt;dtor@mail.ru&gt;
</content>
</entry>
</feed>
