pandora-kernel.git
11 years agoMerge tag 'kirkwood_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux... fixes-for-linus
Olof Johansson [Fri, 19 Oct 2012 23:17:51 +0000 (16:17 -0700)]
Merge tag 'kirkwood_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux into fixes

From Jason Cooper:
 - improve #ifdef logic to prevent linker errors with CACHE_FEROCEON_L2
 - lsxl board dts fixes

* tag 'kirkwood_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux:
  ARM: kirkwood: fix buttons on lsxl boards
  ARM: kirkwood: fix LEDs names for lsxl boards
  ARM: Kirkwood: fix disabling CACHE_FEROCEON_L2

11 years agoMerge branch 'testing/driver-warnings' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Fri, 19 Oct 2012 22:40:18 +0000 (15:40 -0700)]
Merge branch 'testing/driver-warnings' of git://git./linux/kernel/git/arm/arm-soc into fixes

A collection of warning fixes on non-ARM code from Arnd Bergmann:

* 'testing/driver-warnings' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
  ARM: s3c: mark s3c2440_clk_add as __init_refok
  spi/s3c64xx: use correct dma_transfer_direction type
  pcmcia: sharpsl: don't discard sharpsl_pcmcia_ops
  USB: EHCI: mark ehci_orion_conf_mbus_windows __devinit
  mm/slob: use min_t() to compare ARCH_SLAB_MINALIGN
  SCSI: ARM: make fas216_dumpinfo function conditional
  SCSI: ARM: ncr5380/oak uses no interrupts

11 years agoARM: kirkwood: fix buttons on lsxl boards
Michael Walle [Thu, 27 Sep 2012 21:54:37 +0000 (23:54 +0200)]
ARM: kirkwood: fix buttons on lsxl boards

Change event type to switch for the power and autopower switches.
Additionally, this patch aligns the keycodes with the other linkstation
boards already supported by linux.

Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: kirkwood: fix LEDs names for lsxl boards
Michael Walle [Mon, 24 Sep 2012 20:49:02 +0000 (22:49 +0200)]
ARM: kirkwood: fix LEDs names for lsxl boards

Don't use the specific board name in a the common device tree include file.
Instead use the common name 'lsxl'.

Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: Kirkwood: fix disabling CACHE_FEROCEON_L2
Jason Gunthorpe [Sun, 30 Sep 2012 23:22:53 +0000 (17:22 -0600)]
ARM: Kirkwood: fix disabling CACHE_FEROCEON_L2

Move the CACHE_FEROCEON_L2 test to kirkwood_l2_init, since linking
fails on the reference to feroceon_l2_init.

Signed-off-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoMerge tag 'mvebu_gpio_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux...
Olof Johansson [Thu, 18 Oct 2012 00:13:24 +0000 (17:13 -0700)]
Merge tag 'mvebu_gpio_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux into fixes

From Jason Cooper:
 - missing break;s from converting if{}s to switch{}

* tag 'mvebu_gpio_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux:
  gpio: mvebu: Add missing breaks in mvebu_gpio_irq_set_type

11 years agoMerge tag 'mvebu_dove_late_fixes_for_v3.7' of git://git.infradead.org/users/jcooper...
Olof Johansson [Thu, 18 Oct 2012 00:09:37 +0000 (17:09 -0700)]
Merge tag 'mvebu_dove_late_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux into fixes

From Jason Cooper:

Misc. fixes for latest changes to mach-dove/
Fixes build breakage for mach-dove

* tag 'mvebu_dove_late_fixes_for_v3.7' of git://git.infradead.org/users/jcooper/linux:
  ARM: dove: Add crypto engine to DT
  ARM: dove: Remove watchdog from DT
  ARM: dove: Restructure SoC device tree descriptor
  ARM: dove: Fix clock names of sata and gbe
  ARM: dove: Fix tauros2 device tree init
  ARM: dove: Add pcie clock support

11 years agoMerge tag 'omap-for-v3.7-rc1/fixes-take5-signed' of git://git.kernel.org/pub/scm...
Olof Johansson [Thu, 18 Oct 2012 00:05:25 +0000 (17:05 -0700)]
Merge tag 'omap-for-v3.7-rc1/fixes-take5-signed' of git://git./linux/kernel/git/tmlind/linux-omap into fixes

From Tony Lindgren:

A boot problem fix for am33xx beaglebone caused by GPMC,
a regression fix for local timer, and a clockdomain locking fix.
Also few minor fixes for boot time and sparse warnings.

* tag 'omap-for-v3.7-rc1/fixes-take5-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
  ARM: OMAP2+: Allow kernel to boot even if GPMC fails to reserve memory
  ARM: OMAP: clockdomain: Fix locking on _clkdm_clk_hwmod_enable / disable
  ARM: OMAP4: devices: fixup OMAP4 DMIC platform device error message
  ARM: OMAP2+: clock data: Add dev-id for the omap-gpmc dummy fck
  ARM: OMAP: resolve sparse warning concerning debug_card_init()
  ARM: OMAP4: Fix twd_local_timer_register regression

11 years agoMerge tag 'tegra-for-3.7-fixes-for-rc2' of git://git.kernel.org/pub/scm/linux/kernel...
Olof Johansson [Thu, 18 Oct 2012 00:04:27 +0000 (17:04 -0700)]
Merge tag 'tegra-for-3.7-fixes-for-rc2' of git://git./linux/kernel/git/swarren/linux-tegra into fixes

From Stephen Warren: ARM: tegra: fixes for 3.7-rc2

This branch contains a couple small fixes for Tegra for 3.7.

* A fix for another clock rate calculation overflow
* A revert of a change that removed the "timer" clock on Tegra, coupled
  with a fix for the confusing symbol name clash that triggered it.

* tag 'tegra-for-3.7-fixes-for-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra:
  ARM: tegra: add tegra_timer clock
  ARM: tegra: rename tegra system timer
  ARM: tegra30: clk: Fix output_rate overflow

Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agogpio: mvebu: Add missing breaks in mvebu_gpio_irq_set_type
Axel Lin [Sun, 30 Sep 2012 08:23:27 +0000 (16:23 +0800)]
gpio: mvebu: Add missing breaks in mvebu_gpio_irq_set_type

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: dove: Add crypto engine to DT
Sebastian Hesselbarth [Tue, 25 Sep 2012 00:02:18 +0000 (02:02 +0200)]
ARM: dove: Add crypto engine to DT

Make use of DT support for the crypto engine on dove and remove
the obsolete init call.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: dove: Remove watchdog from DT
Sebastian Hesselbarth [Tue, 25 Sep 2012 00:02:17 +0000 (02:02 +0200)]
ARM: dove: Remove watchdog from DT

The watchdog on dove requires an interrupt that is not yet
available on DT. Therefore, the watchdog DT node is removed
until the corresponding chained intc is available.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: dove: Restructure SoC device tree descriptor
Sebastian Hesselbarth [Tue, 25 Sep 2012 00:02:16 +0000 (02:02 +0200)]
ARM: dove: Restructure SoC device tree descriptor

This patch adds proper ranges for all mapped addresses within
dove SoC and moves the interrupt controller node inside the simple-bus
node.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: dove: Fix clock names of sata and gbe
Sebastian Hesselbarth [Tue, 25 Sep 2012 00:02:15 +0000 (02:02 +0200)]
ARM: dove: Fix clock names of sata and gbe

This patch fixes wrong clock names of lately added clock gates
for sata and gbe (mv64xx_eth).

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: dove: Fix tauros2 device tree init
Sebastian Hesselbarth [Tue, 25 Sep 2012 00:02:14 +0000 (02:02 +0200)]
ARM: dove: Fix tauros2 device tree init

During the review process of dove DT patches, Tauros2 cache
init call was changed and DT support added. This patch fixes
the call to Tauros2 init and adds a DT node. Moreover, plat/irq.h
include was missing from mach-dove/common.c.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: dove: Add pcie clock support
Sebastian Hesselbarth [Tue, 25 Sep 2012 00:02:13 +0000 (02:02 +0200)]
ARM: dove: Add pcie clock support

As dove now has clock gating control ensure pcie ports grab their
clocks.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
11 years agoARM: OMAP2+: Allow kernel to boot even if GPMC fails to reserve memory omap-for-v3.7-rc1/fixes-take5-signed
Jon Hunter [Wed, 17 Oct 2012 14:41:25 +0000 (09:41 -0500)]
ARM: OMAP2+: Allow kernel to boot even if GPMC fails to reserve memory

Currently, if the GPMC driver fails to reserve memory when probed we will
call BUG() and the kernel will not boot. Instead of calling BUG(), return
an error from probe and allow kernel to boot.

Boot tested on AM335x beagle bone board and OMAP4430 Panda board.

V2 changes:
- Ensure that clock and memory resources are released on error.

Signed-off-by: Jon Hunter <jon-hunter@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP: clockdomain: Fix locking on _clkdm_clk_hwmod_enable / disable
Tero Kristo [Tue, 25 Sep 2012 16:05:32 +0000 (19:05 +0300)]
ARM: OMAP: clockdomain: Fix locking on _clkdm_clk_hwmod_enable / disable

