]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
12 years agoMerge remote-tracking branch 'pinctrl/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:29:39 +0000 (15:29 +1100)]
Merge remote-tracking branch 'pinctrl/for-next'

12 years agoMerge remote-tracking branch 'writeback/writeback-for-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:28:15 +0000 (15:28 +1100)]
Merge remote-tracking branch 'writeback/writeback-for-next'

12 years agoMerge remote-tracking branch 'tmem/tmem'
Stephen Rothwell [Fri, 25 Nov 2011 04:22:59 +0000 (15:22 +1100)]
Merge remote-tracking branch 'tmem/tmem'

Conflicts:
mm/swapfile.c

12 years agoMerge remote-tracking branch 'char-misc/char-misc-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:21:31 +0000 (15:21 +1100)]
Merge remote-tracking branch 'char-misc/char-misc-next'

12 years agoMerge remote-tracking branch 'usb/usb-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:19:28 +0000 (15:19 +1100)]
Merge remote-tracking branch 'usb/usb-next'

12 years agoMerge remote-tracking branch 'tty/tty-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:17:34 +0000 (15:17 +1100)]
Merge remote-tracking branch 'tty/tty-next'

Conflicts:
drivers/tty/serial/Kconfig
drivers/tty/serial/Makefile
drivers/tty/tty_ldisc.c

12 years agoMerge remote-tracking branch 'driver-core/driver-core-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:11:25 +0000 (15:11 +1100)]
Merge remote-tracking branch 'driver-core/driver-core-next'

12 years agoMerge remote-tracking branch 'hsi/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:10:01 +0000 (15:10 +1100)]
Merge remote-tracking branch 'hsi/for-next'

12 years agoMerge remote-tracking branch 'regmap/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:08:32 +0000 (15:08 +1100)]
Merge remote-tracking branch 'regmap/for-next'

12 years agoMerge remote-tracking branch 'namespace/master'
Stephen Rothwell [Fri, 25 Nov 2011 04:07:02 +0000 (15:07 +1100)]
Merge remote-tracking branch 'namespace/master'

12 years agoMerge remote-tracking branch 'sysctl/master'
Stephen Rothwell [Fri, 25 Nov 2011 04:05:32 +0000 (15:05 +1100)]
Merge remote-tracking branch 'sysctl/master'

12 years agoMerge remote-tracking branch 'percpu/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 04:04:03 +0000 (15:04 +1100)]
Merge remote-tracking branch 'percpu/for-next'

12 years agoMerge remote-tracking branch 'xen-two/linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 03:58:17 +0000 (14:58 +1100)]
Merge remote-tracking branch 'xen-two/linux-next'

Conflicts:
arch/x86/xen/Kconfig

12 years agoMerge remote-tracking branch 'xen/upstream/xen'
Stephen Rothwell [Fri, 25 Nov 2011 03:56:55 +0000 (14:56 +1100)]
Merge remote-tracking branch 'xen/upstream/xen'

Conflicts:
arch/x86/xen/Kconfig

12 years agoMerge remote-tracking branch 'kmemleak/kmemleak'
Stephen Rothwell [Fri, 25 Nov 2011 03:50:20 +0000 (14:50 +1100)]
Merge remote-tracking branch 'kmemleak/kmemleak'

12 years agoMerge commit 'refs/next/20111124/cgroup'
Stephen Rothwell [Fri, 25 Nov 2011 03:47:49 +0000 (14:47 +1100)]
Merge commit 'refs/next/20111124/cgroup'

Conflicts:
kernel/cgroup_freezer.c

12 years agoMerge remote-tracking branch 'uprobes/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 02:23:26 +0000 (13:23 +1100)]
Merge remote-tracking branch 'uprobes/for-next'

12 years agoMerge remote-tracking branch 'tip/auto-latest'
Stephen Rothwell [Fri, 25 Nov 2011 02:16:41 +0000 (13:16 +1100)]
Merge remote-tracking branch 'tip/auto-latest'

Conflicts:
arch/mips/kernel/perf_event_mipsxx.c

12 years agoMerge remote-tracking branch 'fsnotify/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 02:13:26 +0000 (13:13 +1100)]
Merge remote-tracking branch 'fsnotify/for-next'

