<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git, branch v3.2.38</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=v3.2.38</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=v3.2.38'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2013-02-06T04:33:58+00:00</updated>
<entry>
<title>Linux 3.2.38</title>
<updated>2013-02-06T04:33:58+00:00</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2013-02-06T04:33:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8eedd52017a07a5bae2aded2b5023bfba5971af9'/>
<id>urn:sha1:8eedd52017a07a5bae2aded2b5023bfba5971af9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>printk: fix buffer overflow when calling log_prefix function from call_console_drivers</title>
<updated>2013-02-06T04:33:57+00:00</updated>
<author>
<name>Alexandre SIMON</name>
<email>Alexandre.Simon@univ-lorraine.fr</email>
</author>
<published>2013-02-01T14:31:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=fed286bde47fde5bf24916f48dd43811e916c139'/>
<id>urn:sha1:fed286bde47fde5bf24916f48dd43811e916c139</id>
<content type='text'>
This patch corrects a buffer overflow in kernels from 3.0 to 3.4 when calling
log_prefix() function from call_console_drivers().

This bug existed in previous releases but has been revealed with commit
162a7e7500f9664636e649ba59defe541b7c2c60 (2.6.39 =&gt; 3.0) that made changes
about how to allocate memory for early printk buffer (use of memblock_alloc).
It disappears with commit 7ff9554bb578ba02166071d2d487b7fc7d860d62 (3.4 =&gt; 3.5)
that does a refactoring of printk buffer management.

In log_prefix(), the access to "p[0]", "p[1]", "p[2]" or
"simple_strtoul(&amp;p[1], &amp;endp, 10)" may cause a buffer overflow as this
function is called from call_console_drivers by passing "&amp;LOG_BUF(cur_index)"
where the index must be masked to do not exceed the buffer's boundary.

The trick is to prepare in call_console_drivers() a buffer with the necessary
data (PRI field of syslog message) to be safely evaluated in log_prefix().

This patch can be applied to stable kernel branches 3.0.y, 3.2.y and 3.4.y.

Without this patch, one can freeze a server running this loop from shell :
  $ export DUMMY=`cat /dev/urandom | tr -dc '12345AZERTYUIOPQSDFGHJKLMWXCVBNazertyuiopqsdfghjklmwxcvbn' | head -c255`
  $ while true do ; echo $DUMMY &gt; /dev/kmsg ; done

The "server freeze" depends on where memblock_alloc does allocate printk buffer :
if the buffer overflow is inside another kernel allocation the problem may not
be revealed, else the server may hangs up.

Signed-off-by: Alexandre SIMON &lt;Alexandre.Simon@univ-lorraine.fr&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>x86, efi: Set runtime_version to the EFI spec revision</title>
<updated>2013-02-06T04:33:57+00:00</updated>
<author>
<name>Matt Fleming</name>
<email>matt.fleming@intel.com</email>
</author>
<published>2013-01-25T10:07:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cccd7d46b541d365a3cb1a87946a7fc30cf8e858'/>
<id>urn:sha1:cccd7d46b541d365a3cb1a87946a7fc30cf8e858</id>
<content type='text'>
commit 712ba9e9afc4b3d3d6fa81565ca36fe518915c01 upstream.

efi.runtime_version is erroneously being set to the value of the
vendor's firmware revision instead of that of the implemented EFI
specification. We can't deduce which EFI functions are available based
on the revision of the vendor's firmware since the version scheme is
likely to be unique to each vendor.

What we really need to know is the revision of the implemented EFI
specification, which is available in the EFI System Table header.

Cc: Seiji Aguchi &lt;seiji.aguchi@hds.com&gt;
Cc: Matthew Garrett &lt;mjg59@srcf.ucam.org&gt;
Signed-off-by: Matt Fleming &lt;matt.fleming@intel.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>staging: usbip: changed function return type to void</title>
<updated>2013-02-06T04:33:56+00:00</updated>
<author>
<name>Bart Westgeest</name>
<email>bart@elbrys.com</email>
</author>
<published>2012-01-23T15:55:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=7d02c8e73e3c4610882e4883d97c870384e64a72'/>
<id>urn:sha1:7d02c8e73e3c4610882e4883d97c870384e64a72</id>
<content type='text'>
commit ac2b41acfa3efe4650102067a99251587a806d70 upstream.

The function usbip_pad_iso never returns anything but 0 (success).