Previously the code only acquired spinlock after increasing / decreasing
the usecount value, which is wrong. This leaves a small window where
a task switch may occur between the check of the usecount and the actual
wakeup / sleep of the domain. Fixed by moving the spinlock locking before
the usecount access. Left the usecount as atomic_t if someone wants an
easy access to the parameter through atomic_read.

Signed-off-by: Tero Kristo <t-kristo@ti.com>
Acked-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoMerge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas...
Olof Johansson [Wed, 17 Oct 2012 15:08:22 +0000 (08:08 -0700)]
Merge branch 'fixes' of git://git./linux/kernel/git/horms/renesas into fixes

From Simon Horman:
"Please consider the following fix for the KZM-A9-GT board for 3.7.
 They both resolve fallout from recent IOMEM() changes."

* 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: r8a7779: use __iomem pointers for MMIO
  ARM: shmobile: armadillo800eva: __io abuse cleanup

11 years agoARM: s3c: mark s3c2440_clk_add as __init_refok
Arnd Bergmann [Fri, 12 Oct 2012 11:03:28 +0000 (11:03 +0000)]
ARM: s3c: mark s3c2440_clk_add as __init_refok

s3c2440_clk_add is a subsys_interface method and calls clkdev_add_table,
which is marked as __init. The modpost script complains about this
because we must not call an __init function from a function in the .text
section, and we cannot reference an __init function from a subsys_interface
pointer.

I have verified that the only code path into s3c2440_clk_add() is
from "int __init s3c2440_init(void)", so s3c2440_clk_add can be marked
__init_refok instead.

Without this patch, building mini2440_defconfig results in:

WARNING: vmlinux.o(.text+0x9848): Section mismatch in reference from the function s3c2440_clk_add() to the function .init.text:clkdev_add_table()
The function s3c2440_clk_add() references
the function __init clkdev_add_table().
This is often because s3c2440_clk_add lacks a __init
annotation or the annotation of clkdev_add_table is wrong.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Mike Turquette <mturquette@linaro.org>
Cc: Ben Dooks <ben-linux@fluff.org>
11 years agospi/s3c64xx: use correct dma_transfer_direction type
Arnd Bergmann [Mon, 30 Apr 2012 16:31:27 +0000 (16:31 +0000)]
spi/s3c64xx: use correct dma_transfer_direction type

There is a subtle difference between dma_transfer_direction and
dma_data_direction: the former is used by the dmaengine framework,
while the latter is used by the dma-mapping API. Although the
purpose is comparable, the actual values are different and must
not be mixed. In this case, the driver just wants to use
dma_transfer_direction.

Without this patch, building s3c6400_defconfig results in:

drivers/spi/spi-s3c64xx.c: In function 's3c64xx_spi_dmacb':
drivers/spi/spi-s3c64xx.c:239:21: warning: comparison between
'enum dma_data_direction' and 'enum dma_transfer_direction' [-Wenum-compare]

As pointed out by Kukjin Kim, this also changes the use of constants
from DMA_FROM_DEVICE/DMA_TO_DEVICE to DMA_DEV_TO_MEM/DMA_MEM_TO_DEV.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Cc: Ben Dooks <ben-linux@fluff.org>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: spi-devel-general@lists.sourceforge.net
11 years agoARM: OMAP4: devices: fixup OMAP4 DMIC platform device error message
Sebastien Guiriec [Tue, 16 Oct 2012 18:19:17 +0000 (11:19 -0700)]
ARM: OMAP4: devices: fixup OMAP4 DMIC platform device error message

Correct DMIC hwmod lockup error message and replace printk() by
pr_err().

Signed-off-by: Sebastien Guiriec <s-guiriec@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP2+: clock data: Add dev-id for the omap-gpmc dummy fck
Benoit Cousson [Tue, 16 Oct 2012 18:19:17 +0000 (11:19 -0700)]
ARM: OMAP2+: clock data: Add dev-id for the omap-gpmc dummy fck

The GPMC code has been converted to a driver by the following commit:

 commit da496873970c57c4b31e186d967933da0ffa0d7c
 Author: Afzal Mohammed <afzal@ti.com>
 Date:   Sun Sep 23 17:28:25 2012 -0600

   ARM: OMAP2+: gpmc: minimal driver support

It now requests a clock with con-id "fck" otherwise the probe will fails.

[    0.342010] omap-gpmc omap-gpmc: error: clk_get
[    0.346771] omap-gpmc: probe of omap-gpmc failed with error -2

Add the "omap-gmpc" dev-id and fck con-id to the already existing
gmpc-fck dummy clock.

Reported-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Benoit Cousson <b-cousson@ti.com>
Cc: Afzal Mohammed <afzal@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP: resolve sparse warning concerning debug_card_init()
Paul Walmsley [Tue, 16 Oct 2012 18:19:17 +0000 (11:19 -0700)]
ARM: OMAP: resolve sparse warning concerning debug_card_init()