12 years agoMerge remote-tracking branch 'apm/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 02:12:02 +0000 (13:12 +1100)]
Merge remote-tracking branch 'apm/for-next'

12 years agoMerge remote-tracking branch 'pm/linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 02:05:17 +0000 (13:05 +1100)]
Merge remote-tracking branch 'pm/linux-next'

12 years agoMerge remote-tracking branch 'trivial/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 02:02:45 +0000 (13:02 +1100)]
Merge remote-tracking branch 'trivial/for-next'

12 years agoMerge remote-tracking branch 'osd/linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 02:02:37 +0000 (13:02 +1100)]
Merge remote-tracking branch 'osd/linux-next'

12 years agoMerge remote-tracking branch 'cputime/cputime'
Stephen Rothwell [Fri, 25 Nov 2011 01:56:27 +0000 (12:56 +1100)]
Merge remote-tracking branch 'cputime/cputime'

12 years agoMerge remote-tracking branch 'iommu/next'
Stephen Rothwell [Fri, 25 Nov 2011 01:55:09 +0000 (12:55 +1100)]
Merge remote-tracking branch 'iommu/next'

12 years agoMerge remote-tracking branch 'security/next'
Stephen Rothwell [Fri, 25 Nov 2011 01:52:19 +0000 (12:52 +1100)]
Merge remote-tracking branch 'security/next'

12 years agoMerge remote-tracking branch 'regulator/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:50:55 +0000 (12:50 +1100)]
Merge remote-tracking branch 'regulator/for-next'

12 years agoMerge remote-tracking branch 'fbdev/fbdev-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:49:33 +0000 (12:49 +1100)]
Merge remote-tracking branch 'fbdev/fbdev-next'

12 years agoMerge remote-tracking branch 'md/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:44:18 +0000 (12:44 +1100)]
Merge remote-tracking branch 'md/for-next'

12 years agoMerge remote-tracking branch 'slab/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:42:56 +0000 (12:42 +1100)]
Merge remote-tracking branch 'slab/for-next'

12 years agoMerge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:42:47 +0000 (12:42 +1100)]
Merge remote-tracking branch 'kgdb/kgdb-next'

12 years agoMerge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:41:18 +0000 (12:41 +1100)]
Merge remote-tracking branch 'mmc/mmc-next'

12 years agoMerge remote-tracking branch 'battery/master'
Stephen Rothwell [Fri, 25 Nov 2011 01:39:54 +0000 (12:39 +1100)]
Merge remote-tracking branch 'battery/master'

12 years agoMerge remote-tracking branch 'block/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:38:22 +0000 (12:38 +1100)]
Merge remote-tracking branch 'block/for-next'

12 years agoMerge remote-tracking branch 'input/next'
Stephen Rothwell [Fri, 25 Nov 2011 01:36:56 +0000 (12:36 +1100)]
Merge remote-tracking branch 'input/next'

Conflicts:
drivers/input/keyboard/samsung-keypad.c

12 years agoMerge branch 'quilt/rr'
Stephen Rothwell [Fri, 25 Nov 2011 01:35:29 +0000 (12:35 +1100)]
Merge branch 'quilt/rr'

12 years agoMerge remote-tracking branch 'cpufreq/next'
Stephen Rothwell [Fri, 25 Nov 2011 01:35:20 +0000 (12:35 +1100)]
Merge remote-tracking branch 'cpufreq/next'

12 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:33:54 +0000 (12:33 +1100)]
Merge remote-tracking branch 'sound-asoc/for-next'

12 years agoMerge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:32:28 +0000 (12:32 +1100)]
Merge remote-tracking branch 'sound/for-next'

12 years agoMerge remote-tracking branch 'crypto/master'
Stephen Rothwell [Fri, 25 Nov 2011 01:30:59 +0000 (12:30 +1100)]
Merge remote-tracking branch 'crypto/master'

12 years agoMerge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Fri, 25 Nov 2011 01:29:32 +0000 (12:29 +1100)]
Merge remote-tracking branch 'l2-mtd/master'

12 years agoMerge remote-tracking branch 'bluetooth/master'
Stephen Rothwell [Fri, 25 Nov 2011 01:28:02 +0000 (12:28 +1100)]
Merge remote-tracking branch 'bluetooth/master'

