~ubuntu-kernel/ubuntu/+source/linux/+git/oneiric:master-next

Last commit made on 2013-03-21
Get this branch:
git clone -b master-next https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/oneiric
Members of Ubuntu Kernel Repositories can upload to this branch. Log in for directions.

Branch merges

Branch information

Recent commits

64ebf09... by Steve Conklin

UBUNTU: Ubuntu-3.0.0-32.51

Signed-off-by: Steve Conklin <email address hidden>

5fca838... by Kees Cook

signal: always clear sa_restorer on execve

CVE-2013-0914

BugLink: http://bugs.launchpad.net/bugs/1153813

When the new signal handlers are set up, the location of sa_restorer is
not cleared, leaking a parent process's address space location to
children. This allows for a potential bypass of the parent's ASLR by
examining the sa_restorer value returned when calling sigaction().

Based on what should be considered "secret" about addresses, it only
matters across the exec not the fork (since the VMAs haven't changed
until the exec). But since exec sets SIG_DFL and keeps sa_restorer,
this is where it should be fixed.

Given the few uses of sa_restorer, a "set" function was not written
since this would be the only use. Instead, we use
__ARCH_HAS_SA_RESTORER, as already done in other places.

Example of the leak before applying this patch:

  $ cat /proc/$$/maps
  ...
  7fb9f3083000-7fb9f3238000 r-xp 00000000 fd:01 404469 .../libc-2.15.so
  ...
  $ ./leak
  ...
  7f278bc74000-7f278be29000 r-xp 00000000 fd:01 404469 .../libc-2.15.so
  ...
  1 0 (nil) 0x7fb9f30b94a0
  2 4000000 (nil) 0x7f278bcaa4a0
  3 4000000 (nil) 0x7f278bcaa4a0
  4 0 (nil) 0x7fb9f30b94a0
  ...

[<email address hidden>: use SA_RESTORER for backportability]
Signed-off-by: Kees Cook <email address hidden>
Reported-by: Emese Revfy <email address hidden>
Cc: Emese Revfy <email address hidden>
Cc: PaX Team <email address hidden>
Cc: Al Viro <email address hidden>
Cc: Oleg Nesterov <email address hidden>
Cc: "Eric W. Biederman" <email address hidden>
Cc: Serge Hallyn <email address hidden>
Cc: Julien Tinnes <email address hidden>
Cc: <email address hidden>
Signed-off-by: Andrew Morton <email address hidden>
Signed-off-by: Linus Torvalds <email address hidden>
(cherry picked from commit 2ca39528c01a933f6689cd6505ce65bd6d68a530)
Signed-off-by: Luis Henriques <email address hidden>
Signed-off-by: Tim Gardner <email address hidden>

1b71bbe... by Greg Kroah-Hartman <email address hidden>

Linux 3.0.69

BugLink: http://bugs.launchpad.net/bugs/1155651

Signed-off-by: Brad Figg <email address hidden>

d81209d... by Ben Hutchings

dmi_scan: fix missing check for _DMI_ signature in smbios_present()

BugLink: http://bugs.launchpad.net/bugs/1155651

commit a40e7cf8f06b4e322ba902e4e9f6a6b0c2daa907 upstream.

