]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
12 years agoMerge remote-tracking branch 'kvm-ppc/kvm-ppc-next'
Stephen Rothwell [Fri, 12 Oct 2012 02:13:52 +0000 (13:13 +1100)]
Merge remote-tracking branch 'kvm-ppc/kvm-ppc-next'

Conflicts:
arch/powerpc/include/asm/Kbuild
arch/powerpc/include/asm/kvm_para.h
arch/powerpc/kvm/44x_emulate.c

12 years agoMerge remote-tracking branch 'kvm/linux-next'
Stephen Rothwell [Fri, 12 Oct 2012 01:17:47 +0000 (12:17 +1100)]
Merge remote-tracking branch 'kvm/linux-next'

Conflicts:
arch/powerpc/include/asm/Kbuild
arch/powerpc/include/asm/kvm_para.h

12 years agoMerge remote-tracking branch 'kmemleak/kmemleak'
Stephen Rothwell [Fri, 12 Oct 2012 01:17:38 +0000 (12:17 +1100)]
Merge remote-tracking branch 'kmemleak/kmemleak'

Conflicts:
mm/kmemleak.c

12 years agoMerge remote-tracking branch 'rcu/rcu/next'
Stephen Rothwell [Fri, 12 Oct 2012 01:15:37 +0000 (12:15 +1100)]
Merge remote-tracking branch 'rcu/rcu/next'

12 years agoMerge remote-tracking branch 'tip/auto-latest'
Stephen Rothwell [Fri, 12 Oct 2012 01:08:11 +0000 (12:08 +1100)]
Merge remote-tracking branch 'tip/auto-latest'

Conflicts:
mm/huge_memory.c
mm/mempolicy.c

12 years agoMerge remote-tracking branch 'spi-mb/spi-next'
Stephen Rothwell [Fri, 12 Oct 2012 01:06:25 +0000 (12:06 +1100)]
Merge remote-tracking branch 'spi-mb/spi-next'

12 years agoMerge remote-tracking branch 'edac-amd/for-next'
Stephen Rothwell [Fri, 12 Oct 2012 01:06:13 +0000 (12:06 +1100)]
Merge remote-tracking branch 'edac-amd/for-next'

Conflicts:
Documentation/edac.txt
drivers/edac/amd64_edac.c

12 years agoMerge remote-tracking branch 'edac/linux_next'
Stephen Rothwell [Fri, 12 Oct 2012 01:04:13 +0000 (12:04 +1100)]
Merge remote-tracking branch 'edac/linux_next'

12 years agoMerge remote-tracking branch 'fsnotify/for-next'
Stephen Rothwell [Fri, 12 Oct 2012 01:02:36 +0000 (12:02 +1100)]
Merge remote-tracking branch 'fsnotify/for-next'

Conflicts:
kernel/audit_tree.c

12 years agoMerge remote-tracking branch 'watchdog/master'
Stephen Rothwell [Fri, 12 Oct 2012 01:00:19 +0000 (12:00 +1100)]
Merge remote-tracking branch 'watchdog/master'

12 years agoMerge remote-tracking branch 'selinux/master'
Stephen Rothwell [Fri, 12 Oct 2012 01:00:12 +0000 (12:00 +1100)]
Merge remote-tracking branch 'selinux/master'

12 years agoMerge remote-tracking branch 'fbdev/fbdev-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:58:28 +0000 (11:58 +1100)]
Merge remote-tracking branch 'fbdev/fbdev-next'

Conflicts:
arch/arm/mach-s3c64xx/mach-mini6410.c
arch/arm/mach-s3c64xx/mach-real6410.c
drivers/video/epson1355fb.c
drivers/video/msm/mddi.c
drivers/video/msm/mdp.c
drivers/video/msm/mdp_hw.h
drivers/video/omap/lcd_ams_delta.c
drivers/video/omap2/displays/panel-taal.c
drivers/video/omap2/dss/dispc.c

12 years agoMerge remote-tracking branch 'md/for-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:50:36 +0000 (11:50 +1100)]
Merge remote-tracking branch 'md/for-next'

12 years agoMerge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:48:40 +0000 (11:48 +1100)]
Merge remote-tracking branch 'kgdb/kgdb-next'

