<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers, branch v2.6.27.46</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers?h=v2.6.27.46</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers?h=v2.6.27.46'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2010-04-01T22:52:29Z</updated>
<entry>
<title>hwmon: (coretemp) Add missing newline to dev_warn() message</title>
<updated>2010-04-01T22:52:29Z</updated>
<author>
<name>Dean Nelson</name>
<email>dnelson@redhat.com</email>
</author>
<published>2010-03-29T20:03:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=afcb843f52a4db224bc5f138e136253205feffa3'/>
<id>urn:sha1:afcb843f52a4db224bc5f138e136253205feffa3</id>
<content type='text'>
commit 4d7a5644e4adfafe76c2bd8ee168e3f3b5dae3a8 upstream.

Add missing newline to dev_warn() message string. This is more of an issue
with older kernels that don't automatically add a newline if it was missing
from the end of the previous line.

Signed-off-by: Dean Nelson &lt;dnelson@redhat.com&gt;
Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: fix usbfs regression</title>
<updated>2010-04-01T22:52:29Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2010-03-06T20:04:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=aaaa549b386fdd80b93b447541f42b313b103f95'/>
<id>urn:sha1:aaaa549b386fdd80b93b447541f42b313b103f95</id>
<content type='text'>
commit 7152b592593b9d48b33f8997b1dfd6df9143f7ec upstream.

This patch (as1352) fixes a bug in the way isochronous input data is
returned to userspace for usbfs transfers.  The entire buffer must be
copied, not just the first actual_length bytes, because the individual
packets will be discontiguous if any of them are short.

Reported-by: Markus Rechberger &lt;mrechberger@gmail.com&gt;
Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>b44 WOL setup: one-bit-off stack corruption kernel panic fix</title>
<updated>2010-04-01T22:52:27Z</updated>
<author>
<name>Stanislav Brabec</name>
<email>sbrabec@suse.cz</email>
</author>
<published>2009-12-09T05:00:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=68cd8670ee25e0d6b0a7472672dcd3843f70a1c6'/>
<id>urn:sha1:68cd8670ee25e0d6b0a7472672dcd3843f70a1c6</id>
<content type='text'>
commit e0188829cb724e7d12a2d4e343b368ff1d6e1471 upstream.

About 50% of shutdowns of b44 Ethernet adapter ends by kernel panic
with kernels compiled with stack-protector.

Checking b44_magic_pattern() return values, one call of
b44_magic_pattern() returns 127. It means, that set_bit(128, pmask)
was called on line 1509. It means that bit 0 of 17th byte of pmask was
overwritten. But pmask has only 16 bytes. Stack corruption happens.

It seems that set_bit() on line 1509 always writes one bit off.

The fix does not only solve the stack corruption, but also makes Wake
On LAN working on my onboard B44 on Asus A7V-333X mainboard.

It seems that this problem affects all kernel versions since commit
725ad800 ([PATCH] b44: add wol for old nic) on 2006-06-20.

Signed-off-by: Stanislav Brabec &lt;sbrabec@suse.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>V4L/DVB (13961): em28xx-dvb: fix memleak in dvb_fini()</title>
<updated>2010-04-01T22:52:27Z</updated>
<author>
<name>Francesco Lavra</name>
<email>francescolavra@interfree.it</email>
</author>
<published>2009-12-31T11:47:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8314375b8f9447e74221ad2116121ca40cbfc1bb'/>
<id>urn:sha1:8314375b8f9447e74221ad2116121ca40cbfc1bb</id>
<content type='text'>
commit 19f48cb105b7fa18d0dcab435919a3a29b7a7c4c upstream.

this patch fixes a memory leak which occurs when an em28xx card with DVB
extension is unplugged or its DVB extension driver is unloaded. In
dvb_fini(), dev-&gt;dvb must be freed before being set to NULL, as is done
in dvb_init() in case of error.
Note that this bug is also present in the latest stable kernel release.

Signed-off-by: Francesco Lavra &lt;francescolavra@interfree.it&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>bonding: ignore updelay param when there is no active slave</title>
<updated>2010-04-01T22:52:26Z</updated>
<author>
<name>Jiri Pirko</name>
<email>jpirko@redhat.com</email>
</author>
<published>2009-04-24T03:57:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9776e39de376c2dd759f1d8d7f568111139b330e'/>
<id>urn:sha1:9776e39de376c2dd759f1d8d7f568111139b330e</id>
<content type='text'>
commit 41f8910040639eb106b1a5b5301aab79ecde4940 upstream.

Pointed out by Sean E. Millichamp.

Quote from Documentation/networking/bonding.txt:
"Note that when a bonding interface has no active links, the
driver will immediately reuse the first link that goes up, even if the
updelay parameter has been specified (the updelay is ignored in this
case).  If there are slave interfaces waiting for the updelay timeout
to expire, the interface that first went into that state will be
immediately reused.  This reduces down time of the network if the
value of updelay has been overestimated, and since this occurs only in
cases with no connectivity, there is no additional penalty for
ignoring the updelay."