Signed-off-by: Bart Westgeest &lt;bart@elbrys.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>ALSA: usb-audio: Fix regression by disconnection-race-fix patch</title>
<updated>2013-02-06T04:33:56+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2013-01-22T16:43:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=6d3e269cd51bdfe7ea77bdf1242626a5d6529b85'/>
<id>urn:sha1:6d3e269cd51bdfe7ea77bdf1242626a5d6529b85</id>
<content type='text'>
[NOTE: the regression below is found only in 3.2-3.4 stable trees, so
       there is no upstream commit corresponding to this patch]

The recent fix for the race at disconnection of usb-audio devices
(upstream commit 978520b7) triggers Oops when a device is unplugged
while playing on 3.2 and 3.4 kernels.  The culprit is that the
shutdown flag check was wrongly added around the urb deactivation code
snippet.  The urb deactivation code has to be performed even after the
device disconnected.  Otherwise it remains undead and pokes the wild
access in the end.

The regression fix is simply reverting the shutdown flag check in that
code.

Reported-and-tested-by: Chris J Arges &lt;christopherarges@gmail.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>drbd: add missing part_round_stats to _drbd_start_io_acct</title>
<updated>2013-02-06T04:33:56+00:00</updated>
<author>
<name>Philipp Reisner</name>
<email>philipp.reisner@linbit.com</email>
</author>
<published>2012-02-23T11:56:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=c64640b5e1b8e83307e3f7e86044a858c7584593'/>
<id>urn:sha1:c64640b5e1b8e83307e3f7e86044a858c7584593</id>
<content type='text'>
commit 72585d2428fa3a0daab02ebad1f41e5ef517dbaa upstream.

Without this, iostat frequently sees bogus svctime and &gt;= 100% "utilization".

Signed-off-by: Philipp Reisner &lt;philipp.reisner@linbit.com&gt;
Signed-off-by: Lars Ellenberg &lt;lars.ellenberg@linbit.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>igb: release already assigned MSI-X interrupts if setup fails</title>
<updated>2013-02-06T04:33:55+00:00</updated>
<author>
<name>Stefan Assmann</name>
<email>sassmann@kpanic.de</email>
</author>
<published>2012-12-04T06:00:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=9741339ebda19ec0622f8121123361f7ddc3b8c9'/>
<id>urn:sha1:9741339ebda19ec0622f8121123361f7ddc3b8c9</id>
<content type='text'>
commit 52285b762b3681669215bf1d17ca6143448ab7d3 upstream.

During MSI-X setup the system might run out of vectors. If this happens the
already assigned vectors for this NIC should be freed before trying the
disable MSI-X. Failing to do so results in the following oops.

kernel BUG at drivers/pci/msi.c:341!
[...]
Call Trace:
 [&lt;ffffffff8128f39d&gt;] pci_disable_msix+0x3d/0x60
 [&lt;ffffffffa037d1ce&gt;] igb_reset_interrupt_capability+0x27/0x5c [igb]
 [&lt;ffffffffa037d229&gt;] igb_clear_interrupt_scheme+0x26/0x2d [igb]
 [&lt;ffffffffa0384268&gt;] igb_request_irq+0x73/0x297 [igb]
 [&lt;ffffffffa0384554&gt;] __igb_open+0xc8/0x223 [igb]
 [&lt;ffffffffa0384815&gt;] igb_open+0x13/0x15 [igb]
 [&lt;ffffffff8144592f&gt;] __dev_open+0xbf/0x120
 [&lt;ffffffff81443e51&gt;] __dev_change_flags+0xa1/0x180
 [&lt;ffffffff81445828&gt;] dev_change_flags+0x28/0x70
 [&lt;ffffffff814af537&gt;] devinet_ioctl+0x5b7/0x620
 [&lt;ffffffff814b01c8&gt;] inet_ioctl+0x88/0xa0
 [&lt;ffffffff8142e8a0&gt;] sock_do_ioctl+0x30/0x70
 [&lt;ffffffff8142ecf2&gt;] sock_ioctl+0x72/0x270
 [&lt;ffffffff8118062c&gt;] do_vfs_ioctl+0x8c/0x340
 [&lt;ffffffff81180981&gt;] sys_ioctl+0xa1/0xb0
 [&lt;ffffffff815161a9&gt;] system_call_fastpath+0x16/0x1b
Code: 48 89 df e8 1f 40 ed ff 4d 39 e6 49 8b 45 10 75 b6 48 83 c4 18 5b 41 5c 41 5d 41 5e 41 5f c9 c3 48 8b 7b 20 e8 3e 91 db ff eb ae &lt;0f&gt; 0b eb fe 0f 1f 84 00 00 00 00 00 55 48 89 e5 0f 1f 44 00 00
RIP  [&lt;ffffffff8128e144&gt;] free_msi_irqs+0x124/0x130
 RSP &lt;ffff880037503bd8&gt;