12 years agoMerge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:47:05 +0000 (11:47 +1100)]
Merge remote-tracking branch 'mmc/mmc-next'

12 years agoMerge branch 'quilt/device-mapper'
Stephen Rothwell [Fri, 12 Oct 2012 00:45:13 +0000 (11:45 +1100)]
Merge branch 'quilt/device-mapper'

Conflicts:
drivers/md/dm-thin.c
drivers/md/dm.c

12 years agoMerge remote-tracking branch 'block/for-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:43:31 +0000 (11:43 +1100)]
Merge remote-tracking branch 'block/for-next'

Conflicts:
init/Kconfig

12 years agoMerge remote-tracking branch 'cgroup/for-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:43:22 +0000 (11:43 +1100)]
Merge remote-tracking branch 'cgroup/for-next'

12 years agoMerge remote-tracking branch 'input/next'
Stephen Rothwell [Fri, 12 Oct 2012 00:41:38 +0000 (11:41 +1100)]
Merge remote-tracking branch 'input/next'

12 years agoMerge remote-tracking branch 'modules/modules-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:36:14 +0000 (11:36 +1100)]
Merge remote-tracking branch 'modules/modules-next'

Conflicts:
Makefile
arch/Kconfig
arch/alpha/Kconfig
arch/arm/Kconfig
arch/cris/include/asm/Kbuild
arch/h8300/include/asm/Kbuild
arch/m32r/include/asm/Kbuild
arch/s390/Kconfig
arch/x86/Kconfig
arch/x86/um/Kconfig
arch/xtensa/Kconfig
init/Kconfig
lib/Makefile

12 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:16:42 +0000 (11:16 +1100)]
Merge remote-tracking branch 'sound-asoc/for-next'

12 years agoMerge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Fri, 12 Oct 2012 00:15:07 +0000 (11:15 +1100)]
Merge remote-tracking branch 'sound/for-next'

12 years agoMerge commit 'refs/next/20121011/l2-mtd'
Stephen Rothwell [Fri, 12 Oct 2012 00:08:34 +0000 (11:08 +1100)]
Merge commit 'refs/next/20121011/l2-mtd'

12 years agoMerge remote-tracking branch 'mtd/master'
Stephen Rothwell [Fri, 12 Oct 2012 00:02:00 +0000 (11:02 +1100)]
Merge remote-tracking branch 'mtd/master'

12 years agoMerge remote-tracking branch 'bluetooth/master'
Stephen Rothwell [Fri, 12 Oct 2012 00:00:22 +0000 (11:00 +1100)]
Merge remote-tracking branch 'bluetooth/master'

12 years agoMerge remote-tracking branch 'scsi/for-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:58:00 +0000 (10:58 +1100)]
Merge remote-tracking branch 'scsi/for-next'

12 years agoMerge remote-tracking branch 'cpuidle/cpuidle-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:57:43 +0000 (10:57 +1100)]
Merge remote-tracking branch 'cpuidle/cpuidle-next'

Conflicts:
drivers/cpuidle/coupled.c
include/linux/cpuidle.h

12 years agoMerge remote-tracking branch 'acpi/next'
Stephen Rothwell [Thu, 11 Oct 2012 23:55:58 +0000 (10:55 +1100)]
Merge remote-tracking branch 'acpi/next'

12 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:48:17 +0000 (10:48 +1100)]
Merge remote-tracking branch 'kbuild/for-next'

12 years agoMerge remote-tracking branch 'v4l-dvb/master'
Stephen Rothwell [Thu, 11 Oct 2012 23:46:19 +0000 (10:46 +1100)]
Merge remote-tracking branch 'v4l-dvb/master'

Conflicts:
arch/arm/mach-davinci/include/mach/da8xx.h

12 years agoMerge remote-tracking branch 'hwmon-staging/hwmon-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:44:30 +0000 (10:44 +1100)]
Merge remote-tracking branch 'hwmon-staging/hwmon-next'

12 years agoMerge branch 'quilt/i2c'
Stephen Rothwell [Thu, 11 Oct 2012 23:43:01 +0000 (10:43 +1100)]
Merge branch 'quilt/i2c'

12 years agoMerge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:42:59 +0000 (10:42 +1100)]
Merge remote-tracking branch 'hid/for-next'