12 years agoMerge remote-tracking branch 'wireless-next/master'
Stephen Rothwell [Fri, 25 Nov 2011 01:26:19 +0000 (12:26 +1100)]
Merge remote-tracking branch 'wireless-next/master'

12 years agoMerge remote-tracking branch 'net-next/master'
Stephen Rothwell [Fri, 25 Nov 2011 01:20:30 +0000 (12:20 +1100)]
Merge remote-tracking branch 'net-next/master'

Conflicts:
net/ipv4/inet_diag.c

12 years agoMerge remote-tracking branch 'slave-dma/next'
Stephen Rothwell [Fri, 25 Nov 2011 01:16:50 +0000 (12:16 +1100)]
Merge remote-tracking branch 'slave-dma/next'

Conflicts:
drivers/dma/pl330.c

12 years agoMerge remote-tracking branch 'target-merge/for-next-merge'
Stephen Rothwell [Fri, 25 Nov 2011 01:15:27 +0000 (12:15 +1100)]
Merge remote-tracking branch 'target-merge/for-next-merge'

12 years agoMerge remote-tracking branch 'dlm/next'
Stephen Rothwell [Fri, 25 Nov 2011 01:14:01 +0000 (12:14 +1100)]
Merge remote-tracking branch 'dlm/next'

12 years agoMerge remote-tracking branch 'infiniband/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:12:36 +0000 (12:12 +1100)]
Merge remote-tracking branch 'infiniband/for-next'

12 years agoMerge remote-tracking branch 'libata/NEXT'
Stephen Rothwell [Fri, 25 Nov 2011 01:11:16 +0000 (12:11 +1100)]
Merge remote-tracking branch 'libata/NEXT'

12 years agoMerge remote-tracking branch 'kconfig/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:11:12 +0000 (12:11 +1100)]
Merge remote-tracking branch 'kconfig/for-next'

12 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:09:46 +0000 (12:09 +1100)]
Merge remote-tracking branch 'kbuild/for-next'

12 years agoMerge remote-tracking branch 'v4l-dvb/master'
Stephen Rothwell [Fri, 25 Nov 2011 01:06:28 +0000 (12:06 +1100)]
Merge remote-tracking branch 'v4l-dvb/master'

Conflicts:
drivers/staging/media/as102/as102_drv.h

12 years agoMerge branch 'quilt/jdelvare-hwmon'
Stephen Rothwell [Fri, 25 Nov 2011 01:05:09 +0000 (12:05 +1100)]
Merge branch 'quilt/jdelvare-hwmon'

12 years agoMerge remote-tracking branch 'bjdooks-i2c/next-i2c'
Stephen Rothwell [Fri, 25 Nov 2011 01:03:51 +0000 (12:03 +1100)]
Merge remote-tracking branch 'bjdooks-i2c/next-i2c'

Conflicts:
drivers/i2c/busses/i2c-designware-platdrv.c

12 years agoMerge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 01:02:19 +0000 (12:02 +1100)]
Merge remote-tracking branch 'hid/for-next'

12 years agoMerge remote-tracking branch 'pci/linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:59:16 +0000 (11:59 +1100)]
Merge remote-tracking branch 'pci/linux-next'

12 years agoMerge remote-tracking branch 'ubifs/linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:57:56 +0000 (11:57 +1100)]
Merge remote-tracking branch 'ubifs/linux-next'

12 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:56:26 +0000 (11:56 +1100)]
Merge remote-tracking branch 'ocfs2/linux-next'

12 years agoMerge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:55:10 +0000 (11:55 +1100)]
Merge remote-tracking branch 'nfsd/nfsd-next'

12 years agoMerge remote-tracking branch 'nfs/linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:53:53 +0000 (11:53 +1100)]
Merge remote-tracking branch 'nfs/linux-next'

12 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Fri, 25 Nov 2011 00:52:37 +0000 (11:52 +1100)]
Merge remote-tracking branch 'logfs/master'

Conflicts:
fs/logfs/file.c

12 years agoMerge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Fri, 25 Nov 2011 00:51:07 +0000 (11:51 +1100)]
Merge remote-tracking branch 'gfs2/master'

