]>
git.karo-electronics.de Git - karo-tx-linux.git/log
Andrew Morton [Fri, 7 Jun 2013 00:07:02 +0000 (10:07 +1000)]
kmsg-honor-dmesg_restrict-sysctl-on-dev-kmsg-fix
use pr_warn_once()
Cc: Josh Boyer <jwboyer@redhat.com>
Cc: Kees Cook <keescook@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Kees Cook [Fri, 7 Jun 2013 00:07:02 +0000 (10:07 +1000)]
kmsg: honor dmesg_restrict sysctl on /dev/kmsg
The dmesg_restrict sysctl currently covers the syslog method for access
dmesg, however /dev/kmsg isn't covered by the same protections. Most
people haven't noticed because util-linux dmesg(1) defaults to using the
syslog method for access in older versions. With util-linux dmesg(1)
defaults to reading directly from /dev/kmsg.
To fix /dev/kmsg, let's compare the existing interfaces and what they allow:
- /proc/kmsg allows:
- open (SYSLOG_ACTION_OPEN) if CAP_SYSLOG since it uses a destructive
single-reader interface (SYSLOG_ACTION_READ).
- everything, after an open.
- syslog syscall allows:
- anything, if CAP_SYSLOG.
- SYSLOG_ACTION_READ_ALL and SYSLOG_ACTION_SIZE_BUFFER, if dmesg_restrict==0.
- nothing else (EPERM).
The use-cases were:
- dmesg(1) needs to do non-destructive SYSLOG_ACTION_READ_ALLs.
- sysklog(1) needs to open /proc/kmsg, drop privs, and still issue the
destructive SYSLOG_ACTION_READs.
AIUI, dmesg(1) is moving to /dev/kmsg, and systemd-journald doesn't clear
the ring buffer.
Based on the comments in devkmsg_llseek, it sounds like actions besides
reading aren't going to be supported by /dev/kmsg (i.e.
SYSLOG_ACTION_CLEAR), so we have a strict subset of the non-destructive
syslog syscall actions.
To this end, move the check as Josh had done, but also rename the
constants to reflect their new uses (SYSLOG_FROM_CALL becomes
SYSLOG_FROM_READER, and SYSLOG_FROM_FILE becomes SYSLOG_FROM_PROC).
SYSLOG_FROM_READER allows non-destructive actions, and SYSLOG_FROM_PROC
allows destructive actions after a capabilities-constrained
SYSLOG_ACTION_OPEN check.
- /dev/kmsg allows:
- open if CAP_SYSLOG or dmesg_restrict==0
- reading/polling, after open
Addresses https://bugzilla.redhat.com/show_bug.cgi?id=903192
Signed-off-by: Kees Cook <keescook@chromium.org>
Reported-by: Christian Kujau <lists@nerdbynature.de>
Tested-by: Josh Boyer <jwboyer@redhat.com>
Cc: Kay Sievers <kay@vrfy.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Robin Holt [Fri, 7 Jun 2013 00:07:01 +0000 (10:07 +1000)]
migrate-shutdown-reboot-to-boot-cpu-v11
Signed-off-by: Robin Holt <holt@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Robin Holt [Fri, 7 Jun 2013 00:07:01 +0000 (10:07 +1000)]
reboot: rigrate shutdown/reboot to boot cpu
We recently noticed that reboot of a 1024 cpu machine takes approx 16
minutes of just stopping the cpus. The slowdown was tracked to commit
f96972f .
The current implementation does all the work of hot removing the cpus
before halting the system. We are switching to just migrating to the
boot cpu and then continuing with shutdown/reboot.
This also has the effect of not breaking x86's command line parameter for
specifying the reboot cpu. Note, this code was shamelessly copied from
arch/x86/kernel/reboot.c with bits removed pertaining to the reboot_cpu
command line parameter.
Signed-off-by: Robin Holt <holt@sgi.com>
Tested-by: Shawn Guo <shawn.guo@linaro.org>
Cc: "Srivatsa S. Bhat" <srivatsa.bhat@linux.vnet.ibm.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Russ Anderson <rja@sgi.com>
Cc: Robin Holt <holt@sgi.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Srivatsa S. Bhat [Fri, 7 Jun 2013 00:07:01 +0000 (10:07 +1000)]
cpu-hotplug-provide-a-generic-helper-to-disable-enable-cpu-hotplug-v11
Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Signed-off-by: Robin Holt <holt@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Srivatsa S. Bhat [Fri, 7 Jun 2013 00:07:00 +0000 (10:07 +1000)]
CPU hotplug: provide a generic helper to disable/enable CPU hotplug
There are instances in the kernel where we would like to disable CPU
hotplug (from sysfs) during some important operation. Today the freezer
code depends on this and the code to do it was kinda tailor-made for that.
Restructure the code and make it generic enough to be useful for
other usecases too.
Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com>
Signed-off-by: Robin Holt <holt@sgi.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Russ Anderson <rja@sgi.com>
Cc: Robin Holt <holt@sgi.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
Cc: Shawn Guo <shawn.guo@linaro.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Stephen Rothwell [Fri, 7 Jun 2013 05:38:51 +0000 (15:38 +1000)]
Merge remote-tracking branch 'lzo-update/lzo-update'
Stephen Rothwell [Fri, 7 Jun 2013 05:37:10 +0000 (15:37 +1000)]
Merge remote-tracking branch 'clk/clk-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:35:26 +0000 (15:35 +1000)]
Merge remote-tracking branch 'userns/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:33:45 +0000 (15:33 +1000)]
Merge remote-tracking branch 'pwm/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:32:04 +0000 (15:32 +1000)]
Merge remote-tracking branch 'tegra/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:30:24 +0000 (15:30 +1000)]
Merge remote-tracking branch 'samsung/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:28:44 +0000 (15:28 +1000)]
Merge remote-tracking branch 'renesas/next'
Stephen Rothwell [Fri, 7 Jun 2013 05:27:04 +0000 (15:27 +1000)]
Merge remote-tracking branch 'mvebu/for-next'
Conflicts:
arch/arm/Kconfig.debug
Stephen Rothwell [Fri, 7 Jun 2013 05:25:10 +0000 (15:25 +1000)]
Merge remote-tracking branch 'msm/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:23:25 +0000 (15:23 +1000)]
Merge remote-tracking branch 'imx-mxs/for-next'
Conflicts:
arch/arm/mach-mxs/mach-mxs.c
Stephen Rothwell [Fri, 7 Jun 2013 05:23:23 +0000 (15:23 +1000)]
Merge remote-tracking branch 'ep93xx/ep93xx-for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:21:42 +0000 (15:21 +1000)]
Merge remote-tracking branch 'bcm2835/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:19:25 +0000 (15:19 +1000)]
Merge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:17:44 +0000 (15:17 +1000)]
Merge remote-tracking branch 'mailbox/dbx500-prcmu-mailbox'
Stephen Rothwell [Fri, 7 Jun 2013 05:16:04 +0000 (15:16 +1000)]
Merge remote-tracking branch 'gpio-lw/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:14:18 +0000 (15:14 +1000)]
Merge remote-tracking branch 'irqdomain/irqdomain/next'
Stephen Rothwell [Fri, 7 Jun 2013 05:12:32 +0000 (15:12 +1000)]
Merge remote-tracking branch 'pinctrl/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 05:09:58 +0000 (15:09 +1000)]
Merge remote-tracking branch 'bcon/master'
Conflicts:
drivers/block/Kconfig
Stephen Rothwell [Fri, 7 Jun 2013 05:01:24 +0000 (15:01 +1000)]
Merge remote-tracking branch 'char-misc/char-misc-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:58:54 +0000 (14:58 +1000)]
Merge remote-tracking branch 'staging/staging-next'
Conflicts:
drivers/staging/silicom/bpctl_mod.c
Stephen Rothwell [Fri, 7 Jun 2013 04:57:16 +0000 (14:57 +1000)]
Merge remote-tracking branch 'usb-gadget/next'
Stephen Rothwell [Fri, 7 Jun 2013 04:55:08 +0000 (14:55 +1000)]
Merge remote-tracking branch 'usb/usb-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:53:07 +0000 (14:53 +1000)]
Merge remote-tracking branch 'tty/tty-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:49:30 +0000 (14:49 +1000)]
Merge remote-tracking branch 'driver-core/driver-core-next'
Conflicts:
drivers/base/cpu.c
drivers/base/memory.c
Stephen Rothwell [Fri, 7 Jun 2013 04:42:07 +0000 (14:42 +1000)]
Merge remote-tracking branch 'leds/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:40:21 +0000 (14:40 +1000)]
Merge remote-tracking branch 'regmap/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:32:01 +0000 (14:32 +1000)]
Merge remote-tracking branch 'workqueues/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:30:25 +0000 (14:30 +1000)]
Merge remote-tracking branch 'percpu/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:28:49 +0000 (14:28 +1000)]
Merge remote-tracking branch 'xen-arm/linux-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:28:47 +0000 (14:28 +1000)]
Merge remote-tracking branch 'xen-two/linux-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:27:02 +0000 (14:27 +1000)]
Merge remote-tracking branch 'kvm-arm/kvm-arm-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:25:23 +0000 (14:25 +1000)]
Merge remote-tracking branch 'kvm/linux-next'
Conflicts:
arch/s390/include/asm/pgtable.h
Stephen Rothwell [Fri, 7 Jun 2013 04:17:08 +0000 (14:17 +1000)]
Merge remote-tracking branch 'rcu/rcu/next'
Stephen Rothwell [Fri, 7 Jun 2013 04:15:10 +0000 (14:15 +1000)]
Merge remote-tracking branch 'spi-mb/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 04:06:45 +0000 (14:06 +1000)]
Merge remote-tracking branch 'trivial/for-next'
Conflicts:
Documentation/networking/netlink_mmap.txt
Stephen Rothwell [Fri, 7 Jun 2013 04:04:56 +0000 (14:04 +1000)]
Merge remote-tracking branch 'watchdog/master'
Stephen Rothwell [Fri, 7 Jun 2013 04:04:50 +0000 (14:04 +1000)]
Merge remote-tracking branch 'selinux/master'
Stephen Rothwell [Fri, 7 Jun 2013 04:00:30 +0000 (14:00 +1000)]
Merge remote-tracking branch 'security/next'
Stephen Rothwell [Fri, 7 Jun 2013 03:58:54 +0000 (13:58 +1000)]
Merge remote-tracking branch 'regulator/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:58:51 +0000 (13:58 +1000)]
Merge remote-tracking branch 'omap_dss2/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:57:13 +0000 (13:57 +1000)]
Merge remote-tracking branch 'fbdev/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:55:38 +0000 (13:55 +1000)]
Merge remote-tracking branch 'battery/master'
Stephen Rothwell [Fri, 7 Jun 2013 03:54:01 +0000 (13:54 +1000)]
Merge remote-tracking branch 'mfd/master'
Conflicts:
drivers/mfd/intel_msic.c
Stephen Rothwell [Fri, 7 Jun 2013 03:36:24 +0000 (13:36 +1000)]
Merge remote-tracking branch 'md/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:36:19 +0000 (13:36 +1000)]
Merge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:34:39 +0000 (13:34 +1000)]
Merge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:34:25 +0000 (13:34 +1000)]
Merge branch 'device-mapper/master'
Stephen Rothwell [Fri, 7 Jun 2013 03:28:13 +0000 (13:28 +1000)]
Merge remote-tracking branch 'block/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:23:45 +0000 (13:23 +1000)]
Merge remote-tracking branch 'cgroup/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:23:42 +0000 (13:23 +1000)]
Merge remote-tracking branch 'input-mt/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:22:05 +0000 (13:22 +1000)]
Merge remote-tracking branch 'input/next'
Stephen Rothwell [Fri, 7 Jun 2013 03:20:27 +0000 (13:20 +1000)]
Merge remote-tracking branch 'virtio/virtio-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:18:52 +0000 (13:18 +1000)]
Merge remote-tracking branch 'modules/modules-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:17:14 +0000 (13:17 +1000)]
Merge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:15:21 +0000 (13:15 +1000)]
Merge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:13:46 +0000 (13:13 +1000)]
Merge remote-tracking branch 'drm-tegra/drm/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:12:07 +0000 (13:12 +1000)]
Merge remote-tracking branch 'drm-intel/for-linux-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:04:11 +0000 (13:04 +1000)]
Merge remote-tracking branch 'drm/drm-next'
Stephen Rothwell [Fri, 7 Jun 2013 03:02:36 +0000 (13:02 +1000)]
Merge remote-tracking branch 'crypto/master'
Stephen Rothwell [Fri, 7 Jun 2013 03:01:01 +0000 (13:01 +1000)]
Merge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Fri, 7 Jun 2013 02:58:41 +0000 (12:58 +1000)]
Merge remote-tracking branch 'bluetooth/master'
Conflicts:
net/bluetooth/mgmt.c
Stephen Rothwell [Fri, 7 Jun 2013 02:56:30 +0000 (12:56 +1000)]
Merge remote-tracking branch 'wireless-next/master'
Conflicts:
drivers/net/wireless/ath/ath9k/Kconfig
drivers/net/wireless/ath/ath9k/debug.c
net/mac80211/iface.c
Stephen Rothwell [Fri, 7 Jun 2013 02:46:30 +0000 (12:46 +1000)]
Merge remote-tracking branch 'ipsec-next/master'
Stephen Rothwell [Fri, 7 Jun 2013 02:38:47 +0000 (12:38 +1000)]
Merge remote-tracking branch 'net-next/master'
Stephen Rothwell [Fri, 7 Jun 2013 02:37:11 +0000 (12:37 +1000)]
Merge remote-tracking branch 'slave-dma/next'
Stephen Rothwell [Fri, 7 Jun 2013 02:34:59 +0000 (12:34 +1000)]
Merge remote-tracking branch 'scsi/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:33:19 +0000 (12:33 +1000)]
Merge remote-tracking branch 'ubi/linux-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:31:04 +0000 (12:31 +1000)]
Merge remote-tracking branch 'thermal/next'
Stephen Rothwell [Fri, 7 Jun 2013 02:30:59 +0000 (12:30 +1000)]
Merge remote-tracking branch 'cpuidle/cpuidle-next'
Conflicts:
drivers/acpi/processor_driver.c
drivers/base/power/qos.c
Stephen Rothwell [Fri, 7 Jun 2013 02:29:20 +0000 (12:29 +1000)]
Merge remote-tracking branch 'idle/next'
Stephen Rothwell [Fri, 7 Jun 2013 02:21:10 +0000 (12:21 +1000)]
Merge remote-tracking branch 'pm/linux-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:19:33 +0000 (12:19 +1000)]
Merge remote-tracking branch 'infiniband/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:17:50 +0000 (12:17 +1000)]
Merge remote-tracking branch 'libata/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:16:11 +0000 (12:16 +1000)]
Merge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:14:11 +0000 (12:14 +1000)]
Merge remote-tracking branch 'v4l-dvb/master'
Stephen Rothwell [Fri, 7 Jun 2013 02:12:37 +0000 (12:12 +1000)]
Merge remote-tracking branch 'hwmon-staging/hwmon-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:11:00 +0000 (12:11 +1000)]
Merge remote-tracking branch 'i2c/i2c/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:09:23 +0000 (12:09 +1000)]
Merge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:05:35 +0000 (12:05 +1000)]
Merge remote-tracking branch 'pci/next'
Conflicts:
drivers/acpi/pci_root.c
Stephen Rothwell [Fri, 7 Jun 2013 02:03:56 +0000 (12:03 +1000)]
Merge remote-tracking branch 'xfs/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:02:19 +0000 (12:02 +1000)]
Merge remote-tracking branch 'v9fs/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 02:00:11 +0000 (12:00 +1000)]
Merge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Fri, 7 Jun 2013 01:58:34 +0000 (11:58 +1000)]
Merge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Fri, 7 Jun 2013 01:54:16 +0000 (11:54 +1000)]
Merge remote-tracking branch 'nfs/linux-next'
Stephen Rothwell [Fri, 7 Jun 2013 01:52:21 +0000 (11:52 +1000)]
Merge remote-tracking branch 'logfs/master'
Stephen Rothwell [Fri, 7 Jun 2013 01:50:46 +0000 (11:50 +1000)]
Merge remote-tracking branch 'jfs/jfs-next'
Stephen Rothwell [Fri, 7 Jun 2013 01:49:13 +0000 (11:49 +1000)]
Merge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Fri, 7 Jun 2013 01:41:04 +0000 (11:41 +1000)]
Merge remote-tracking branch 'fscache/fscache'
Stephen Rothwell [Fri, 7 Jun 2013 01:39:30 +0000 (11:39 +1000)]
Merge remote-tracking branch 'f2fs/dev'
Stephen Rothwell [Fri, 7 Jun 2013 01:31:46 +0000 (11:31 +1000)]
Merge remote-tracking branch 'ext4/dev'
Stephen Rothwell [Fri, 7 Jun 2013 01:30:13 +0000 (11:30 +1000)]
Merge remote-tracking branch 'ecryptfs/next'
Stephen Rothwell [Fri, 7 Jun 2013 01:28:36 +0000 (11:28 +1000)]
Merge remote-tracking branch 'cifs/for-next'
Stephen Rothwell [Fri, 7 Jun 2013 01:27:02 +0000 (11:27 +1000)]
Merge remote-tracking branch 'ceph/testing'
Stephen Rothwell [Fri, 7 Jun 2013 01:25:28 +0000 (11:25 +1000)]
Merge remote-tracking branch 'xtensa/for_next'