Conflicts:
drivers/hid/hid-multitouch.c

12 years agoMerge remote-tracking branch 'vfs/for-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:36:11 +0000 (10:36 +1100)]
Merge remote-tracking branch 'vfs/for-next'

12 years agoMerge remote-tracking branch 'ubifs/linux-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:34:39 +0000 (10:34 +1100)]
Merge remote-tracking branch 'ubifs/linux-next'

12 years agoMerge remote-tracking branch 'v9fs/for-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:33:05 +0000 (10:33 +1100)]
Merge remote-tracking branch 'v9fs/for-next'

12 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:31:17 +0000 (10:31 +1100)]
Merge remote-tracking branch 'ocfs2/linux-next'

12 years agoMerge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:29:30 +0000 (10:29 +1100)]
Merge remote-tracking branch 'nfsd/nfsd-next'

12 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Thu, 11 Oct 2012 23:27:56 +0000 (10:27 +1100)]
Merge remote-tracking branch 'logfs/master'

12 years agoMerge remote-tracking branch 'fuse/for-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:26:15 +0000 (10:26 +1100)]
Merge remote-tracking branch 'fuse/for-next'

12 years agoMerge remote-tracking branch 'ext3/for_next'
Stephen Rothwell [Thu, 11 Oct 2012 23:24:46 +0000 (10:24 +1100)]
Merge remote-tracking branch 'ext3/for_next'

12 years agoMerge remote-tracking branch 'unicore32/unicore32'
Stephen Rothwell [Thu, 11 Oct 2012 23:23:13 +0000 (10:23 +1100)]
Merge remote-tracking branch 'unicore32/unicore32'

12 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Thu, 11 Oct 2012 23:21:44 +0000 (10:21 +1100)]
Merge remote-tracking branch 's390/features'

12 years agoMerge remote-tracking branch 'mpc5xxx/next'
Stephen Rothwell [Thu, 11 Oct 2012 23:20:10 +0000 (10:20 +1100)]
Merge remote-tracking branch 'mpc5xxx/next'

12 years agoMerge remote-tracking branch 'openrisc/for-upstream'
Stephen Rothwell [Thu, 11 Oct 2012 23:18:17 +0000 (10:18 +1100)]
Merge remote-tracking branch 'openrisc/for-upstream'

12 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:16:47 +0000 (10:16 +1100)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

12 years agoMerge remote-tracking branch 'microblaze/next'
Stephen Rothwell [Thu, 11 Oct 2012 23:15:20 +0000 (10:15 +1100)]
Merge remote-tracking branch 'microblaze/next'

12 years agoMerge remote-tracking branch 'ia64/next'
Stephen Rothwell [Thu, 11 Oct 2012 23:13:53 +0000 (10:13 +1100)]
Merge remote-tracking branch 'ia64/next'

12 years agoMerge remote-tracking branch 'c6x/for-linux-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:12:19 +0000 (10:12 +1100)]
Merge remote-tracking branch 'c6x/for-linux-next'

12 years agoMerge remote-tracking branch 'blackfin/for-linus'
Stephen Rothwell [Thu, 11 Oct 2012 23:10:52 +0000 (10:10 +1100)]
Merge remote-tracking branch 'blackfin/for-linus'

12 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Thu, 11 Oct 2012 23:09:16 +0000 (10:09 +1100)]
Merge remote-tracking branch 'arm/for-next'

12 years agoMerge remote-tracking branch 'spi-current/spi/merge'
Stephen Rothwell [Thu, 11 Oct 2012 23:02:24 +0000 (10:02 +1100)]
Merge remote-tracking branch 'spi-current/spi/merge'

12 years agoMerge remote-tracking branch 'devicetree-current/devicetree/merge'
Stephen Rothwell [Thu, 11 Oct 2012 23:02:14 +0000 (10:02 +1100)]
Merge remote-tracking branch 'devicetree-current/devicetree/merge'

12 years agoMerge remote-tracking branch 'input-current/for-linus'
Stephen Rothwell [Thu, 11 Oct 2012 23:01:57 +0000 (10:01 +1100)]
Merge remote-tracking branch 'input-current/for-linus'