12 years agoMerge remote-tracking branch 'ecryptfs/next'
Stephen Rothwell [Fri, 25 Nov 2011 00:51:02 +0000 (11:51 +1100)]
Merge remote-tracking branch 'ecryptfs/next'

12 years agoMerge remote-tracking branch 'cifs/master'
Stephen Rothwell [Fri, 25 Nov 2011 00:49:44 +0000 (11:49 +1100)]
Merge remote-tracking branch 'cifs/master'

12 years agoMerge remote-tracking branch 'xtensa/master'
Stephen Rothwell [Fri, 25 Nov 2011 00:48:24 +0000 (11:48 +1100)]
Merge remote-tracking branch 'xtensa/master'

12 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Fri, 25 Nov 2011 00:47:04 +0000 (11:47 +1100)]
Merge remote-tracking branch 's390/features'

12 years agoMerge remote-tracking branch 'galak/next'
Stephen Rothwell [Fri, 25 Nov 2011 00:45:48 +0000 (11:45 +1100)]
Merge remote-tracking branch 'galak/next'

12 years agoMerge remote-tracking branch '52xx-and-virtex/powerpc/next'
Stephen Rothwell [Fri, 25 Nov 2011 00:45:32 +0000 (11:45 +1100)]
Merge remote-tracking branch '52xx-and-virtex/powerpc/next'

12 years agoMerge remote-tracking branch 'parisc/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:44:10 +0000 (11:44 +1100)]
Merge remote-tracking branch 'parisc/for-next'

12 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:42:22 +0000 (11:42 +1100)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

12 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:41:02 +0000 (11:41 +1100)]
Merge remote-tracking branch 'm68knommu/for-next'

Conflicts:
arch/m68k/Kconfig.debug

12 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:39:38 +0000 (11:39 +1100)]
Merge remote-tracking branch 'm68k/for-next'

12 years agoMerge remote-tracking branch 'ia64/next'
Stephen Rothwell [Fri, 25 Nov 2011 00:38:22 +0000 (11:38 +1100)]
Merge remote-tracking branch 'ia64/next'

12 years agoMerge branch 'quilt/hexagon'
Stephen Rothwell [Fri, 25 Nov 2011 00:37:08 +0000 (11:37 +1100)]
Merge branch 'quilt/hexagon'

12 years agoMerge remote-tracking branch 'cris/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:35:36 +0000 (11:35 +1100)]
Merge remote-tracking branch 'cris/for-next'

12 years agoMerge remote-tracking branch 'c6x/for-linux-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:30:19 +0000 (11:30 +1100)]
Merge remote-tracking branch 'c6x/for-linux-next'

12 years agoMerge remote-tracking branch 'tegra/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:28:58 +0000 (11:28 +1100)]
Merge remote-tracking branch 'tegra/for-next'

12 years agoMerge remote-tracking branch 's5p/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:27:44 +0000 (11:27 +1100)]
Merge remote-tracking branch 's5p/for-next'

Conflicts:
arch/arm/mach-exynos/cpu.c
arch/arm/mach-exynos/include/mach/entry-macro.S

12 years agoMerge remote-tracking branch 'i.MX/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:26:21 +0000 (11:26 +1100)]
Merge remote-tracking branch 'i.MX/for-next'

Conflicts:
arch/arm/mach-imx/clock-mx51-mx53.c
arch/arm/mach-imx/devices-imx53.h
arch/arm/mach-imx/mm-imx5.c
arch/arm/mach-mx5/Kconfig
arch/arm/mach-mx5/Makefile
arch/arm/mach-mx5/pm-imx5.c
arch/arm/plat-mxc/include/mach/hardware.h

12 years agoMerge remote-tracking branch 'at91/at91-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:22:01 +0000 (11:22 +1100)]
Merge remote-tracking branch 'at91/at91-next'

Conflicts:
arch/arm/mach-at91/at91cap9.c
arch/arm/mach-at91/at91sam9260.c
arch/arm/mach-at91/at91sam9261.c
arch/arm/mach-at91/at91sam9263.c
arch/arm/mach-at91/at91sam9g45.c
arch/arm/mach-at91/at91sam9rl.c
arch/arm/mach-at91/board-cap9adk.c
arch/arm/mach-at91/board-cpu9krea.c
arch/arm/mach-at91/board-cpuat91.c
arch/arm/mach-at91/board-snapper9260.c
arch/arm/mach-at91/include/mach/board.h
arch/arm/mach-at91/setup.c
drivers/net/ethernet/cadence/Kconfig