Commit 801475ccb2b2c1928b22aec4b9e5285d9e347602 ("ARM: OMAP: move
debug_card_init() function") results in the following new sparse
warning:

arch/arm/plat-omap/debug-devices.c:71:12: warning: symbol 'debug_card_init' was not declared. Should it be static?

Fix by implementing Tony's suggestion to add a "sideways include" to the
new location of the debug-devices.h file in arch/arm/mach-omap2/.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: OMAP4: Fix twd_local_timer_register regression
Tony Lindgren [Tue, 16 Oct 2012 18:19:16 +0000 (11:19 -0700)]
ARM: OMAP4: Fix twd_local_timer_register regression

Commit 7d7e1eba (ARM: OMAP2+: Prepare for irqs.h removal)
changed the interrupts to allow enabling sparse IRQ, but
accidentally added the omap3 INTC base to the local IRQ.
This causes the following:

twd: can't register interrupt 45 (-22)
twd_local_timer_register failed -22

The right fix is to not add any base, as it is a local
timer. For the OMAP44XX_IRQ_LOCALWDT we had defined earlier
there are no users, so no need to fix that.

Reported-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
11 years agoARM: tegra: add tegra_timer clock
Sivaram Nair [Tue, 16 Oct 2012 10:08:36 +0000 (13:08 +0300)]
ARM: tegra: add tegra_timer clock

This undoes commit 20f4665 "ARM: tegra: remove tegra_timer from
tegra_list_clks" by bringing back the tegra_timer clock. tegra_timer is
indeed a clock (hidden by the PERIPH_CLK macro) which should be added
to the tegra_list_clks.

The above commit caused tegra_init_timer() failing to get the clk
reference.

Signed-off-by: Sivaram Nair <sivaramn@nvidia.com>
[swarren: added the reverted commit's subject to this patch description]
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra: rename tegra system timer
Sivaram Nair [Tue, 16 Oct 2012 10:08:35 +0000 (13:08 +0300)]
ARM: tegra: rename tegra system timer

The timer variable is renamed to avoid confusion and symbol name clash
with the tegra_timer clock.

Signed-off-by: Sivaram Nair <sivaramn@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: tegra30: clk: Fix output_rate overflow
Mark Zhang [Tue, 16 Oct 2012 08:31:49 +0000 (16:31 +0800)]
ARM: tegra30: clk: Fix output_rate overflow

Change the type of variable from "unsigned long" to "u64".
This avoids the overflow while clock rate calculating.

Signed-off-by: Mark Zhang <markz@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
11 years agoARM: dts: imx6q-arm2: move NANDF_CS pins out of 'hog'
Shawn Guo [Mon, 15 Oct 2012 08:48:04 +0000 (16:48 +0800)]
ARM: dts: imx6q-arm2: move NANDF_CS pins out of 'hog'

Commit 9e3c0066 (ARM: dts: imx6q-arm2: add pinctrl for uart and enet)
defines NANDF_CS pins as gpio in 'hog', assuming these two pins are
always used by usdhc3 in gpio mode as card-detection and
write-protection on ARM2 board.  But it's not true.  These pins are
shared by usdhc3 and gpmi-nand.  We should have the pins functional
for gpmi-nand when usdhc3 is disabled.

Move the pins out of 'hog', so that pins only work in gpio mode as CD
and WP when usdhc3 is enabled, and otherwise they are available for
gpmi-nand.

Reported-by: Huang Shijie <b32955@freescale.com>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Tested-by: Huang Shijie <shijie8@gmail.com>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agodtb: fix interrupt assignment for ehci/uhci on wm8505
Tony Prisk [Sat, 13 Oct 2012 04:18:02 +0000 (17:18 +1300)]
dtb: fix interrupt assignment for ehci/uhci on wm8505

EHCI and UHCI devices in wm8505.dtsi should use IRQ 1 & 0
respectively - not 43 as used on newer models.

Signed-off-by: Tony Prisk <linux@prisktech.co.nz>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: dts: compile Integrator device trees
Linus Walleij [Fri, 12 Oct 2012 20:22:59 +0000 (22:22 +0200)]
ARM: dts: compile Integrator device trees

This makes sure that the ARM Integrator device trees get compiled
during build.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Olof Johansson <olof@lixom.net>
11 years agoARM: shmobile: r8a7779: use __iomem pointers for MMIO
Kuninori Morimoto [Mon, 15 Oct 2012 08:10:28 +0000 (01:10 -0700)]
ARM: shmobile: r8a7779: use __iomem pointers for MMIO

0a4b04dc299dfb691827a4001b3d8d7e443b71c9
(ARM: shmobile: use __iomem pointers for MMIO)
modified iomem pointers so that IOMEM() macro will be used,
but clock-r8a7779.c was out of target.
This patch fixes it up.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
11 years agoARM: shmobile: armadillo800eva: __io abuse cleanup
Kuninori Morimoto [Fri, 12 Oct 2012 04:59:17 +0000 (21:59 -0700)]
ARM: shmobile: armadillo800eva: __io abuse cleanup

a2a47ca36642e3995e982957bc42678cf11ca6ac
(ARM: __io abuse cleanup) cleanuped __io() -> IOMEM(),
but armadillo800eva was a outside of a target,
since "merge window" timing issue.
This patch cleanup it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
11 years agoLinux 3.7-rc1 v3.7-rc1
Linus Torvalds [Sun, 14 Oct 2012 21:41:04 +0000 (14:41 -0700)]
Linux 3.7-rc1

11 years agoMerge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus
Linus Torvalds [Sun, 14 Oct 2012 21:39:05 +0000 (14:39 -0700)]
Merge branch 'upstream' of git://git.linux-mips.org/ralf/upstream-linus

Pull MIPS update from Ralf Baechle:
 "Cleanups and fixes for breakage that occured earlier during this merge
  phase.  Also a few patches that didn't make the first pull request.
  Of those is the Alchemy work that merges code for many of the SOCs and
  evaluation boards thus among other code shrinkage, reduces the number
  of MIPS defconfigs by 5."

* 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (22 commits)
  MIPS: SNI: Switch RM400 serial to SCCNXP driver
  MIPS: Remove unused empty_bad_pmd_table[] declaration.
  MIPS: MT: Remove kspd.
  MIPS: Malta: Fix section mismatch.
  MIPS: asm-offset.c: Delete unused irq_cpustat_t struct offsets.
  MIPS: Alchemy: Merge PB1100/1500 support into DB1000 code.
  MIPS: Alchemy: merge PB1550 support into DB1550 code
  MIPS: Alchemy: Single kernel for DB1200/1300/1550
  MIPS: Optimize TLB refill for RI/XI configurations.
  MIPS: proc: Cleanup printing of ASEs.
  MIPS: Hardwire detection of DSP ASE Rev 2 for systems, as required.
  MIPS: Add detection of DSP ASE Revision 2.
  MIPS: Optimize pgd_init and pmd_init
  MIPS: perf: Add perf functionality for BMIPS5000
  MIPS: perf: Split the Kconfig option CONFIG_MIPS_MT_SMP
  MIPS: perf: Remove unnecessary #ifdef
  MIPS: perf: Add cpu feature bit for PCI (performance counter interrupt)
  MIPS: perf: Change the "mips_perf_event" table unsupported indicator.
  MIPS: Align swapper_pg_dir to 64K for better TLB Refill code.
  vmlinux.lds.h: Allow architectures to add sections to the front of .bss
  ...

11 years agoMerge branch 'modules-next' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty...
Linus Torvalds [Sun, 14 Oct 2012 20:39:34 +0000 (13:39 -0700)]
Merge branch 'modules-next' of git://git./linux/kernel/git/rusty/linux

Pull module signing support from Rusty Russell:
 "module signing is the highlight, but it's an all-over David Howells frenzy..."

Hmm "Magrathea: Glacier signing key". Somebody has been reading too much HHGTTG.

* 'modules-next' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (37 commits)
  X.509: Fix indefinite length element skip error handling
  X.509: Convert some printk calls to pr_devel
  asymmetric keys: fix printk format warning
  MODSIGN: Fix 32-bit overflow in X.509 certificate validity date checking
  MODSIGN: Make mrproper should remove generated files.
  MODSIGN: Use utf8 strings in signer's name in autogenerated X.509 certs
  MODSIGN: Use the same digest for the autogen key sig as for the module sig
  MODSIGN: Sign modules during the build process
  MODSIGN: Provide a script for generating a key ID from an X.509 cert
  MODSIGN: Implement module signature checking
  MODSIGN: Provide module signing public keys to the kernel
  MODSIGN: Automatically generate module signing keys if missing
  MODSIGN: Provide Kconfig options
  MODSIGN: Provide gitignore and make clean rules for extra files
  MODSIGN: Add FIPS policy
  module: signature checking hook
  X.509: Add a crypto key parser for binary (DER) X.509 certificates
  MPILIB: Provide a function to read raw data into an MPI
  X.509: Add an ASN.1 decoder
  X.509: Add simple ASN.1 grammar compiler
  ...

11 years agox86, boot: Explicitly include autoconf.h for hostprogs
Matt Fleming [Fri, 12 Oct 2012 10:19:59 +0000 (11:19 +0100)]
x86, boot: Explicitly include autoconf.h for hostprogs

The hostprogs need access to the CONFIG_* symbols found in
include/generated/autoconf.h.  But commit abbf1590de22 ("UAPI: Partition
the header include path sets and add uapi/ header directories") replaced
$(LINUXINCLUDE) with $(USERINCLUDE) which doesn't contain the necessary
include paths.

This has the undesirable effect of breaking the EFI boot stub because
the #ifdef CONFIG_EFI_STUB code in arch/x86/boot/tools/build.c is
never compiled.

It should also be noted that because $(USERINCLUDE) isn't exported by
the top-level Makefile it's actually empty in arch/x86/boot/Makefile.

Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Ingo Molnar <mingo@kernel.org>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agoperf: Fix UAPI fallout
Ingo Molnar [Sun, 14 Oct 2012 08:40:57 +0000 (10:40 +0200)]
perf: Fix UAPI fallout

The UAPI commits forgot to test tooling builds such as tools/perf/,
and this fixes the fallout.

Manual conversion.

Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agoMerge branch 'late-for-linus' of git://git.linaro.org/people/rmk/linux-arm
Linus Torvalds [Sun, 14 Oct 2012 00:18:53 +0000 (17:18 -0700)]
Merge branch 'late-for-linus' of git://git.linaro.org/people/rmk/linux-arm

Pull ARM update from Russell King:
 "This is the final round of stuff for ARM, left until the end of the
  merge window to reduce the number of conflicts.  This set contains the
  ARM part of David Howells UAPI changes, and a fix to the ordering of
  'select' statements in ARM Kconfig files (see the appropriate commit
  for why this happened - thanks to Andrew Morton for pointing out the
  problem.)

  I've left this as long as I dare for this window to avoid conflicts,
  and I regenerated the config patch yesterday, posting it to our
  mailing list for review and testing.  I have several acks which
  include successful test reports for it.

  However, today I notice we've got new conflicts with previously unseen
  code...  though that conflict should be trivial (it's my changes vs a
  one liner.)"

* 'late-for-linus' of git://git.linaro.org/people/rmk/linux-arm:
  ARM: config: make sure that platforms are ordered by option string
  ARM: config: sort select statements alphanumerically
  UAPI: (Scripted) Disintegrate arch/arm/include/asm

Fix up fairly conflict in arch/arm/Kconfig (the select re-organization
vs recent addition of GENERIC_KERNEL_EXECVE)

11 years agoMerge tag 'disintegrate-main-20121013' of git://git.infradead.org/users/dhowells...
Linus Torvalds [Sat, 13 Oct 2012 20:28:32 +0000 (13:28 -0700)]
Merge tag 'disintegrate-main-20121013' of git://git.infradead.org/users/dhowells/linux-headers

Pull UAPI disintegration for include/linux/{,byteorder/}*.h from David Howells:
 "The patches contained herein do the following:

 (1) Remove kernel-only stuff in linux/ppp-comp.h from the UAPI.  I checked
     this with Paul Mackerras before I created the patch and he suggested some
     extra bits to unexport.

 (2) Remove linux/blk_types.h entirely from the UAPI as none of it is userspace
     applicable, and remove from the UAPI that part of linux/fs.h that was the
     reason for linux/blk_types.h being exported in the first place.  I
     discussed this with Jens Axboe before creating the patch.

 (3) The big patch of the series to disintegrate include/linux/*.h as a unit.
     This could be split up, though there would be collisions in moving stuff
     between the two Kbuild files when the parts are merged as that file is
     sorted alphabetically rather than being grouped by subsystem.

     Of this set of headers, 17 files have changed in the UAPI exported region
     since the 4th and only 8 since the 9th so there isn't much change in this
     area - as one might expect.

     It should be pretty obvious and straightforward if it does come to fixing
     up: stuff in __KERNEL__ guards stays where it is and stuff outside moves
     to the same file in the include/uapi/linux/ directory.

     If a new file appears then things get a bit more complicated as the
     "headers +=" line has to move to include/uapi/linux/Kbuild.  Only one new
     file has appeared since the 9th and I judge this type of event relatively
     unlikely.

 (4) A patch to disintegrate include/linux/byteorder/*.h as a unit.

Signed-off-by: David Howells <dhowells@redhat.com>"
* tag 'disintegrate-main-20121013' of git://git.infradead.org/users/dhowells/linux-headers:
  UAPI: (Scripted) Disintegrate include/linux/byteorder
  UAPI: (Scripted) Disintegrate include/linux
  UAPI: Unexport linux/blk_types.h
  UAPI: Unexport part of linux/ppp-comp.h

11 years agoMerge tag 'disintegrate-spi-20121009' of git://git.infradead.org/users/dhowells/linux...
Linus Torvalds [Sat, 13 Oct 2012 20:26:39 +0000 (13:26 -0700)]
Merge tag 'disintegrate-spi-20121009' of git://git.infradead.org/users/dhowells/linux-headers

Pull spi UAPI disintegration from David Howells:
 "This is to complete part of the Userspace API (UAPI) disintegration
  for which the preparatory patches were pulled recently.  After these
  patches, userspace headers will be segregated into:

        include/uapi/linux/.../foo.h

  for the userspace interface stuff, and:

        include/linux/.../foo.h

  for the strictly kernel internal stuff.

Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>"
* tag 'disintegrate-spi-20121009' of git://git.infradead.org/users/dhowells/linux-headers:
  UAPI: (Scripted) Disintegrate include/linux/spi

11 years agoMerge tag 'openrisc-uapi' of git://openrisc.net/jonas/linux
Linus Torvalds [Sat, 13 Oct 2012 20:25:19 +0000 (13:25 -0700)]
Merge tag 'openrisc-uapi' of git://openrisc.net/jonas/linux

Pull OpenRISC uapi disintegration from Jonas Bonn:
 "OpenRISC UAPI disintegration work from David Howells"

* tag 'openrisc-uapi' of git://openrisc.net/jonas/linux:
  UAPI: (Scripted) Disintegrate arch/openrisc/include/asm

11 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm...
Linus Torvalds [Sat, 13 Oct 2012 20:23:39 +0000 (13:23 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ebiederm/user-namespace

Pull user namespace compile fixes from Eric W Biederman:
 "This tree contains three trivial fixes.  One compiler warning, one
  thinko fix, and one build fix"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
  btrfs: Fix compilation with user namespace support enabled
  userns: Fix posix_acl_file_xattr_userns gid conversion
  userns: Properly print bluetooth socket uids

11 years agoMerge tag 'md-3.7' of git://neil.brown.name/md
Linus Torvalds [Sat, 13 Oct 2012 20:22:01 +0000 (13:22 -0700)]
Merge tag 'md-3.7' of git://neil.brown.name/md

Pull md updates from NeilBrown:
 - "discard" support, some dm-raid improvements and other assorted bits
   and pieces.

* tag 'md-3.7' of git://neil.brown.name/md: (29 commits)
  md: refine reporting of resync/reshape delays.
  md/raid5: be careful not to resize_stripes too big.
  md: make sure manual changes to recovery checkpoint are saved.
  md/raid10: use correct limit variable
  md: writing to sync_action should clear the read-auto state.
  Subject: [PATCH] md:change resync_mismatches to atomic64_t to avoid races
  md/raid5: make sure to_read and to_write never go negative.
  md: When RAID5 is dirty, force reconstruct-write instead of read-modify-write.
  md/raid5: protect debug message against NULL derefernce.
  md/raid5: add some missing locking in handle_failed_stripe.
  MD: raid5 avoid unnecessary zero page for trim
  MD: raid5 trim support
  md/bitmap:Don't use IS_ERR to judge alloc_page().
  md/raid1: Don't release reference to device while handling read error.
  raid: replace list_for_each_continue_rcu with new interface
  add further __init annotations to crypto/xor.c
  DM RAID: Fix for "sync" directive ineffectiveness
  DM RAID: Fix comparison of index and quantity for "rebuild" parameter
  DM RAID: Add rebuild capability for RAID10
  DM RAID: Move 'rebuild' checking code to its own function
  ...

11 years agoMerge branch 'config' into late-for-linus
Russell King [Sat, 13 Oct 2012 16:14:17 +0000 (17:14 +0100)]
Merge branch 'config' into late-for-linus

11 years agoARM: config: make sure that platforms are ordered by option string
Russell King [Fri, 12 Oct 2012 13:20:52 +0000 (14:20 +0100)]
ARM: config: make sure that platforms are ordered by option string

The large platform selection choice should be sorted by option string
so it's easy to find the platform you're looking for.  Fix the few
options which are out of this order.

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoARM: config: sort select statements alphanumerically
Russell King [Sat, 6 Oct 2012 16:12:25 +0000 (17:12 +0100)]
ARM: config: sort select statements alphanumerically

As suggested by Andrew Morton:

  This is a pet peeve of mine.  Any time there's a long list of items
  (header file inclusions, kconfig entries, array initalisers, etc) and
  someone wants to add a new item, they *always* go and stick it at the
  end of the list.

  Guys, don't do this.  Either put the new item into a randomly-chosen
  position or, probably better, alphanumerically sort the list.

lets sort all our select statements alphanumerically.  This commit was
created by the following perl:

while (<>) {
while (/\\\s*$/) {
$_ .= <>;
}
undef %selects if /^\s*config\s+/;
if (/^\s+select\s+(\w+).*/) {
if (defined($selects{$1})) {
if ($selects{$1} eq $_) {
print STDERR "Warning: removing duplicated $1 entry\n";
} else {
print STDERR "Error: $1 differently selected\n".
"\tOld: $selects{$1}\n".
"\tNew: $_\n";
exit 1;
}
}
$selects{$1} = $_;
next;
}
if (%selects and (/^\s*$/ or /^\s+help/ or /^\s+---help---/ or
  /^endif/ or /^endchoice/)) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
undef %selects;
}
print;
}
if (%selects) {
foreach $k (sort (keys %selects)) {
print "$selects{$k}";
}
}