12 years agoMerge remote-tracking branch 'tty.current/tty-linus'
Stephen Rothwell [Thu, 11 Oct 2012 23:01:51 +0000 (10:01 +1100)]
Merge remote-tracking branch 'tty.current/tty-linus'

12 years agoMerge remote-tracking branch 'net/master'
Stephen Rothwell [Thu, 11 Oct 2012 23:01:47 +0000 (10:01 +1100)]
Merge remote-tracking branch 'net/master'

12 years agoMerge remote-tracking branch 'sparc/master'
Stephen Rothwell [Thu, 11 Oct 2012 23:01:46 +0000 (10:01 +1100)]
Merge remote-tracking branch 'sparc/master'

12 years agoMerge remote-tracking branch 'powerpc-merge/merge'
Stephen Rothwell [Thu, 11 Oct 2012 23:01:45 +0000 (10:01 +1100)]
Merge remote-tracking branch 'powerpc-merge/merge'

12 years agoMerge remote-tracking branch 'arm-current/fixes'
Stephen Rothwell [Thu, 11 Oct 2012 23:01:43 +0000 (10:01 +1100)]
Merge remote-tracking branch 'arm-current/fixes'

12 years agoUse the recently-added bio front_pad field to allocate struct dm_target_io.
Mikulas Patocka [Thu, 11 Oct 2012 22:42:05 +0000 (09:42 +1100)]
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.

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>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoi2c-stub: Move to drivers/i2c
Jean Delvare [Thu, 11 Oct 2012 22:41:55 +0000 (09:41 +1100)]
i2c-stub: Move to drivers/i2c

Move the i2c-stub driver to drivers/i2c, to match the Kconfig entry.
This is less confusing that way.

I also fixed all checkpatch warnings and errors.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Peter Huewe <peterhuewe@gmx.de>
12 years agommc: rtsx_pci_sdmmc: Add realtek pcie sdmmc host driver
Wei WANG [Tue, 11 Sep 2012 04:54:27 +0000 (04:54 +0000)]
mmc: rtsx_pci_sdmmc: Add realtek pcie sdmmc host driver

Realtek PCI-E SD/MMC card host driver is used to access SD/MMC card,
with the help of Realtek PCI-E card reader MFD driver.

Signed-off-by: Wei WANG <wei_wang@realsil.com.cn>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Tested-by: Borislav Petkov <bp@alien8.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
12 years agoUAPI: (Scripted) Disintegrate include/linux/mmc
David Howells [Tue, 9 Oct 2012 08:48:45 +0000 (09:48 +0100)]
UAPI: (Scripted) Disintegrate include/linux/mmc

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>
Signed-off-by: Chris Ball <cjb@laptop.org>
12 years agommc: mxs-mmc: Fix merge issue causing build error
Marek Vasut [Mon, 1 Oct 2012 20:52:43 +0000 (20:52 +0000)]
mmc: mxs-mmc: Fix merge issue causing build error

The following error appeared due to a merge problem; the patches:

fc108d24 "mmc: mxs-mmc: fix deadlock caused by recursion loop"
829c1bf4 "mmc: spi: Pull out parts shared between MMC and SPI"

came in through separate branches and cause this build error when
combined.

drivers/mmc/host/mxs-mmc.c: In function 'mxs_mmc_enable_sdio_irq':
drivers/mmc/host/mxs-mmc.c:527:3: error: 'struct mxs_mmc_host' has no member named 'base'
drivers/mmc/host/mxs-mmc.c:527:3: error: 'struct mxs_mmc_host' has no member named 'devid'
make[3]: *** [drivers/mmc/host/mxs-mmc.o] Error 1

This patch corrects the issue.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
12 years agoMerge branch 'kbuild/kbuild' into kbuild/for-next
Michal Marek [Thu, 11 Oct 2012 20:55:23 +0000 (22:55 +0200)]
Merge branch 'kbuild/kbuild' into kbuild/for-next

12 years agocompiler-gcc4.h: correct verion check for __compiletime_error
Daniel Santos [Fri, 28 Sep 2012 23:20:02 +0000 (18:20 -0500)]
compiler-gcc4.h: correct verion check for __compiletime_error