12 years agoMerge remote-tracking branch 'arm-perf/for-next/perf'
Stephen Rothwell [Fri, 25 Nov 2011 00:20:46 +0000 (11:20 +1100)]
Merge remote-tracking branch 'arm-perf/for-next/perf'

12 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:19:28 +0000 (11:19 +1100)]
Merge remote-tracking branch 'arm-soc/for-next'

Conflicts:
arch/arm/tools/mach-types
drivers/net/ethernet/cadence/Kconfig

12 years agoMerge remote-tracking branch 'arm-lpae/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:18:08 +0000 (11:18 +1100)]
Merge remote-tracking branch 'arm-lpae/for-next'

Conflicts:
arch/arm/include/asm/pgalloc.h
arch/arm/include/asm/pgtable.h
arch/arm/include/asm/tlb.h
arch/arm/mm/ioremap.c

12 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Fri, 25 Nov 2011 00:12:18 +0000 (11:12 +1100)]
Merge remote-tracking branch 'arm/for-next'

12 years agoMerge remote-tracking branch 'crypto-current/master'
Stephen Rothwell [Fri, 25 Nov 2011 00:10:01 +0000 (11:10 +1100)]
Merge remote-tracking branch 'crypto-current/master'

12 years agoMerge remote-tracking branch 'sound-current/for-linus'
Stephen Rothwell [Fri, 25 Nov 2011 00:09:54 +0000 (11:09 +1100)]
Merge remote-tracking branch 'sound-current/for-linus'

12 years agoMerge remote-tracking branch 'net/master'
Stephen Rothwell [Fri, 25 Nov 2011 00:09:53 +0000 (11:09 +1100)]
Merge remote-tracking branch 'net/master'

12 years agoMerge remote-tracking branch 'arm-current/fixes'
Stephen Rothwell [Fri, 25 Nov 2011 00:09:50 +0000 (11:09 +1100)]
Merge remote-tracking branch 'arm-current/fixes'

12 years agoiio: Fix build error in industrialio-core.c
Sasha Levin [Wed, 23 Nov 2011 10:13:59 +0000 (12:13 +0200)]
iio: Fix build error in industrialio-core.c