It found two duplicates:

Warning: removing duplicated S5P_SETUP_MIPIPHY entry
Warning: removing duplicated HARDIRQS_SW_RESEND entry

and they are identical duplicates, hence the shrinkage in the diffstat
of two lines.

We have four testers reporting success of this change (Tony, Stephen,
Linus and Sekhar.)

Acked-by: Jason Cooper <jason@lakedaemon.net>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
11 years agoUAPI: (Scripted) Disintegrate include/linux/byteorder
David Howells [Sat, 13 Oct 2012 09:46:49 +0000 (10:46 +0100)]
UAPI: (Scripted) Disintegrate include/linux/byteorder

Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Michael Kerrisk <mtk.manpages@gmail.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Dave Jones <davej@redhat.com>
11 years agoUAPI: (Scripted) Disintegrate include/linux
David Howells [Sat, 13 Oct 2012 09:46:48 +0000 (10:46 +0100)]
UAPI: (Scripted) Disintegrate include/linux

Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Michael Kerrisk <mtk.manpages@gmail.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Dave Jones <davej@redhat.com>
11 years agoUAPI: Unexport linux/blk_types.h
David Howells [Sat, 13 Oct 2012 09:45:06 +0000 (10:45 +0100)]
UAPI: Unexport linux/blk_types.h

It seems that was linux/blk_types.h incorrectly exported to fix up some missing
bits required by the exported parts of linux/fs.h (READ, WRITE, READA, etc.).

So unexport linux/blk_types.h and unexport the relevant bits of linux/fs.h.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: Jens Axboe <jaxboe@fusionio.com>
cc: Tejun Heo <tj@kernel.org>
cc: Al Viro <viro@ZenIV.linux.org.uk>

11 years agoUAPI: Unexport part of linux/ppp-comp.h
David Howells [Sat, 13 Oct 2012 08:58:38 +0000 (09:58 +0100)]
UAPI: Unexport part of linux/ppp-comp.h

Unexport part of linux/ppp-comp.h as userspace can't make use of that bit.

Signed-off-by: David Howells <dhowells@redhat.com>
cc: Paul Mackerras <paulus@samba.org>
cc: David Miller <davem@davemloft.net>

11 years agoMerge tag 'disintegrate-openrisc-20121009' of git://git.infradead.org/users/dhowells...
Jonas Bonn [Sat, 13 Oct 2012 05:38:37 +0000 (07:38 +0200)]
Merge tag 'disintegrate-openrisc-20121009' of git://git.infradead.org/users/dhowells/linux-headers

UAPI Disintegration 2012-10-09

* tag 'disintegrate-openrisc-20121009' of git://git.infradead.org/users/dhowells/linux-headers:
  UAPI: (Scripted) Disintegrate arch/openrisc/include/asm

11 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
Linus Torvalds [Sat, 13 Oct 2012 02:29:00 +0000 (11:29 +0900)]
Merge branch 'for-linus' of git://git./linux/kernel/git/jmorris/linux-security

Pull TPM bugfixes from James Morris.

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
  tpm: Propagate error from tpm_transmit to fix a timeout hang
  driver/char/tpm: fix regression causesd by ppi

11 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux
Linus Torvalds [Sat, 13 Oct 2012 02:27:59 +0000 (11:27 +0900)]
Merge branch 'release' of git://git./linux/kernel/git/lenb/linux