__attribute__((error(msg))) was introduced in gcc 4.3 (not 4.4) and as I
was unable to find any gcc bugs pertaining to it, I'm presuming that it
has functioned as advertised since 4.3.0.

Signed-off-by: Daniel Santos <daniel.santos@pobox.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Tested-by: David Rientjes <rientjes@google.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
12 years agomodpost: Permit .GCC.command.line sections
Jonathan Kliegman [Thu, 4 Oct 2012 20:32:19 +0000 (16:32 -0400)]
modpost: Permit .GCC.command.line sections

Allow .GCC.command.line sections in modules to prevent modpost warnings:
WARNING: sound/usb/snd-usbmidi-lib.o (.GCC.command.line): unexpected non-allocatable section.
Did you forget to use "ax"/"aw" in a .S file?
Note that for example <linux/init.h> contains
section definitions for use in .S files.

Signed-off-by: Jonathan Kliegman <kliegs@chromium.org>
Signed-off-by: Michal Marek <mmarek@suse.cz>
12 years agousbnet: Support devices reporting idleness
Oliver Neukum [Thu, 11 Oct 2012 02:50:10 +0000 (02:50 +0000)]
usbnet: Support devices reporting idleness

Some device types support a form of power management in which
the device suggests to the host that the device may be suspended
now. Support for that is best located in usbnet.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoAdd CDC-ACM support for the CX93010-2x UCMxx USB Modem
Jean-Christian de Rivaz [Wed, 10 Oct 2012 12:49:02 +0000 (12:49 +0000)]
Add CDC-ACM support for the CX93010-2x UCMxx USB Modem

This USB V.92/V.32bis Controllered Modem have the USB vendor ID 0x0572
and device ID 0x1340. It need the NO_UNION_NORMAL quirk to be recognized.

Reference:
http://www.conexant.com/servlets/DownloadServlet/DSH-201723-005.pdf?docid=1725&revid=5
See idVendor and idProduct in table 6-1. Device Descriptors

Signed-off-by: Jean-Christian de Rivaz <jc@eclis.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet/ethernet/jme: disable ASPM
Kevin Baradon [Wed, 10 Oct 2012 10:50:49 +0000 (10:50 +0000)]
net/ethernet/jme: disable ASPM