This patch actually changes the behaviour in this way.

Signed-off-by: Jiri Pirko &lt;jpirko@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Jean Delvare &lt;jdelvare@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>parisc: isa-eeprom - Fix loff_t usage</title>
<updated>2010-04-01T22:52:25Z</updated>
<author>
<name>Michael Buesch</name>
<email>mb@bu3sch.de</email>
</author>
<published>2009-07-20T22:58:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1f059b24d2a9f0f15766d0f77acaaa3c8a163a3a'/>
<id>urn:sha1:1f059b24d2a9f0f15766d0f77acaaa3c8a163a3a</id>
<content type='text'>
commit 6b4dbcd86a9d464057fcc7abe4d0574093071fcc upstream.

loff_t is a signed type. If userspace passes a negative ppos, the "count"
range check is weakened. "count"s bigger than HPEE_MAX_LENGTH will pass the check.
Also, if ppos is negative, the readb(eisa_eeprom_addr + *ppos) will poke in random
memory.

Signed-off-by: Michael Buesch &lt;mb@bu3sch.de&gt;
Signed-off-by: Helge Deller &lt;deller@gmx.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>drm/r128: Add test for initialisation to all ioctls that require it</title>
<updated>2010-04-01T22:52:24Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2009-08-23T15:59:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3807f5c31534736f3c23630b11bd4a259eaa46fd'/>
<id>urn:sha1:3807f5c31534736f3c23630b11bd4a259eaa46fd</id>
<content type='text'>
commit 7dc482dfeeeefcfd000d4271c4626937406756d7 upstream.

Almost all r128's private ioctls require that the CCE state has
already been initialised.  However, most do not test that this has
been done, and will proceed to dereference a null pointer.  This may
result in a security vulnerability, since some ioctls are
unprivileged.

This adds a macro for the common initialisation test and changes all
ioctl implementations that require prior initialisation to use that
macro.

Also, r128_do_init_cce() does not test that the CCE state has not
been initialised already.  Repeated initialisation may lead to a crash
or resource leak.  This adds that test.

Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
<entry>
<title>USB: EHCI: fix counting of transaction error retries</title>
<updated>2010-04-01T22:52:23Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2009-07-31T14:41:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6758be586812a95341a06b04e780fdde9c252ba2'/>
<id>urn:sha1:6758be586812a95341a06b04e780fdde9c252ba2</id>
<content type='text'>
commit ef4638f955f2c4a667c8af20769d03f5ed3781ca upstream.

This patch (as1274) simplifies the counting of transaction-error
retries.  Now we will count up from 0 to QH_XACTERR_MAX instead of
down from QH_XACTERR_MAX to 0.

The patch also fixes a small bug: qh-&gt;xacterr was not getting
initialized for interrupt endpoints.

Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Tested-by: Matthijs Kooijman &lt;matthijs@stdin.nl&gt;
Cc: Reinoud Koornstra &lt;koornstra@hp.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: usbfs: properly clean up the as structure on error paths</title>
<updated>2010-04-01T22:52:22Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2010-02-16T20:35:07Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ffa27b3ddf12952737dcf30b83e56e3da4e965bd'/>
<id>urn:sha1:ffa27b3ddf12952737dcf30b83e56e3da4e965bd</id>
<content type='text'>
commit ddeee0b2eec2a51b0712b04de4b39e7bec892a53 upstream.

I notice that the processcompl_compat() function seems to be leaking the
'struct async *as' in the error paths.

I think that the calling convention is fundamentally buggered. The
caller is the one that did the "reap_as()" to get the as thing, the
caller should be the one to free it too.

Freeing it in the caller also means that it very clearly always gets
freed, and avoids the need for any "free in the error case too".

From: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Cc: Marcus Meissner &lt;meissner@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>USB: usbfs: only copy the actual data received</title>
<updated>2010-04-01T22:52:22Z</updated>
<author>
<name>Greg KH</name>
<email>greg@kroah.com</email>
</author>
<published>2010-02-15T17:37:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=00400c98e8359ec5ecec199d66fbf25b944b8834'/>
<id>urn:sha1:00400c98e8359ec5ecec199d66fbf25b944b8834</id>
<content type='text'>
commit d4a4683ca054ed9917dfc9e3ff0f7ecf74ad90d6 upstream.

We need to only copy the data received by the device to userspace, not
the whole kernel buffer, which can contain "stale" data.

Thanks to Marcus Meissner for pointing this out and testing the fix.

Reported-by: Marcus Meissner &lt;meissner@suse.de&gt;
Tested-by: Marcus Meissner &lt;meissner@suse.de&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