Signed-off-by: Stefan Assmann &lt;sassmann@kpanic.de&gt;
Tested-by: Aaron Brown &lt;aaron.f.brown@intel.com&gt;
Signed-off-by: Jeff Kirsher &lt;jeffrey.t.kirsher@intel.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>ALSA: usb - fix race in creation of M-Audio Fast track pro driver</title>
<updated>2013-02-06T04:33:55+00:00</updated>
<author>
<name>David Henningsson</name>
<email>david.henningsson@canonical.com</email>
</author>
<published>2013-01-04T16:02:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8f8ad61766f6e072a27ffffe58810bf6890074b0'/>
<id>urn:sha1:8f8ad61766f6e072a27ffffe58810bf6890074b0</id>
<content type='text'>
commit b98ae2729dea161edc96c9d177459b6c28bcbba5 upstream.

A patch in the 3.2 kernel caused regression with hotplugging the
M-Audio Fast track pro, or sound after suspend. I don't have the
device so I haven't done a full analysis, but it seems userspace
(both udev and pulseaudio) got confused when a card was created,
immediately destroyed, and then created again.

However, at least one person in the bug report (martin djfun)
reports that this patch resolves the issue for him. It also leaves
a message in the log:
"snd-usb-audio: probe of 1-1.1:1.1 failed with error -5" which is
a bit misleading. It is better than non-working audio, but maybe
there's a more elegant solution?

BugLink: https://bugs.launchpad.net/bugs/1095315
Signed-off-by: David Henningsson &lt;david.henningsson@canonical.com&gt;
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>intel-iommu: Prevent devices with RMRRs from being placed into SI Domain</title>
<updated>2013-02-06T04:33:55+00:00</updated>
<author>
<name>Tom Mingarelli</name>
<email>thomas.mingarelli@hp.com</email>
</author>
<published>2012-11-20T19:43:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=8a6d0db2f6a06c5fdfb7a208002d0f9961d1ad41'/>
<id>urn:sha1:8a6d0db2f6a06c5fdfb7a208002d0f9961d1ad41</id>
<content type='text'>
commit ea2447f700cab264019b52e2b417d689e052dcfd upstream.

This patch is to prevent non-USB devices that have RMRRs associated with them from
being placed into the SI Domain during init. This fixes the issue where the RMRR info
for devices being placed in and out of the SI Domain gets lost.

Signed-off-by: Thomas Mingarelli &lt;thomas.mingarelli@hp.com&gt;
Tested-by: Shuah Khan &lt;shuah.khan@hp.com&gt;
Reviewed-by: Donald Dutile &lt;ddutile@redhat.com&gt;
Reviewed-by: Alex Williamson &lt;alex.williamson@redhat.com&gt;
Signed-off-by: Joerg Roedel &lt;joro@8bytes.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
<entry>
<title>staging: comedi: don't hijack hardware device private data</title>
<updated>2013-02-06T04:33:55+00:00</updated>
<author>
<name>Ian Abbott</name>
<email>abbotti@mev.co.uk</email>
</author>
<published>2012-03-30T16:14:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ccfabf967ddeff4dad95fe1b97ab3bc2f2da3683'/>
<id>urn:sha1:ccfabf967ddeff4dad95fe1b97ab3bc2f2da3683</id>
<content type='text'>
commit c43435d7722134ed1fda58ce1025f41029bd58ad upstream.

comedi_auto_config() associates a Comedi minor device number with an
auto-configured hardware device and comedi_auto_unconfig() disassociates
it.  Currently, these use the hardware device's private data pointer to
point to some allocated storage holding the minor device number.  This
is a bit of a waste of the hardware device's private data pointer,
preventing it from being used for something more useful by the low-level
comedi device drivers.  For example, it would make more sense if
comedi_usb_auto_config() was passed a pointer to the struct
usb_interface instead of the struct usb_device, but this cannot be done
currently because the low-level comedi drivers already use the private
data pointer in the struct usb_interface for something more useful.

This patch stops the comedi core hijacking the hardware device's private
data pointer.  Instead, comedi_auto_config() stores a pointer to the
hardware device's struct device in the struct comedi_device_file_info
associated with the minor device number, and comedi_auto_unconfig()
calls new function comedi_find_board_minor() to recover the minor device
number associated with the hardware device.

Signed-off-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
</content>
</entry>
</feed>