Based on patch from Matthew Garrett <mjg@redhat.com> (https://lkml.org/lkml/2011/11/11/168).

http://driveragent.com/archive/30421/7-0-14 indicates that ASPM is
disabled on the 250 and 260. Duplicate for sanity.

Fixes random RX engine hangs I experienced with JMC250 on Clevo W270HU.

Signed-off-by: Kevin Baradon <kevin.baradon@gmail.com>
Cc: Guo-Fu Tseng <cooldavid@cooldavid.org>
Cc: Matthew Garrett <mjg@redhat.com>
Cc: netdev@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoMerge tag 'disintegrate-wimax-20121009' of git://git.infradead.org/users/dhowells...
David S. Miller [Thu, 11 Oct 2012 19:15:35 +0000 (15:15 -0400)]
Merge tag 'disintegrate-wimax-20121009' of git://git.infradead.org/users/dhowells/linux-headers

UAPI Disintegration 2012-10-09

Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agotcp: sysctl interface leaks 16 bytes of kernel memory
Alan Cox [Thu, 11 Oct 2012 06:24:14 +0000 (06:24 +0000)]
tcp: sysctl interface leaks 16 bytes of kernel memory

If the rc_dereference of tcp_fastopen_ctx ever fails then we copy 16 bytes
of kernel stack into the proc result.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agokaweth: print correct debug ptr
Alan Cox [Thu, 11 Oct 2012 06:22:03 +0000 (06:22 +0000)]
kaweth: print correct debug ptr

We nowdays copy the buffer and free fw->data, so make the debug printk use
the right thing.

Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoMerge branch 'kbuild/misc' into kbuild/for-next
Michal Marek [Thu, 11 Oct 2012 19:10:52 +0000 (21:10 +0200)]
Merge branch 'kbuild/misc' into kbuild/for-next

12 years agoMerge Trond's bugfixes
J. Bruce Fields [Thu, 11 Oct 2012 16:40:00 +0000 (12:40 -0400)]
Merge Trond's bugfixes

Merge branch 'bugfixes' of git://linux-nfs.org/~trondmy/nfs-2.6 into
for-3.7-incoming.  Mainly needed for Bryan's "SUNRPC: Set alloc_slot for
backchannel tcp ops", without which the 4.1 server oopses.

12 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>
12 years ago9p: don't use __getname/__putname for uname/aname
Jeff Layton [Wed, 10 Oct 2012 20:43:20 +0000 (16:43 -0400)]
9p: don't use __getname/__putname for uname/aname

These are generally very small strings. We don't need an entire 4k
allocation for each. Instead, just free and reallocate them on an
as-needed basis.

Note: This patch is untested since I don't have a 9p server available at
the moment. It's mainly something I noticed while doing some
getname/putname cleanup work.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 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>
12 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>
12 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>
12 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>
12 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>
12 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>
12 years agovfs: unexport getname and putname symbols
Jeff Layton [Wed, 10 Oct 2012 20:43:13 +0000 (16:43 -0400)]
vfs: unexport getname and putname symbols

I see no callers in module code.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoacct: constify the name arg to acct_on
Jeff Layton [Wed, 10 Oct 2012 19:25:27 +0000 (15:25 -0400)]
acct: constify the name arg to acct_on

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agovfs: allocate page instead of names_cache buffer in mount_block_root
Jeff Layton [Wed, 10 Oct 2012 19:25:26 +0000 (15:25 -0400)]
vfs: allocate page instead of names_cache buffer in mount_block_root

First, it's incorrect to call putname() after __getname_gfp() since the
bare __getname_gfp() call skips the auditing code, while putname()
doesn't.

mount_block_root allocates a PATH_MAX buffer via __getname_gfp, and then
calls get_fs_names to fill the buffer. That function can call
get_filesystem_list which assumes that that buffer is a full page in
size. On arches where PAGE_SIZE != 4k, then this could potentially
overrun.

In practice, it's hard to imagine the list of filesystem names even
approaching 4k, but it's best to be safe. Just allocate a page for this
purpose instead.

With this, we can also remove the __getname_gfp() definition since there
are no more callers.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: overhaul __audit_inode_child to accomodate retrying
Jeff Layton [Wed, 10 Oct 2012 19:25:25 +0000 (15:25 -0400)]
audit: overhaul __audit_inode_child to accomodate retrying

In order to accomodate retrying path-based syscalls, we need to add a
new "type" argument to audit_inode_child. This will tell us whether
we're looking for a child entry that represents a create or a delete.

If we find a parent, don't automatically assume that we need to create a
new entry. Instead, use the information we have to try to find an
existing entry first. Update it if one is found and create a new one if
not.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: optimize audit_compare_dname_path
Jeff Layton [Wed, 10 Oct 2012 19:25:25 +0000 (15:25 -0400)]
audit: optimize audit_compare_dname_path

In the cases where we already know the length of the parent, pass it as
a parm so we don't need to recompute it. In the cases where we don't
know the length, pass in AUDIT_NAME_FULL (-1) to indicate that it should
be determined.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: make audit_compare_dname_path use parent_len helper
Eric Paris [Wed, 10 Oct 2012 19:25:24 +0000 (15:25 -0400)]
audit: make audit_compare_dname_path use parent_len helper

Signed-off-by: Eric Paris <eparis@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: remove dirlen argument to audit_compare_dname_path
Jeff Layton [Wed, 10 Oct 2012 19:25:24 +0000 (15:25 -0400)]
audit: remove dirlen argument to audit_compare_dname_path

All the callers set this to NULL now.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: set the name_len in audit_inode for parent lookups
Jeff Layton [Wed, 10 Oct 2012 19:25:23 +0000 (15:25 -0400)]
audit: set the name_len in audit_inode for parent lookups

Currently, this gets set mostly by happenstance when we call into
audit_inode_child. While that might be a little more efficient, it seems
wrong. If the syscall ends up failing before audit_inode_child ever gets
called, then you'll have an audit_names record that shows the full path
but has the parent inode info attached.

Fix this by passing in a parent flag when we call audit_inode that gets
set to the value of LOOKUP_PARENT. We can then fix up the pathname for
the audit entry correctly from the get-go.

While we're at it, clean up the no-op macro for audit_inode in the
!CONFIG_AUDITSYSCALL case.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: add a new "type" field to audit_names struct
Jeff Layton [Wed, 10 Oct 2012 19:25:22 +0000 (15:25 -0400)]
audit: add a new "type" field to audit_names struct

For now, we just have two possibilities:

UNKNOWN: for a new audit_names record that we don't know anything about yet
NORMAL: for everything else

In later patches, we'll add other types so we can distinguish and update
records created under different circumstances.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: reverse arguments to audit_inode_child
Jeff Layton [Wed, 10 Oct 2012 19:25:21 +0000 (15:25 -0400)]
audit: reverse arguments to audit_inode_child

Most of the callers get called with an inode and dentry in the reverse
order. The compiler then has to reshuffle the arg registers and/or
stack in order to pass them on to audit_inode_child.

Reverse those arguments for a micro-optimization.

Reported-by: Eric Paris <eparis@redhat.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: no need to walk list in audit_inode if name is NULL
Jeff Layton [Wed, 10 Oct 2012 19:25:21 +0000 (15:25 -0400)]
audit: no need to walk list in audit_inode if name is NULL

If name is NULL then the condition in the loop will never be true. Also,
with this change, we can eliminate the check for n->name == NULL since
the equivalence check will never be true if it is.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: pass in dentry to audit_copy_inode wherever possible
Jeff Layton [Wed, 10 Oct 2012 19:25:20 +0000 (15:25 -0400)]
audit: pass in dentry to audit_copy_inode wherever possible

In some cases, we were passing in NULL even when we have a dentry.

Reported-by: Eric Paris <eparis@redhat.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoaudit: remove unnecessary NULL ptr checks from do_path_lookup
Jeff Layton [Wed, 10 Oct 2012 19:25:20 +0000 (15:25 -0400)]
audit: remove unnecessary NULL ptr checks from do_path_lookup

As best I can tell, whenever retval == 0, nd->path.dentry and nd->inode
are also non-NULL. Eliminate those checks and the superfluous
audit_context check.

Signed-off-by: Eric Paris <eparis@redhat.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoMerge branch 'for-linus' into for-next
Al Viro [Thu, 11 Oct 2012 15:42:55 +0000 (11:42 -0400)]
Merge branch 'for-linus' into for-next

12 years agovfs: bogus warnings in fs/namei.c
Arnd Bergmann [Thu, 11 Oct 2012 13:20:00 +0000 (13:20 +0000)]
vfs: bogus warnings in fs/namei.c

The follow_link() function always initializes its *p argument,
or returns an error, but when building with 'gcc -s', the compiler
gets confused by the __always_inline attribute to the function
and can no longer detect where the cookie was initialized.

The solution is to always initialize the pointer from follow_link,
even in the error path. When building with -O2, this has zero impact
on generated code and adds a single instruction in the error path
for a -Os build on ARM.

Without this patch, building with gcc-4.6 through gcc-4.8 and
CONFIG_CC_OPTIMIZE_FOR_SIZE results in:

fs/namei.c: In function 'link_path_walk':
fs/namei.c:649:24: warning: 'cookie' may be used uninitialized in this function [-Wuninitialized]
fs/namei.c:1544:9: note: 'cookie' was declared here
fs/namei.c: In function 'path_lookupat':
fs/namei.c:649:24: warning: 'cookie' may be used uninitialized in this function [-Wuninitialized]
fs/namei.c:1934:10: note: 'cookie' was declared here
fs/namei.c: In function 'path_openat':
fs/namei.c:649:24: warning: 'cookie' may be used uninitialized in this function [-Wuninitialized]
fs/namei.c:2899:9: note: 'cookie' was declared here

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agoconsitify do_mount() arguments
Al Viro [Thu, 11 Oct 2012 15:42:01 +0000 (11:42 -0400)]
consitify do_mount() arguments

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
12 years agos390/chpid: make headers usable (again)
Sebastian Ott [Thu, 11 Oct 2012 07:54:56 +0000 (09:54 +0200)]
s390/chpid: make headers usable (again)

Add back a hunk from "4dcc2a4 s390/chsc: make headers usable"
which was lost during the merge of the UAPI patch.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>