Commit 9f9c9cbb6057 ("drivers/firmware/dmi_scan.c: fetch dmi version
from SMBIOS if it exists") hoisted the check for "_DMI_" into
dmi_scan_machine(), which means that we don't bother to check for
"_DMI_" at offset 16 in an SMBIOS entry. smbios_present() may also call
dmi_present() for an address where we found "_SM_", if it failed further
validation.

Check for "_DMI_" in smbios_present() before calling dmi_present().

[<email address hidden>: fix build]
Signed-off-by: Ben Hutchings <email address hidden>
Reported-by: Tim McGrath <email address hidden>
Tested-by: Tim Mcgrath <email address hidden>
Cc: Zhenzhong Duan <email address hidden>
Signed-off-by: Andrew Morton <email address hidden>
Signed-off-by: Linus Torvalds <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Brad Figg <email address hidden>

e619232... by Eric W. Biederman

decnet: Fix disappearing sysctl entries

BugLink: http://bugs.launchpad.net/bugs/1155651

When decnet is built as a module a simple:
echo 0.0 >/proc/sys/net/decnet/node_address

results in most of the sysctl entries under /proc/sys/net/decnet and
/proc/sys/net/decnet/conf disappearing.

For more details see http://www.spinics.net/lists/netdev/msg226123.html.

This change applies the same workaround used in
net/core/sysctl_net_core.c and net/ipv6/sysctl_net_ipv6.c of creating
a skeleton of decnet sysctl entries before doing anything else.

The problem first appeared in kernel 2.6.27. The later rewrite of
sysctl in kernel 3.4 restored the previous behavior and eliminated the
need for this workaround.

This patch was heavily inspired by a similar but more complex patch by
Larry Baker.

Reported-by: Larry Baker <email address hidden>
Signed-off-by: "Eric W. Biederman" <email address hidden>
Acked-by: David Miller <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Brad Figg <email address hidden>

a9b5780... by Steven Rostedt <email address hidden>

ftrace: Update the kconfig for DYNAMIC_FTRACE

BugLink: http://bugs.launchpad.net/bugs/1155651

commit db05021d49a994ee40a9735d9c3cb0060c9babb8 upstream.

The prompt to enable DYNAMIC_FTRACE (the ability to nop and
enable function tracing at run time) had a confusing statement:

 "enable/disable ftrace tracepoints dynamically"

This was written before tracepoints were added to the kernel,
but now that tracepoints have been added, this is very confusing
and has confused people enough to give wrong information during
presentations.

Not only that, I looked at the help text, and it still references
that dreaded daemon that use to wake up once a second to update
the nop locations and brick NICs, that hasn't been around for over
five years.

Time to bring the text up to the current decade.

Reported-by: Ezequiel Garcia <email address hidden>
Signed-off-by: Steven Rostedt <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Brad Figg <email address hidden>

04e1f73... by "Tu, Xiaobing" <email address hidden>

Fix memory leak in cpufreq stats.

BugLink: http://bugs.launchpad.net/bugs/1155651

commit e37736777254ce1abc85493a5cacbefe5983b896 upstream.

When system enters sleep, non-boot CPUs will be disabled.
Cpufreq stats sysfs is created when the CPU is up, but it is not
freed when the CPU is going down. This will cause memory leak.

Signed-off-by: xiaobing tu <email address hidden>
Signed-off-by: guifang tang <email address hidden>
Signed-off-by: Rafael J. Wysocki <email address hidden>
Cc: Colin Cross <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Brad Figg <email address hidden>

161c96c... by Al Viro <email address hidden>

vfs: fix pipe counter breakage

BugLink: http://bugs.launchpad.net/bugs/1155651

commit a930d8790552658140d7d0d2e316af4f0d76a512 upstream.

If you open a pipe for neither read nor write, the pipe code will not
add any usage counters to the pipe, causing the 'struct pipe_inode_info"
to be potentially released early.

That doesn't normally matter, since you cannot actually use the pipe,
but the pipe release code - particularly fasync handling - still expects
the actual pipe infrastructure to all be there. And rather than adding
NULL pointer checks, let's just disallow this case, the same way we
already do for the named pipe ("fifo") case.

This is ancient going back to pre-2.4 days, and until trinity, nobody
naver noticed.

Reported-by: Dave Jones <email address hidden>
Signed-off-by: Linus Torvalds <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Brad Figg <email address hidden>

516c23b... by Konstantin Khlebnikov

e1000e: fix pci-device enable-counter balance

BugLink: http://bugs.launchpad.net/bugs/1155651

commit 4e0855dff094b0d56d6b5b271e0ce7851cc1e063 upstream.

This patch removes redundant and unbalanced pci_disable_device() from
__e1000_shutdown(). pci_clear_master() is enough, device can go into
suspended state with elevated enable_cnt.

Bug was introduced in commit 23606cf5d1192c2b17912cb2ef6e62f9b11de133
("e1000e / PCI / PM: Add basic runtime PM support (rev. 4)") in v2.6.35

Signed-off-by: Konstantin Khlebnikov <email address hidden>
Cc: Bruce Allan <email address hidden>
Acked-by: Rafael J. Wysocki <email address hidden>
Tested-by: Borislav Petkov <email address hidden>
Tested-by: Aaron Brown <email address hidden>
Signed-off-by: Jeff Kirsher <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Brad Figg <email address hidden>

d0322e9... by Takashi Iwai

ALSA: vmaster: Fix slave change notification

BugLink: http://bugs.launchpad.net/bugs/1155651

commit 2069d483b39a603a5f3428a19d3b4ac89aa97f48 upstream.

When a value of a vmaster slave control is changed, the ctl change
notification is sometimes ignored. This happens when the master
control overrides, e.g. when the corresponding master control is
muted. The reason is that slave_put() returns the value of the actual
slave put callback, and it doesn't reflect the virtual slave value
change.

This patch fixes the function just to return 1 whenever a slave value
is changed.

Signed-off-by: Takashi Iwai <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Brad Figg <email address hidden>