Pull ACPI & Thermal updates from Len Brown:
 "The generic Linux thermal layer is gaining some new capabilities
  (generic cooling via cpufreq) and some new customers (ARM).

  Also, an ACPI EC bug fix plus a regression fix."

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux: (30 commits)
  tools/power/acpi/acpidump: remove duplicated include from acpidump.c
  ACPI idle, CPU hotplug: Fix NULL pointer dereference during hotplug
  cpuidle / ACPI: fix potential NULL pointer dereference
  ACPI: EC: Add a quirk for CLEVO M720T/M730T laptop
  ACPI: EC: Make the GPE storm threshold a module parameter
  thermal: Exynos: Fix NULL pointer dereference in exynos_unregister_thermal()
  Thermal: Fix bug on cpu_cooling, cooling device's id conflict problem.
  thermal: exynos: Use devm_* functions
  ARM: exynos: add thermal sensor driver platform data support
  thermal: exynos: register the tmu sensor with the kernel thermal layer
  thermal: exynos5: add exynos5250 thermal sensor driver support
  hwmon: exynos4: move thermal sensor driver to driver/thermal directory
  thermal: add generic cpufreq cooling implementation
  Fix a build error.
  thermal: Fix potential NULL pointer accesses
  thermal: add Renesas R-Car thermal sensor support
  thermal: fix potential out-of-bounds memory access
  Thermal: Introduce locking for cdev.thermal_instances list.
  Thermal: Unify the code for both active and passive cooling
  Thermal: Introduce simple arbitrator for setting device cooling state
  ...

11 years agoMerge tag 'for-3.7' of git://openrisc.net/jonas/linux
Linus Torvalds [Sat, 13 Oct 2012 02:25:41 +0000 (11:25 +0900)]
Merge tag 'for-3.7' of git://openrisc.net/jonas/linux

Pull OpenRISC updates from Jonas Bonn:
 "Fixups for some corner cases, build issues, and some obvious bugs in
  IRQ handling.  No major changes."

* tag 'for-3.7' of git://openrisc.net/jonas/linux:
  openrisc: mask interrupts in irq_mask_ack function
  openrisc: fix typos in comments and warnings
  openrisc: PIC should act on domain-local irqs
  openrisc: Make cpu_relax() invoke barrier()
  audit: define AUDIT_ARCH_OPENRISC
  openrisc: delay: fix handling of counter overflow
  openrisc: delay: fix loops calculation for __const_udelay

11 years agoMerge tag 'disintegrate-misc-arches-20121010' of git://git.infradead.org/users/dhowel...
Linus Torvalds [Sat, 13 Oct 2012 02:22:31 +0000 (11:22 +0900)]
Merge tag 'disintegrate-misc-arches-20121010' of git://git.infradead.org/users/dhowells/linux-headers

Pull UAPI disintegration for misc arches from David Howells:
 "UAPI disintegration for MN10300, FRV and AVR32 arches"

* tag 'disintegrate-misc-arches-20121010' of git://git.infradead.org/users/dhowells/linux-headers:
  UAPI: (Scripted) Disintegrate arch/mn10300/include/asm
  UAPI: (Scripted) Disintegrate arch/frv/include/asm
  UAPI: (Scripted) Disintegrate arch/avr32/include/asm

11 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
Linus Torvalds [Sat, 13 Oct 2012 02:21:15 +0000 (11:21 +0900)]
Merge branch 'merge' of git://git./linux/kernel/git/benh/powerpc

Pull powerpc uapi disintegration from Benjamin Herrenschmidt.

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
  UAPI: (Scripted) Disintegrate arch/powerpc/include/asm

11 years agoMerge tag 'arm64-uapi' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas...
Linus Torvalds [Sat, 13 Oct 2012 02:20:04 +0000 (11:20 +0900)]
Merge tag 'arm64-uapi' of git://git./linux/kernel/git/cmarinas/linux-aarch64