The error was introduced in commit b4641336 ("iio: fix a leak due to
improper use of anon_inode_getfd()").

Looks like the code wasn't even compile tested. Instead of just fixing the
error I changed the function a bit to make it nicer.

Cc: Jonathan Cameron <jic23@cam.ac.uk>
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Cc: linux-iio@vger.kernel.org
Cc: devel@driverdev.osuosl.org
Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
12 years agoMerge branch 'pm-freezer' into linux-next
Rafael J. Wysocki [Thu, 24 Nov 2011 23:45:31 +0000 (00:45 +0100)]
Merge branch 'pm-freezer' into linux-next

* pm-freezer:
  Freezer: fix more fallout from the thaw_process rename

12 years agoFreezer: fix more fallout from the thaw_process rename
Stephen Rothwell [Thu, 24 Nov 2011 23:44:55 +0000 (00:44 +0100)]
Freezer: fix more fallout from the thaw_process rename

Commit 944e192db53c "freezer: rename thaw_process() to __thaw_task()
and simplify the implementation" did not create a !CONFIG_FREEZER version
of __thaw_task().

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
12 years agolguest: switch segment-voodoo-numbers to readable symbols
Jacek Galowicz [Thu, 24 Nov 2011 23:13:15 +0000 (10:13 +1100)]
lguest: switch segment-voodoo-numbers to readable symbols

When studying lguest's x86 segment descriptor code, it is not longer
necessary to have the Intel x86 architecture manual open on the page
with the segment descriptor illustration to understand the crazy
numbers assigned to both descriptor structure halves a/b.
Now the struct desc_struct's fields, like suggested by
Glauber de Oliveira Costa in 2008, are used.

Signed-off-by: Jacek Galowicz <jacek@galowicz.de>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agomodule: Fix performance regression on modules with large symbol tables
Kevin Cernekee [Thu, 24 Nov 2011 23:13:15 +0000 (10:13 +1100)]
module: Fix performance regression on modules with large symbol tables

Looking at /proc/kallsyms, one starts to ponder whether all of the extra
strtab-related complexity in module.c is worth the memory savings.

Instead of making the add_kallsyms() loop even more complex, I tried the
other route of deleting the strmap logic and naively copying each string
into core_strtab with no consideration for consolidating duplicates.

Performance on an "already exists" insmod of nvidia.ko (runs
add_kallsyms() but does not actually initialize the module):

Original scheme: 1.230s
With naive copying: 0.058s

Extra space used: 35k (of a 408k module).

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
LKML-Reference: <73defb5e4bca04a6431392cc341112b1@localhost>

12 years agomodule: Add comments describing how the "strmap" logic works
Kevin Cernekee [Sun, 13 Nov 2011 03:08:55 +0000 (19:08 -0800)]
module: Add comments describing how the "strmap" logic works

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agovirtio: add debugging if driver doesn't kick.
Rusty Russell [Thu, 24 Nov 2011 23:13:14 +0000 (10:13 +1100)]
virtio: add debugging if driver doesn't kick.

Under the existing #ifdef DEBUG, check that they don't have more than
1/10 of a second between an add_buf() and a
virtqueue_notify()/virtqueue_kick_prepare() call.

We could get false positives on a really busy system, but good for
development.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agovirtio: expose added descriptors immediately.
Rusty Russell [Thu, 24 Nov 2011 23:13:14 +0000 (10:13 +1100)]
virtio: expose added descriptors immediately.

A virtio driver does virtqueue_add_buf() multiple times before finally
calling virtqueue_kick(); previously we only exposed the added buffers
in the virtqueue_kick() call.  This means we don't need a memory
barrier in virtqueue_add_buf(), but it reduces concurrency as the
device (ie. host) can't see the buffers until the kick.

In the unusual (but now possible) case where a driver does add_buf()
and get_buf() without doing a kick, we do need to insert one before
our counter wraps.  Otherwise we could wrap num_added, and later on
not realize that we have passed the marker where we should have
kicked.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agovirtio: avoid modulus operation.
Rusty Russell [Thu, 24 Nov 2011 23:13:13 +0000 (10:13 +1100)]
virtio: avoid modulus operation.

Since we know vq->vring.num is a power of 2, modulus is lazy (it's asserted
in vring_new_virtqueue()).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agovirtio: support unlocked queue kick
Rusty Russell [Thu, 24 Nov 2011 23:13:13 +0000 (10:13 +1100)]
virtio: support unlocked queue kick

Based on patch by Christoph for virtio_blk speedup:

Split virtqueue_kick to be able to do the actual notification
outside the lock protecting the virtqueue.  This patch was
originally done by Stefan Hajnoczi, but I can't find the
original one anymore and had to recreated it from memory.
Pointers to the original or corrections for the commit message
are welcome.

Stefan's patch was here:

https://github.com/stefanha/linux/commit/a6d06644e3a58e57a774e77d7dc34c4a5a2e7496
http://www.spinics.net/lists/linux-virtualization/msg14616.html

Third time's the charm!

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agovirtio: rename virtqueue_add_buf_gfp to virtqueue_add_buf
Rusty Russell [Thu, 24 Nov 2011 23:13:12 +0000 (10:13 +1100)]
virtio: rename virtqueue_add_buf_gfp to virtqueue_add_buf

Remove wrapper functions. This makes the allocation type explicit in
all callers; I used GPF_KERNEL where it seemed obvious, left it at
GFP_ATOMIC otherwise.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Reviewed-by: Christoph Hellwig <hch@lst.de>
12 years agovirtio: document functions better.
Rusty Russell [Thu, 24 Nov 2011 23:13:12 +0000 (10:13 +1100)]
virtio: document functions better.

The old documentation is left over from when we used a structure with
strategy pointers.

And move the documentation to the C file as per kernel practice.
Though I disagree...

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Reviewed-by: Christoph Hellwig <hch@lst.de>