Pull arm64 uapi disintegration from Catalin Marinas:
 "UAPI headers for arm64 together with some clean-up to make it
  possible:
   - Do not export the COMPAT_* definitions to user
   - Simplify the compat unistd32.h definitions and remove the
     __SYSCALL_COMPAT guard
   - Disintegrate the arch/arm64/include/asm/* headers"

* tag 'arm64-uapi' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64:
  UAPI: (Scripted) Disintegrate arch/arm64/include/asm
  arm64: Do not export the compat-specific definitions to the user
  arm64: Do not include asm/unistd32.h in asm/unistd.h
  arm64: Remove unused definitions from asm/unistd32.h

11 years agoMerge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming
Linus Torvalds [Sat, 13 Oct 2012 02:19:00 +0000 (11:19 +0900)]
Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming

Pull C6X UAPI disintegration from Mark Salter:

 - scripted UAPI disintegration by David Howells.

* tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming:
  UAPI: (Scripted) Disintegrate arch/c6x/include/asm

11 years agoMerge tag 'for_linus-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel...
Linus Torvalds [Sat, 13 Oct 2012 02:16:58 +0000 (11:16 +0900)]
Merge tag 'for_linus-3.7' of git://git./linux/kernel/git/jwessel/kgdb

Pull KGDB/KDB fixes and cleanups from Jason Wessel:
 "Cleanups
   - Clean up compile warnings in kgdboc.c and x86/kernel/kgdb.c
   - Add module event hooks for simplified debugging with gdb
 Fixes
   - Fix kdb to stop paging with 'q' on bta and dmesg
   - Fix for data that scrolls off the vga console due to line wrapping
     when using the kdb pager
 New
   - The debug core registers for kernel module events which allows a
     kernel aware gdb to automatically load symbols and break on entry
     to a kernel module
   - Allow kgdboc=kdb to setup kdb on the vga console"

* tag 'for_linus-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb:
  tty/console: fix warnings in drivers/tty/serial/kgdboc.c
  kdb,vt_console: Fix missed data due to pager overruns
  kdb: Fix dmesg/bta scroll to quit with 'q'
  kgdboc: Accept either kbd or kdb to activate the vga + keyboard kdb shell
  kgdb,x86: fix warning about unused variable
  mips,kgdb: fix recursive page fault with CONFIG_KPROBES
  kgdb: Add module event hooks

11 years agoMerge tag 'stable/for-linus-3.7-uapi-tag' of git://git.kernel.org/pub/scm/linux/kerne...
Linus Torvalds [Sat, 13 Oct 2012 02:14:29 +0000 (11:14 +0900)]
Merge tag 'stable/for-linus-3.7-uapi-tag' of git://git./linux/kernel/git/konrad/xen

Pull Xen UAPI disintegration from Konrad Rzeszutek Wilk:
 "This has the UAPI disintegration work done by David Howells"

* tag 'stable/for-linus-3.7-uapi-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
  UAPI: (Scripted) Disintegrate include/xen

11 years agoMerge tag 'mmc-merge-for-3.7-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 13 Oct 2012 02:07:40 +0000 (11:07 +0900)]
Merge tag 'mmc-merge-for-3.7-rc1-part2' of git://git./linux/kernel/git/cjb/mmc

Pull two more mmc changes from Chris Ball:

 - Disintegrate UAPI

 - fix a mismerge that caused a build error.

* tag 'mmc-merge-for-3.7-rc1-part2' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc:
  UAPI: (Scripted) Disintegrate include/linux/mmc
  mmc: mxs-mmc: Fix merge issue causing build error

11 years agoMerge tag 'dm-3.7-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm
Linus Torvalds [Sat, 13 Oct 2012 01:57:57 +0000 (10:57 +0900)]
Merge tag 'dm-3.7-changes' of git://git./linux/kernel/git/agk/linux-dm

Pull device-mapper changes from Alasdair G Kergon:
 "Remove the power-of-2 block size constraint on discards in dm thin
  provisioning and factor the bio_prison code out into a separate module
  (for sharing with the forthcoming cache target).

  Use struct bio's front_pad to eliminate the use of one separate
  mempool by bio-based devices.

  A few other tiny clean-ups."

* tag 'dm-3.7-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm:
  dm: store dm_target_io in bio front_pad
  dm thin: move bio_prison code to separate module
  dm thin: prepare to separate bio_prison code
  dm thin: support discard with non power of two block size
  dm persistent data: convert to use le32_add_cpu
  dm: use ACCESS_ONCE for sysfs values
  dm bufio: use list_move
  dm mpath: fix check for null mpio in end_io fn

11 years agoMerge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
Linus Torvalds [Sat, 13 Oct 2012 01:57:01 +0000 (10:57 +0900)]
Merge tag 'scsi-misc' of git://git./linux/kernel/git/jejb/scsi

Pull misc SCSI updates from James Bottomley:
 "This is an assorted set of stragglers into the merge window with
  driver updates for megaraid_sas, lpfc, bfi and mvumi.  It also
  includes some fairly major fixes for virtio-scsi (scatterlist init),
  scsi_debug (off by one error), storvsc (use after free) and qla2xxx
  (potential deadlock).

Signed-off-by: James Bottomley <JBottomley@Parallels.com>"
* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (49 commits)
  [SCSI] storvsc: Account for in-transit packets in the RESET path
  [SCSI] qla2xxx: fix potential deadlock on ha->hardware_lock
  [SCSI] scsi_debug: Fix off-by-one bug when unmapping region
  [SCSI] Shorten the path length of scsi_cmd_to_driver()
  [SCSI] virtio-scsi: support online resizing of disks
  [SCSI] virtio-scsi: fix LUNs greater than 255
  [SCSI] virtio-scsi: initialize scatterlist structure
  [SCSI] megaraid_sas: Version, Changelog, Copyright update
  [SCSI] megaraid_sas: Remove duplicate code
  [SCSI] megaraid_sas: Add SystemPD FastPath support
  [SCSI] megaraid_sas: Add array boundary check for SystemPD
  [SCSI] megaraid_sas: Load io_request DataLength in bytes
  [SCSI] megaraid_sas: Add module param for configurable MSI-X vector count
  [SCSI] megaraid_sas: Remove un-needed completion_lock spinlock calls
  [SCSI] lpfc 8.3.35: Update lpfc version for 8.3.35 driver release
  [SCSI] lpfc 8.3.35: Fixed not reporting logical link speed to SCSI midlayer when QoS not on
  [SCSI] lpfc 8.3.35: Fix error with fabric service parameters causing performance issues
  [SCSI] lpfc 8.3.35: Fixed SCSI host create showing wrong link speed on SLI3 HBA ports
  [SCSI] lpfc 8.3.35: Fixed not checking solicition in progress bit when verifying FCF record for use
  [SCSI] lpfc 8.3.35: Fixed messages for misconfigured port errors
  ...

11 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Sat, 13 Oct 2012 01:56:03 +0000 (10:56 +0900)]
Merge branch 'for-linus' of git://git./linux/kernel/git/dtor/input

Pull input layer updates from Dmitry Torokhov:
 "2nd round of updates for the input subsystem.  With it input core no
  longer limits number of character devices per event handler (such as
  evdev) to 32, but switches to dynamic minors once legacy range is
  exhausted.  This should get multi-seat installations that currently
  run our of event devices very quickly.

  You will also get an update for Wacom driver and a couple of driver
  fixes."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: extend the number of event (and other) devices
  Input: mousedev - mark mousedev interfaces as non-seekable
  Input: mousedev - rename mixdev_open to opened_by_mixdev
  Input: mousedev - reformat structure initializers
  Input: mousedev - factor out psaux code to reduce #ifdefery
  Input: samsung-keypad - add clk_prepare and clk_unprepare
  Input: atmel_mxt_ts - simplify mxt_dump_message
  Input: wacom - clean up wacom_query_tablet_data
  Input: wacom - introduce wacom_fix_phy_from_hid
  Input: wacom - allow any multi-input Intuos device to set prox
  Input: wacom - report correct touch contact size for I5/Bamboo

11 years agoMerge branch 'for-3.7' of git://linux-nfs.org/~bfields/linux
Linus Torvalds [Sat, 13 Oct 2012 01:53:54 +0000 (10:53 +0900)]
Merge branch 'for-3.7' of git://linux-nfs.org/~bfields/linux

Pull nfsd update from J Bruce Fields:
 "Another relatively quiet cycle.  There was some progress on my
  remaining 4.1 todo's, but a couple of them were just of the form
  "check that we do X correctly", so didn't have much affect on the
  code.

  Other than that, a bunch of cleanup and some bugfixes (including an
  annoying NFSv4.0 state leak and a busy-loop in the server that could
  cause it to peg the CPU without making progress)."

* 'for-3.7' of git://linux-nfs.org/~bfields/linux: (46 commits)
  UAPI: (Scripted) Disintegrate include/linux/sunrpc
  UAPI: (Scripted) Disintegrate include/linux/nfsd
  nfsd4: don't allow reclaims of expired clients
  nfsd4: remove redundant callback probe
  nfsd4: expire old client earlier
  nfsd4: separate session allocation and initialization
  nfsd4: clean up session allocation
  nfsd4: minor free_session cleanup
  nfsd4: new_conn_from_crses should only allocate
  nfsd4: separate connection allocation and initialization
  nfsd4: reject bad forechannel attrs earlier
  nfsd4: enforce per-client sessions/no-sessions distinction
  nfsd4: set cl_minorversion at create time
  nfsd4: don't pin clientids to pseudoflavors
  nfsd4: fix bind_conn_to_session xdr comment
  nfsd4: cast readlink() bug argument
  NFSD: pass null terminated buf to kstrtouint()
  nfsd: remove duplicate init in nfsd4_cb_recall
  nfsd4: eliminate redundant nfs4_free_stateid
  fs/nfsd/nfs4idmap.c: adjust inconsistent IS_ERR and PTR_ERR
  ...

11 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Linus Torvalds [Sat, 13 Oct 2012 01:51:48 +0000 (10:51 +0900)]
Merge git://git./linux/kernel/git/davem/net

Pull networking updates from David Miller:

 1) Alexey Kuznetsov noticed we routed TCP resets improperly in the
    assymetric routing case, fix this by reverting a change that made us
    use the incoming interface in the outgoing route key when we didn't
    have a socket context to work with.

 2) TCP sysctl kernel memory leakage to userspace fix from Alan Cox.

 3) Move UAPI bits from David Howells, WIMAX and CAN this time.

 4) Fix TX stalls in e1000e wrt.  Byte Queue Limits, from Hiroaki
    SHIMODA, Denys Fedoryshchenko, and Jesse Brandeburg.

 5) Fix IPV6 crashes in packet generator module, from Amerigo Wang.

 6) Tidies and fixes in the new VXLAN driver from Stephen Hemminger.

 7) Bridge IP options parse doesn't check first if SKB header has at
    least an IP header's worth of content present.  Fix from Sarveshwar
    Bandi.

 8) The kernel now generates compound pages on transmit and the Xen
    netback drivers needs some adjustments in order to handle this.  Fix
    from Ian Campbell.

 9) Turn off ASPM in JME driver, from Kevin Bardon and Matthew Garrett.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (43 commits)
  mcs7830: Fix link state detection
  net: add doc for in4_pton()
  net: add doc for in6_pton()
  vti: fix sparse bit endian warnings
  tcp: resets are misrouted
  usbnet: Support devices reporting idleness
  Add CDC-ACM support for the CX93010-2x UCMxx USB Modem
  net/ethernet/jme: disable ASPM
  tcp: sysctl interface leaks 16 bytes of kernel memory
  kaweth: print correct debug ptr
  e1000e: Change wthresh to 1 to avoid possible Tx stalls
  ipv4: fix route mark sparse warning
  xen: netback: handle compound page fragments on transmit.
  bridge: Pull ip header into skb->data before looking into ip header.
  isdn: fix a wrapping bug in isdn_ppp_ioctl()
  vxlan: fix oops when give unknown ifindex
  vxlan: fix receive checksum handling
  vxlan: add additional headroom
  vxlan: allow configuring port range
  vxlan: associate with tunnel socket on transmit
  ...

11 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc
Linus Torvalds [Sat, 13 Oct 2012 01:47:41 +0000 (10:47 +0900)]
Merge git://git./linux/kernel/git/davem/sparc

Pull Sparc updates from David Miller:

 1) Updated syscall tracing fix from Al Viro.

 2) SUN4V error reporting was deficient in several areas.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
  sparc64: fix ptrace interaction with force_successful_syscall_return()
  sparc64: Fix deficiencies in sun4v error reporting.

11 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile
Linus Torvalds [Sat, 13 Oct 2012 01:46:18 +0000 (10:46 +0900)]
Merge git://git./linux/kernel/git/cmetcalf/linux-tile

Pull tile arch update from Chris Metcalf:
 "The bulk of this change is the tile uapi disintegration.  There is
  also a one-line change in here to enable interrupts in
  do_work_pending() to avoid a WARN_ON in _local_bh_enable_ip()."

* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
  arch/tile: enable interrupts in do_work_pending()
  UAPI: (Scripted) Disintegrate arch/tile/include/asm
  UAPI: (Scripted) Disintegrate arch/tile/include/arch

11 years agoMerge tag 'please-pull-dhowells-uapi' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 13 Oct 2012 01:38:34 +0000 (10:38 +0900)]
Merge tag 'please-pull-dhowells-uapi' of git://git./linux/kernel/git/aegl/linux

Pull ia64 UAPI changes from Tony Luck:
 "ia64 pieces of David Howells great UAPI include file move"

* tag 'please-pull-dhowells-uapi' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
  UAPI: (Scripted) Disintegrate arch/ia64/include/asm

11 years agoMerge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Sat, 13 Oct 2012 01:20:11 +0000 (10:20 +0900)]
Merge branch 'perf-urgent-for-linus' of git://git./linux/kernel/git/tip/tip

Pull perf updates from Ingo Molnar:
 "This tree includes some late late perf items that missed the first
  round:

  tools:

   - Bash auto completion improvements, now we can auto complete the
     tools long options, tracepoint event names, etc, from Namhyung Kim.

   - Look up thread using tid instead of pid in 'perf sched'.

   - Move global variables into a perf_kvm struct, from David Ahern.

   - Hists refactorings, preparatory for improved 'diff' command, from
     Jiri Olsa.

   - Hists refactorings, preparatory for event group viewieng work, from
     Namhyung Kim.

   - Remove double negation on optional feature macro definitions, from
     Namhyung Kim.

   - Remove several cases of needless global variables, on most
     builtins.

   - misc fixes

  kernel:

   - sysfs support for IBS on AMD CPUs, from Robert Richter.

   - Support for an upcoming Intel CPU, the Xeon-Phi / Knights Corner
     HPC blade PMU, from Vince Weaver.

   - misc fixes"

* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (46 commits)
  perf: Fix perf_cgroup_switch for sw-events
  perf: Clarify perf_cpu_context::active_pmu usage by renaming it to ::unique_pmu
  perf/AMD/IBS: Add sysfs support
  perf hists: Add more helpers for hist entry stat
  perf hists: Move he->stat.nr_events initialization to a template
  perf hists: Introduce struct he_stat
  perf diff: Removing the total_period argument from output code
  perf tool: Add hpp interface to enable/disable hpp column
  perf tools: Removing hists pair argument from output path
  perf hists: Separate overhead and baseline columns
  perf diff: Refactor diff displacement possition info
  perf hists: Add struct hists pointer to struct hist_entry
  perf tools: Complete tracepoint event names
  perf/x86: Add support for Intel Xeon-Phi Knights Corner PMU
  perf evlist: Remove some unused methods
  perf evlist: Introduce add_newtp method
  perf kvm: Move global variables into a perf_kvm struct
  perf tools: Convert to BACKTRACE_SUPPORT
  perf tools: Long option completion support for each subcommands
  perf tools: Complete long option names of perf command
  ...

11 years agoperf: Handle new rbtree implementation
Markus Trippelsdorf [Tue, 9 Oct 2012 18:01:56 +0000 (20:01 +0200)]
perf: Handle new rbtree implementation

Perf build fails with the new rbtree implementation:

  ../../lib/rbtree.c:24:36: fatal error: linux/rbtree_augmented.h: No such file or directory compilation terminated.

Fix by updating the Makefile and adding a btree_augmented.h
wrapper.

Reported-and-tested-by: Borislav Petkov <borislav.petkov@amd.com>
Signed-off-by: Markus Trippelsdorf <markus@trippelsdorf.de>
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: Borislav Petkov <bp@amd64.org>
Link: http://lkml.kernel.org/r/20121009180156.GA245@x4
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
11 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal
Linus Torvalds [Sat, 13 Oct 2012 01:05:52 +0000 (10:05 +0900)]
Merge branch 'for-linus' of git://git./linux/kernel/git/viro/signal

Pull third pile of kernel_execve() patches from Al Viro:
 "The last bits of infrastructure for kernel_thread() et.al., with
  alpha/arm/x86 use of those.  Plus sanitizing the asm glue and
  do_notify_resume() on alpha, fixing the "disabled irq while running
  task_work stuff" breakage there.

  At that point the rest of kernel_thread/kernel_execve/sys_execve work
  can be done independently for different architectures.  The only
  pending bits that do depend on having all architectures converted are
  restrictred to fs/* and kernel/* - that'll obviously have to wait for
  the next cycle.

  I thought we'd have to wait for all of them done before we start
  eliminating the longjump-style insanity in kernel_execve(), but it
  turned out there's a very simple way to do that without flagday-style
  changes."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:
  alpha: switch to saner kernel_execve() semantics
  arm: switch to saner kernel_execve() semantics
  x86, um: convert to saner kernel_execve() semantics
  infrastructure for saner ret_from_kernel_thread semantics
  make sure that kernel_thread() callbacks call do_exit() themselves
  make sure that we always have a return path from kernel_execve()
  ppc: eeh_event should just use kthread_run()
  don't bother with kernel_thread/kernel_execve for launching linuxrc
  alpha: get rid of switch_stack argument of do_work_pending()
  alpha: don't bother passing switch_stack separately from regs
  alpha: take SIGPENDING/NOTIFY_RESUME loop into signal.c
  alpha: simplify TIF_NEED_RESCHED handling

11 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Linus Torvalds [Sat, 13 Oct 2012 01:04:42 +0000 (10:04 +0900)]
Merge branch 'for-linus' of git://git./linux/kernel/git/viro/vfs

Pull third pile of VFS updates from Al Viro:
 "Stuff from Jeff Layton, mostly.  Sanitizing interplay between audit
  and namei, removing a lot of insanity from audit_inode() mess and
  getting things ready for his ESTALE patchset."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  procfs: don't need a PATH_MAX allocation to hold a string representation of an int
  vfs: embed struct filename inside of names_cache allocation if possible
  audit: make audit_inode take struct filename
  vfs: make path_openat take a struct filename pointer
  vfs: turn do_path_lookup into wrapper around struct filename variant
  audit: allow audit code to satisfy getname requests from its names_list
  vfs: define struct filename and have getname() return it
  vfs: unexport getname and putname symbols
  acct: constify the name arg to acct_on
  vfs: allocate page instead of names_cache buffer in mount_block_root
  audit: overhaul __audit_inode_child to accomodate retrying
  audit: optimize audit_compare_dname_path
  audit: make audit_compare_dname_path use parent_len helper
  audit: remove dirlen argument to audit_compare_dname_path
  audit: set the name_len in audit_inode for parent lookups
  audit: add a new "type" field to audit_names struct
  audit: reverse arguments to audit_inode_child
  audit: no need to walk list in audit_inode if name is NULL
  audit: pass in dentry to audit_copy_inode wherever possible
  audit: remove unnecessary NULL ptr checks from do_path_lookup

11 years agoprocfs: don't need a PATH_MAX allocation to hold a string representation of an int
Jeff Layton [Wed, 10 Oct 2012 20:43:21 +0000 (16:43 -0400)]
procfs: don't need a PATH_MAX allocation to hold a string representation of an int

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agovfs: embed struct filename inside of names_cache allocation if possible
Jeff Layton [Wed, 10 Oct 2012 20:43:13 +0000 (16:43 -0400)]
vfs: embed struct filename inside of names_cache allocation if possible

In the common case where a name is much smaller than PATH_MAX, an extra
allocation for struct filename is unnecessary. Before allocating a
separate one, try to embed the struct filename inside the buffer first. If
it turns out that that's not long enough, then fall back to allocating a
separate struct filename and redoing the copy.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agoaudit: make audit_inode take struct filename
Jeff Layton [Wed, 10 Oct 2012 20:43:13 +0000 (16:43 -0400)]
audit: make audit_inode take struct filename

Keep a pointer to the audit_names "slot" in struct filename.

Have all of the audit_inode callers pass a struct filename ponter to
audit_inode instead of a string pointer. If the aname field is already
populated, then we can skip walking the list altogether and just use it
directly.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agovfs: make path_openat take a struct filename pointer
Jeff Layton [Wed, 10 Oct 2012 20:43:10 +0000 (16:43 -0400)]
vfs: make path_openat take a struct filename pointer

...and fix up the callers. For do_file_open_root, just declare a
struct filename on the stack and fill out the .name field. For
do_filp_open, make it also take a struct filename pointer, and fix up its
callers to call it appropriately.

For filp_open, add a variant that takes a struct filename pointer and turn
filp_open into a wrapper around it.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agovfs: turn do_path_lookup into wrapper around struct filename variant
Jeff Layton [Wed, 10 Oct 2012 19:25:29 +0000 (15:25 -0400)]
vfs: turn do_path_lookup into wrapper around struct filename variant

...and make the user_path callers use that variant instead.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agoaudit: allow audit code to satisfy getname requests from its names_list
Jeff Layton [Wed, 10 Oct 2012 19:25:28 +0000 (15:25 -0400)]
audit: allow audit code to satisfy getname requests from its names_list

Currently, if we call getname() on a userland string more than once,
we'll get multiple copies of the string and multiple audit_names
records.

Add a function that will allow the audit_names code to satisfy getname
requests using info from the audit_names list, avoiding a new allocation
and audit_names records.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agovfs: define struct filename and have getname() return it
Jeff Layton [Wed, 10 Oct 2012 19:25:28 +0000 (15:25 -0400)]
vfs: define struct filename and have getname() return it

getname() is intended to copy pathname strings from userspace into a
kernel buffer. The result is just a string in kernel space. It would
however be quite helpful to be able to attach some ancillary info to
the string.

For instance, we could attach some audit-related info to reduce the
amount of audit-related processing needed. When auditing is enabled,
we could also call getname() on the string more than once and not
need to recopy it from userspace.

This patchset converts the getname()/putname() interfaces to return
a struct instead of a string. For now, the struct just tracks the
string in kernel space and the original userland pointer for it.

Later, we'll add other information to the struct as it becomes
convenient.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agobtrfs: Fix compilation with user namespace support enabled
Eric W. Biederman [Fri, 12 Oct 2012 21:25:24 +0000 (14:25 -0700)]
btrfs: Fix compilation with user namespace support enabled

When compiling with user namespace support btrfs fails like:

fs/btrfs/tree-log.c: In function ‘fill_inode_item’:
fs/btrfs/tree-log.c:2955:2: error: incompatible type for argument 3 of ‘btrfs_set_inode_uid’
fs/btrfs/ctree.h:2026:1: note: expected ‘u32’ but argument is of type ‘kuid_t’
fs/btrfs/tree-log.c:2956:2: error: incompatible type for argument 3 of ‘btrfs_set_inode_gid’
fs/btrfs/ctree.h:2027:1: note: expected ‘u32’ but argument is of type ‘kgid_t’

Fix this by using i_uid_read and i_gid_read in

Cc: Chris Mason <chris.mason@fusionio.com>
Cc: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
11 years agouserns: Fix posix_acl_file_xattr_userns gid conversion
Eric W. Biederman [Tue, 9 Oct 2012 22:11:55 +0000 (15:11 -0700)]
userns: Fix posix_acl_file_xattr_userns gid conversion

The code needs to be from_kgid(make_kgid(...)...) not
from_kuid(make_kgid(...)...). Doh!

Reported-by: Jan Kara <jack@suse.cz>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
11 years agouserns: Properly print bluetooth socket uids
Eric W. Biederman [Thu, 4 Oct 2012 03:32:17 +0000 (20:32 -0700)]
userns: Properly print bluetooth socket uids

With user namespace support enabled building bluetooth generated the warning.
net/bluetooth/af_bluetooth.c: In function ‘bt_seq_show’:
net/bluetooth/af_bluetooth.c:598:7: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 7 has type ‘kuid_t’ [-Wformat]

Convert sock_i_uid from a kuid_t to a uid_t before printing, to avoid
this problem.

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Cc: Masatake YAMATO <yamato@redhat.com>
Cc: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
11 years agodm: store dm_target_io in bio front_pad
Mikulas Patocka [Fri, 12 Oct 2012 20:02:15 +0000 (21:02 +0100)]
dm: store dm_target_io in bio front_pad

Use the recently-added bio front_pad field to allocate struct dm_target_io.

Prior to this patch, dm_target_io was allocated from a mempool. For each
dm_target_io, there is exactly one bio allocated from a bioset.

This patch merges these two allocations into one allocation: we create a
bioset with front_pad equal to the size of dm_target_io so that every
bio allocated from the bioset has sizeof(struct dm_target_io) bytes
before it. We allocate a bio and use the bytes before the bio as
dm_target_io.

_tio_cache is removed and the tio_pool mempool is now only used for
request-based devices.

This idea was introduced by Kent Overstreet.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Cc: Kent Overstreet <koverstreet@google.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: tj@kernel.org
Cc: Vivek Goyal <vgoyal@redhat.com>
Cc: Bill Pemberton <wfp5p@viridian.itc.virginia.edu>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
11 years agodm thin: move bio_prison code to separate module
Mike Snitzer [Fri, 12 Oct 2012 20:02:13 +0000 (21:02 +0100)]
dm thin: move bio_prison code to separate module

The bio prison code will be useful to other future DM targets so
move it to a separate module.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
11 years agodm thin: prepare to separate bio_prison code
Mike Snitzer [Fri, 12 Oct 2012 20:02:10 +0000 (21:02 +0100)]
dm thin: prepare to separate bio_prison code

The bio prison code will be useful to share with future DM targets.

Prepare to move this code into a separate module, adding a dm prefix
to structures and functions that will be exported.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
11 years agodm thin: support discard with non power of two block size
Mike Snitzer [Fri, 12 Oct 2012 20:02:07 +0000 (21:02 +0100)]
dm thin: support discard with non power of two block size

Support discards when the pool's block size is not a power of 2.
The block layer assumes discard_granularity is a power of 2 (in
blkdev_issue_discard), so we set this to the largest power of 2 that is
a divides into the number of sectors in each block, but never less than
DATA_DEV_BLOCK_SIZE_MIN_SECTORS.

This patch eliminates the "Discard support must be disabled when the
block size is not a power of 2" constraint that was imposed in commit
55f2b8b ("dm thin: support for non power of 2 pool blocksize").  That
commit was incomplete: using a block size that is not a power of 2
shouldn't mean disabling discard support on the device completely.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
11 years agoarch/tile: enable interrupts in do_work_pending()
Chris Metcalf [Fri, 12 Oct 2012 19:38:54 +0000 (15:38 -0400)]
arch/tile: enable interrupts in do_work_pending()

All the called functions expect interrupts to be enabled, and
now one of them has started to warn about it, so make it correct.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
11 years agoMerge tag 'tags/disintegrate-tile-20121009' into for-linus
Chris Metcalf [Fri, 12 Oct 2012 19:11:08 +0000 (15:11 -0400)]
Merge tag 'tags/disintegrate-tile-20121009' into for-linus

UAPI Disintegration 2012-10-09

11 years agomcs7830: Fix link state detection
Ondrej Zary [Thu, 11 Oct 2012 22:51:41 +0000 (22:51 +0000)]
mcs7830: Fix link state detection

The device had an undocumented "feature": it can provide a sequence of
spurious link-down status data even if the link is up all the time.
A sequence of 10 was seen so update the link state only after the device
reports the same link state 20 times.

Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Reported-by: Michael Leun <lkml20120218@newton.leun.net>
Tested-by: Michael Leun <lkml20120218@newton.leun.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agonet: add doc for in4_pton()
Amerigo Wang [Thu, 11 Oct 2012 21:06:17 +0000 (21:06 +0000)]
net: add doc for in4_pton()

It is not easy to use in4_pton() correctly without reading
its definition, so add some doc for it.

Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Cong Wang <amwang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agonet: add doc for in6_pton()
Amerigo Wang [Thu, 11 Oct 2012 21:06:16 +0000 (21:06 +0000)]
net: add doc for in6_pton()

It is not easy to use in6_pton() correctly without reading
its definition, so add some doc for it.

Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Cong Wang <amwang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agovti: fix sparse bit endian warnings
stephen hemminger [Thu, 11 Oct 2012 12:51:28 +0000 (12:51 +0000)]
vti: fix sparse bit endian warnings

Use be32_to_cpu instead of htonl to keep sparse happy.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agotcp: resets are misrouted
Alexey Kuznetsov [Fri, 12 Oct 2012 04:34:17 +0000 (04:34 +0000)]
tcp: resets are misrouted

After commit e2446eaa ("tcp_v4_send_reset: binding oif to iif in no
sock case").. tcp resets are always lost, when routing is asymmetric.
Yes, backing out that patch will result in misrouting of resets for
dead connections which used interface binding when were alive, but we
actually cannot do anything here.  What's died that's died and correct
handling normal unbound connections is obviously a priority.

Comment to comment:
> This has few benefits:
>   1. tcp_v6_send_reset already did that.

It was done to route resets for IPv6 link local addresses. It was a
mistake to do so for global addresses. The patch fixes this as well.

Actually, the problem appears to be even more serious than guaranteed
loss of resets.  As reported by Sergey Soloviev <sol@eqv.ru>, those
misrouted resets create a lot of arp traffic and huge amount of
unresolved arp entires putting down to knees NAT firewalls which use
asymmetric routing.

Signed-off-by: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
11 years agoalpha: switch to saner kernel_execve() semantics
Al Viro [Thu, 11 Oct 2012 03:12:01 +0000 (23:12 -0400)]
alpha: switch to saner kernel_execve() semantics

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agoarm: switch to saner kernel_execve() semantics
Al Viro [Thu, 11 Oct 2012 02:23:29 +0000 (22:23 -0400)]
arm: switch to saner kernel_execve() semantics

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agox86, um: convert to saner kernel_execve() semantics
Al Viro [Thu, 11 Oct 2012 01:35:42 +0000 (21:35 -0400)]
x86, um: convert to saner kernel_execve() semantics

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agoinfrastructure for saner ret_from_kernel_thread semantics
Al Viro [Thu, 11 Oct 2012 01:28:25 +0000 (21:28 -0400)]
infrastructure for saner ret_from_kernel_thread semantics

* allow kernel_execve() leave the actual return to userland to
caller (selected by CONFIG_GENERIC_KERNEL_EXECVE).  Callers
updated accordingly.
* architecture that does select GENERIC_KERNEL_EXECVE in its
Kconfig should have its ret_from_kernel_thread() do this:
call schedule_tail
call the callback left for it by copy_thread(); if it ever
returns, that's because it has just done successful kernel_execve()
jump to return from syscall
IOW, its only difference from ret_from_fork() is that it does call the
callback.
* such an architecture should also get rid of ret_from_kernel_execve()
and __ARCH_WANT_KERNEL_EXECVE

This is the last part of infrastructure patches in that area - from
that point on work on different architectures can live independently.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
11 years agodm persistent data: convert to use le32_add_cpu
Wei Yongjun [Fri, 12 Oct 2012 15:59:47 +0000 (16:59 +0100)]
dm persistent data: convert to use le32_add_cpu

Convert cpu_to_le32(le32_to_cpu(E1) + E2) to use le32_add_cpu().

dpatch engine is used to auto generate this patch.
(https://github.com/weiyj/dpatch)

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>