]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
12 years agoMerge remote-tracking branch 'regulator/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:23:50 +0000 (13:23 +1100)]
Merge remote-tracking branch 'regulator/for-next'

12 years agoMerge remote-tracking branch 'fbdev/fbdev-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:22:20 +0000 (13:22 +1100)]
Merge remote-tracking branch 'fbdev/fbdev-next'

12 years agoMerge remote-tracking branch 'drm/drm-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:20:47 +0000 (13:20 +1100)]
Merge remote-tracking branch 'drm/drm-next'

12 years agoMerge remote-tracking branch 'md/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:19:08 +0000 (13:19 +1100)]
Merge remote-tracking branch 'md/for-next'

12 years agoMerge remote-tracking branch 'slab/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:17:43 +0000 (13:17 +1100)]
Merge remote-tracking branch 'slab/for-next'

12 years agoMerge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:17:33 +0000 (13:17 +1100)]
Merge remote-tracking branch 'kgdb/kgdb-next'

12 years agoMerge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:16:03 +0000 (13:16 +1100)]
Merge remote-tracking branch 'mmc/mmc-next'

12 years agoMerge remote-tracking branch 'battery/master'
Stephen Rothwell [Wed, 30 Nov 2011 02:14:33 +0000 (13:14 +1100)]
Merge remote-tracking branch 'battery/master'

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

12 years agoMerge remote-tracking branch 'input/next'
Stephen Rothwell [Wed, 30 Nov 2011 02:11:29 +0000 (13:11 +1100)]
Merge remote-tracking branch 'input/next'

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

12 years agoMerge branch 'quilt/rr'
Stephen Rothwell [Wed, 30 Nov 2011 02:10:03 +0000 (13:10 +1100)]
Merge branch 'quilt/rr'

12 years agoMerge remote-tracking branch 'cpufreq/next'
Stephen Rothwell [Wed, 30 Nov 2011 02:09:48 +0000 (13:09 +1100)]
Merge remote-tracking branch 'cpufreq/next'

12 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:08:23 +0000 (13:08 +1100)]
Merge remote-tracking branch 'sound-asoc/for-next'

12 years agoMerge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 02:06:49 +0000 (13:06 +1100)]
Merge remote-tracking branch 'sound/for-next'

12 years agoMerge remote-tracking branch 'crypto/master'
Stephen Rothwell [Wed, 30 Nov 2011 02:05:17 +0000 (13:05 +1100)]
Merge remote-tracking branch 'crypto/master'

12 years agoMerge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Wed, 30 Nov 2011 02:03:49 +0000 (13:03 +1100)]
Merge remote-tracking branch 'l2-mtd/master'

12 years agoMerge remote-tracking branch 'bluetooth/master'
Stephen Rothwell [Wed, 30 Nov 2011 02:02:18 +0000 (13:02 +1100)]
Merge remote-tracking branch 'bluetooth/master'

12 years agoMerge remote-tracking branch 'wireless-next/master'
Stephen Rothwell [Wed, 30 Nov 2011 02:00:32 +0000 (13:00 +1100)]
Merge remote-tracking branch 'wireless-next/master'

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

12 years agoMerge remote-tracking branch 'slave-dma/next'
Stephen Rothwell [Wed, 30 Nov 2011 01:50:59 +0000 (12:50 +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 [Wed, 30 Nov 2011 01:49:34 +0000 (12:49 +1100)]
Merge remote-tracking branch 'target-merge/for-next-merge'

12 years agoMerge remote-tracking branch 'dlm/next'
Stephen Rothwell [Wed, 30 Nov 2011 01:48:06 +0000 (12:48 +1100)]
Merge remote-tracking branch 'dlm/next'

12 years agoMerge remote-tracking branch 'infiniband/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:46:38 +0000 (12:46 +1100)]
Merge remote-tracking branch 'infiniband/for-next'

12 years agoMerge remote-tracking branch 'libata/NEXT'
Stephen Rothwell [Wed, 30 Nov 2011 01:45:15 +0000 (12:45 +1100)]
Merge remote-tracking branch 'libata/NEXT'

12 years agoMerge remote-tracking branch 'kconfig/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:45:09 +0000 (12:45 +1100)]
Merge remote-tracking branch 'kconfig/for-next'

12 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:43:41 +0000 (12:43 +1100)]
Merge remote-tracking branch 'kbuild/for-next'

12 years agoMerge remote-tracking branch 'v4l-dvb/master'
Stephen Rothwell [Wed, 30 Nov 2011 01:40:15 +0000 (12:40 +1100)]
Merge remote-tracking branch 'v4l-dvb/master'

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

12 years agoMerge remote-tracking branch 'hwmon-staging/hwmon-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:38:56 +0000 (12:38 +1100)]
Merge remote-tracking branch 'hwmon-staging/hwmon-next'

12 years agoMerge branch 'quilt/jdelvare-hwmon'
Stephen Rothwell [Wed, 30 Nov 2011 01:37:40 +0000 (12:37 +1100)]
Merge branch 'quilt/jdelvare-hwmon'

12 years agoMerge remote-tracking branch 'bjdooks-i2c/next-i2c'
Stephen Rothwell [Wed, 30 Nov 2011 01:36:18 +0000 (12:36 +1100)]
Merge remote-tracking branch 'bjdooks-i2c/next-i2c'

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

12 years agoMerge commit 'refs/next/20111128/hid'
Stephen Rothwell [Wed, 30 Nov 2011 01:34:24 +0000 (12:34 +1100)]
Merge commit 'refs/next/20111128/hid'

12 years agoMerge remote-tracking branch 'pci/linux-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:25:37 +0000 (12:25 +1100)]
Merge remote-tracking branch 'pci/linux-next'

12 years agoMerge remote-tracking branch 'xfs/master'
Stephen Rothwell [Wed, 30 Nov 2011 01:24:11 +0000 (12:24 +1100)]
Merge remote-tracking branch 'xfs/master'

12 years agoMerge remote-tracking branch 'ubifs/linux-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:22:55 +0000 (12:22 +1100)]
Merge remote-tracking branch 'ubifs/linux-next'

12 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:21:22 +0000 (12:21 +1100)]
Merge remote-tracking branch 'ocfs2/linux-next'

12 years agoMerge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:20:02 +0000 (12:20 +1100)]
Merge remote-tracking branch 'nfsd/nfsd-next'

12 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Wed, 30 Nov 2011 01:18:43 +0000 (12:18 +1100)]
Merge remote-tracking branch 'logfs/master'

Conflicts:
fs/logfs/file.c

12 years agoMerge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Wed, 30 Nov 2011 01:17:02 +0000 (12:17 +1100)]
Merge remote-tracking branch 'gfs2/master'

12 years agoMerge remote-tracking branch 'ecryptfs/next'
Stephen Rothwell [Wed, 30 Nov 2011 01:16:58 +0000 (12:16 +1100)]
Merge remote-tracking branch 'ecryptfs/next'

12 years agoMerge remote-tracking branch 'cifs/master'
Stephen Rothwell [Wed, 30 Nov 2011 01:15:38 +0000 (12:15 +1100)]
Merge remote-tracking branch 'cifs/master'

12 years agoMerge remote-tracking branch 'xtensa/master'
Stephen Rothwell [Wed, 30 Nov 2011 01:14:14 +0000 (12:14 +1100)]
Merge remote-tracking branch 'xtensa/master'

12 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Wed, 30 Nov 2011 01:12:51 +0000 (12:12 +1100)]
Merge remote-tracking branch 's390/features'

12 years agoMerge remote-tracking branch '52xx-and-virtex/powerpc/next'
Stephen Rothwell [Wed, 30 Nov 2011 01:12:21 +0000 (12:12 +1100)]
Merge remote-tracking branch '52xx-and-virtex/powerpc/next'

12 years agoMerge remote-tracking branch 'powerpc/next'
Stephen Rothwell [Wed, 30 Nov 2011 01:09:50 +0000 (12:09 +1100)]
Merge remote-tracking branch 'powerpc/next'

12 years agoMerge remote-tracking branch 'parisc/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:08:29 +0000 (12:08 +1100)]
Merge remote-tracking branch 'parisc/for-next'

12 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:06:38 +0000 (12:06 +1100)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

12 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:05:12 +0000 (12:05 +1100)]
Merge remote-tracking branch 'm68knommu/for-next'

Conflicts:
arch/m68k/Kconfig.debug

12 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 01:03:45 +0000 (12:03 +1100)]
Merge remote-tracking branch 'm68k/for-next'

12 years agoMerge remote-tracking branch 'ia64/next'
Stephen Rothwell [Wed, 30 Nov 2011 01:02:28 +0000 (12:02 +1100)]
Merge remote-tracking branch 'ia64/next'

12 years agoMerge branch 'quilt/hexagon'
Stephen Rothwell [Wed, 30 Nov 2011 01:01:12 +0000 (12:01 +1100)]
Merge branch 'quilt/hexagon'

12 years agoMerge remote-tracking branch 'cris/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 00:59:22 +0000 (11:59 +1100)]
Merge remote-tracking branch 'cris/for-next'

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

12 years agoMerge remote-tracking branch 'tegra/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 00:52:34 +0000 (11:52 +1100)]
Merge remote-tracking branch 'tegra/for-next'

12 years agoMerge remote-tracking branch 's5p/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 00:51:18 +0000 (11:51 +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 [Wed, 30 Nov 2011 00:49:50 +0000 (11:49 +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 [Wed, 30 Nov 2011 00:39:07 +0000 (11:39 +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/at91sam926x_time.c
arch/arm/mach-at91/at91sam9_alt_reset.S
arch/arm/mach-at91/at91sam9g45.c
arch/arm/mach-at91/at91sam9rl.c
arch/arm/mach-at91/generic.h
arch/arm/mach-at91/gpio.c
arch/arm/mach-at91/include/mach/at91cap9.h
arch/arm/mach-at91/include/mach/at91sam9260.h
arch/arm/mach-at91/include/mach/at91sam9261.h
arch/arm/mach-at91/include/mach/at91sam9263.h
arch/arm/mach-at91/include/mach/at91sam9g45.h
arch/arm/mach-at91/include/mach/at91sam9rl.h
arch/arm/mach-at91/include/mach/system.h
arch/arm/mach-at91/pm.c
arch/arm/mach-at91/setup.c

12 years agoMerge remote-tracking branch 'arm-perf/for-next/perf'
Stephen Rothwell [Wed, 30 Nov 2011 00:13:48 +0000 (11:13 +1100)]
Merge remote-tracking branch 'arm-perf/for-next/perf'

12 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 00:12:27 +0000 (11:12 +1100)]
Merge remote-tracking branch 'arm-soc/for-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/setup.c
arch/arm/plat-omap/include/plat/common.h
arch/arm/tools/mach-types

12 years agoMerge remote-tracking branch 'arm-lpae/for-next'
Stephen Rothwell [Wed, 30 Nov 2011 00:11:04 +0000 (11:11 +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 [Wed, 30 Nov 2011 00:05:11 +0000 (11:05 +1100)]
Merge remote-tracking branch 'arm/for-next'

12 years agoMerge remote-tracking branch 'staging.current/staging-linus'
Stephen Rothwell [Wed, 30 Nov 2011 00:01:35 +0000 (11:01 +1100)]
Merge remote-tracking branch 'staging.current/staging-linus'

12 years agoMerge remote-tracking branch 'usb.current/usb-linus'
Stephen Rothwell [Wed, 30 Nov 2011 00:01:34 +0000 (11:01 +1100)]
Merge remote-tracking branch 'usb.current/usb-linus'

12 years agoMerge remote-tracking branch 'wireless/master'
Stephen Rothwell [Wed, 30 Nov 2011 00:01:32 +0000 (11:01 +1100)]
Merge remote-tracking branch 'wireless/master'

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

12 years agoMerge remote-tracking branch 'net/master'
Stephen Rothwell [Wed, 30 Nov 2011 00:01:29 +0000 (11:01 +1100)]
Merge remote-tracking branch 'net/master'

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

12 years agonet: Fix skb_update_prio RCU usage.
Igor Maravic [Fri, 25 Nov 2011 07:44:54 +0000 (07:44 +0000)]
net: Fix skb_update_prio RCU usage.

Change function rcu_dereference to rcu_dereference_bh to avoid warning

[ INFO: suspicious RCU usage. ]
-------------------------------
net/core/dev.c:2459 suspicious rcu_dereference_check() usage!

because we are locking with

rcu_read_lock_bh();

in function dev_queue_xmit(struct sk_buff *skb)

Signed-off-by: Igor Maravic <igorm@etf.rs>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agomtd: gpmi: add missing include 'module.h'
Wolfram Sang [Wed, 23 Nov 2011 14:57:06 +0000 (15:57 +0100)]
mtd: gpmi: add missing include 'module.h'

Fixes:

drivers/mtd/nand/gpmi-nand/gpmi-nand.c: In function 'gpmi_nfc_init':
drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1475:16: error: 'THIS_MODULE' undeclared (first use in this function)
drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1475:16: note: each undeclared identifier is reported only once for each function it appears in
drivers/mtd/nand/gpmi-nand/gpmi-nand.c: At top level:
drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1617:15: error: expected declaration specifiers or '...' before string constant
drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1617:1: warning: data definition has no type or storage class
drivers/mtd/nand/gpmi-nand/gpmi-nand.c:1617:1: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR'

and some more...

Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Acked-by: Huang Shijie <b32955@freescale.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@intel.com>
12 years agonetlabel: Fix build problems when IPv6 is not enabled
Paul Moore [Tue, 29 Nov 2011 10:10:54 +0000 (10:10 +0000)]
netlabel: Fix build problems when IPv6 is not enabled

A recent fix to the the NetLabel code caused build problem with
configurations that did not have IPv6 enabled; see below:

 netlabel_kapi.c: In function 'netlbl_cfg_unlbl_map_add':
 netlabel_kapi.c:165:4:
  error: implicit declaration of function 'netlbl_af6list_add'

This patch fixes this problem by making the IPv6 specific code conditional
on the IPv6 configuration flags as we done in the rest of NetLabel and the
network stack as a whole.  We have to move some variable declarations
around as a result so things may not be quite as pretty, but at least it
builds cleanly now.

Some additional IPv6 conditionals were added to the NetLabel code as well
for the sake of consistency.

Reported-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: Paul Moore <pmoore@redhat.com>
Acked-by: Randy Dunlap <rdunlap@xenotime.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoMerge branches 'cxgb4', 'ipoib', 'misc' and 'qib' into for-next
Roland Dreier [Tue, 29 Nov 2011 21:37:18 +0000 (13:37 -0800)]
Merge branches 'cxgb4', 'ipoib', 'misc' and 'qib' into for-next

12 years agoIB: Fix RCU lockdep splats
Eric Dumazet [Tue, 29 Nov 2011 21:31:23 +0000 (22:31 +0100)]
IB: Fix RCU lockdep splats

Commit f2c31e32b37 ("net: fix NULL dereferences in check_peer_redir()")
forgot to take care of infiniband uses of dst neighbours.

Many thanks to Marc Aurele who provided a nice bug report and feedback.

Reported-by: Marc Aurele La France <tsi@ualberta.ca>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: David Miller <davem@davemloft.net>
CC: Roland Dreier <roland@kernel.org>
Signed-off-by: Roland Dreier <roland@purestorage.com>
12 years agoIB/ipoib: Prevent hung task or softlockup processing multicast response
Mike Marciniszyn [Mon, 21 Nov 2011 13:43:54 +0000 (08:43 -0500)]
IB/ipoib: Prevent hung task or softlockup processing multicast response

This following can occur with ipoib when processing a multicast reponse:

    BUG: soft lockup - CPU#0 stuck for 67s! [ib_mad1:982]
    Modules linked in: ...
    CPU 0:
    Modules linked in: ...
    Pid: 982, comm: ib_mad1 Not tainted 2.6.32-131.0.15.el6.x86_64 #1 ProLiant DL160 G5
    RIP: 0010:[<ffffffff814ddb27>]  [<ffffffff814ddb27>] _spin_unlock_irqrestore+0x17/0x20
    RSP: 0018:ffff8802119ed860  EFLAGS: 00000246
    0000000000000004 RBX: ffff8802119ed860 RCX: 000000000000a299
    RDX: ffff88021086c700 RSI: 0000000000000246 RDI: 0000000000000246
    RBP: ffffffff8100bc8e R08: ffff880210ac229c R09: 0000000000000000
    R10: ffff88021278aab8 R11: 0000000000000000 R12: ffff8802119ed860
    R13: ffffffff8100be6e R14: 0000000000000001 R15: 0000000000000003
    FS:  0000000000000000(0000) GS:ffff880028200000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
    CR2: 00000000006d4840 CR3: 0000000209aa5000 CR4: 00000000000406f0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
    Call Trace:
    [<ffffffffa032c247>] ? ipoib_mcast_send+0x157/0x480 [ib_ipoib]
    [<ffffffff8100bc8e>] ? apic_timer_interrupt+0xe/0x20
    [<ffffffff8100bc8e>] ? apic_timer_interrupt+0xe/0x20
    [<ffffffffa03283d4>] ? ipoib_path_lookup+0x124/0x2d0 [ib_ipoib]
    [<ffffffffa03286fc>] ? ipoib_start_xmit+0x17c/0x430 [ib_ipoib]
    [<ffffffff8141e758>] ? dev_hard_start_xmit+0x2c8/0x3f0
    [<ffffffff81439d0a>] ? sch_direct_xmit+0x15a/0x1c0
    [<ffffffff81423098>] ? dev_queue_xmit+0x388/0x4d0
    [<ffffffffa032d6b7>] ? ipoib_mcast_join_finish+0x2c7/0x510 [ib_ipoib]
    [<ffffffffa032dab8>] ? ipoib_mcast_sendonly_join_complete+0x1b8/0x1f0 [ib_ipoib]
    [<ffffffffa02a0946>] ? mcast_work_handler+0x1a6/0x710 [ib_sa]
    [<ffffffffa015f01e>] ? ib_send_mad+0xfe/0x3c0 [ib_mad]
    [<ffffffffa00f6c93>] ? ib_get_cached_lmc+0xa3/0xb0 [ib_core]
    [<ffffffffa02a0f9b>] ? join_handler+0xeb/0x200 [ib_sa]
    [<ffffffffa029e4fc>] ? ib_sa_mcmember_rec_callback+0x5c/0xa0 [ib_sa]
    [<ffffffffa029e79c>] ? recv_handler+0x3c/0x70 [ib_sa]
    [<ffffffffa01603a4>] ? ib_mad_completion_handler+0x844/0x9d0 [ib_mad]
    [<ffffffffa015fb60>] ? ib_mad_completion_handler+0x0/0x9d0 [ib_mad]
    [<ffffffff81088830>] ? worker_thread+0x170/0x2a0
    [<ffffffff8108e160>] ? autoremove_wake_function+0x0/0x40
    [<ffffffff810886c0>] ? worker_thread+0x0/0x2a0
    [<ffffffff8108ddf6>] ? kthread+0x96/0xa0
    [<ffffffff8100c1ca>] ? child_rip+0xa/0x20

Coinciding with stack trace is the following message:

    ib0: ib_address_create failed

The code below in ipoib_mcast_join_finish() will note the above
failure in the address handle but otherwise continue:

                ah = ipoib_create_ah(dev, priv->pd, &av);
                if (!ah) {
                        ipoib_warn(priv, "ib_address_create failed\n");
                } else {

The while loop at the bottom of ipoib_mcast_join_finish() will attempt
to send queued multicast packets in mcast->pkt_queue and eventually
end up in ipoib_mcast_send():

        if (!mcast->ah) {
                if (skb_queue_len(&mcast->pkt_queue) < IPOIB_MAX_MCAST_QUEUE)
                        skb_queue_tail(&mcast->pkt_queue, skb);
                else {
                        ++dev->stats.tx_dropped;
                        dev_kfree_skb_any(skb);
                }

My read is that the code will requeue the packet and return to the
ipoib_mcast_join_finish() while loop and the stage is set for the
"hung" task diagnostic as the while loop never sees a non-NULL ah, and
will do nothing to resolve.

There are GFP_ATOMIC allocates in the provider routines, so this is
possible and should be dealt with.

The test that induced the failure is associated with a host SM on the
same server during a shutdown.

This patch causes ipoib_mcast_join_finish() to exit with an error
which will flush the queued mcast packets.  Nothing is done to unwind
the QP attached state so that subsequent sends from above will retry
the join.

Reviewed-by: Ram Vepa <ram.vepa@qlogic.com>
Reviewed-by: Gary Leshner <gary.leshner@qlogic.com>
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@qlogic.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
12 years agoMerge branch 'next/timer' into for-next
Arnd Bergmann [Tue, 29 Nov 2011 20:57:24 +0000 (20:57 +0000)]
Merge branch 'next/timer' into for-next

12 years agosctp: better integer overflow check in sctp_auth_create_key()
Xi Wang [Tue, 29 Nov 2011 09:26:30 +0000 (09:26 +0000)]
sctp: better integer overflow check in sctp_auth_create_key()

The check from commit 30c2235c is incomplete and cannot prevent
cases like key_len = 0x80000000 (INT_MAX + 1).  In that case, the
left-hand side of the check (INT_MAX - key_len), which is unsigned,
becomes 0xffffffff (UINT_MAX) and bypasses the check.

However this shouldn't be a security issue.  The function is called
from the following two code paths:

 1) setsockopt()

 2) sctp_auth_asoc_set_secret()

In case (1), sca_keylength is never going to exceed 65535 since it's
bounded by a u16 from the user API.  As such, the key length will
never overflow.

In case (2), sca_keylength is computed based on the user key (1 short)
and 2 * key_vector (3 shorts) for a total of 7 * USHRT_MAX, which still
will not overflow.

In other words, this overflow check is not really necessary.  Just
make it more correct.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Cc: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoASoC: Enhance default WM8958 microphone detection
Mark Brown [Sat, 13 Aug 2011 02:57:18 +0000 (11:57 +0900)]
ASoC: Enhance default WM8958 microphone detection

Actively manage the detection rate for microphones with WM8958, providing
improved power consumption and maximising the benefit from the hardware
debounce.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agodrm: move the fb bpp/depth helper into the core.
Dave Airlie [Tue, 29 Nov 2011 20:02:54 +0000 (20:02 +0000)]
drm: move the fb bpp/depth helper into the core.

This is used by nearly everyone including vmwgfx which doesn't generally
use the fb helper.

Signed-off-by: Dave Airlie <airlied@redhat.com>
12 years agoregulator: Allow regulators to register with no init_data
Mark Brown [Tue, 29 Nov 2011 18:11:19 +0000 (18:11 +0000)]
regulator: Allow regulators to register with no init_data

This allows read-only access to the device configuration which may be
useful for diagnostics.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Put WM8958 and WM1811 MICBIAS into bypass mode when no audio
Mark Brown [Tue, 29 Nov 2011 19:58:19 +0000 (19:58 +0000)]
ASoC: Put WM8958 and WM1811 MICBIAS into bypass mode when no audio

When we don't have any active audio we can put the microphone biases into
bypass mode to save power at the expense of performance.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoxfs: fix attr2 vs large data fork assert
Christoph Hellwig [Sat, 19 Nov 2011 17:44:30 +0000 (17:44 +0000)]
xfs: fix attr2 vs large data fork assert

With Dmitry fsstress updates I've seen very reproducible crashes in
xfs_attr_shortform_remove because xfs_attr_shortform_bytesfit claims that
the attributes would not fit inline into the inode after removing an
attribute.  It turns out that we were operating on an inode with lots
of delalloc extents, and thus an if_bytes values for the data fork that
is larger than biggest possible on-disk storage for it which utterly
confuses the code near the end of xfs_attr_shortform_bytesfit.

Fix this by always allowing the current attribute fork, like we already
do for the attr1 format, given that delalloc conversion will take care
for moving either the data or attribute area out of line if it doesn't
fit at that point - or making the point moot by merging extents at this
point.

Also document the function better, and clean up some loose bits.

Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Ben Myers <bpm@sgi.com>
12 years agosch_choke: use skb_flow_dissect()
Eric Dumazet [Tue, 29 Nov 2011 04:22:15 +0000 (04:22 +0000)]
sch_choke: use skb_flow_dissect()

Instead of using a custom flow dissector, use skb_flow_dissect() and
benefit from tunnelling support.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agosch_sfq: use skb_flow_dissect()
Eric Dumazet [Tue, 29 Nov 2011 03:40:45 +0000 (03:40 +0000)]
sch_sfq: use skb_flow_dissect()

Instead of using a custom flow dissector, use skb_flow_dissect() and
benefit from tunnelling support.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agotcp: avoid frag allocation for small frames
Eric Dumazet [Mon, 28 Nov 2011 22:41:47 +0000 (22:41 +0000)]
tcp: avoid frag allocation for small frames

tcp_sendmsg() uses select_size() helper to choose skb head size when a
new skb must be allocated.

If GSO is enabled for the socket, current strategy is to force all
payload data to be outside of headroom, in PAGE fragments.

This strategy is not welcome for small packets, wasting memory.

Experiments show that best results are obtained when using 2048 bytes
for skb head (This includes the skb overhead and various headers)

This patch provides better len/truesize ratios for packets sent to
loopback device, and reduce memory needs for in-flight loopback packets,
particularly on arches with big pages.

If a sender sends many 1-byte packets to an unresponsive application,
receiver rmem_alloc will grow faster and will stop queuing these packets
sooner, or will collapse its receive queue to free excess memory.

netperf -t TCP_RR results are improved by ~4 %, and many workloads are
improved as well (tbench, mysql...)

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoflow_dissector: use a 64bit load/store
Eric Dumazet [Mon, 28 Nov 2011 20:30:35 +0000 (20:30 +0000)]
flow_dissector: use a 64bit load/store

Le lundi 28 novembre 2011 à 19:06 -0500, David Miller a écrit :
> From: Dimitris Michailidis <dm@chelsio.com>
> Date: Mon, 28 Nov 2011 08:25:39 -0800
>
> >> +bool skb_flow_dissect(const struct sk_buff *skb, struct flow_keys
> >> *flow)
> >> +{
> >> + int poff, nhoff = skb_network_offset(skb);
> >> + u8 ip_proto;
> >> + u16 proto = skb->protocol;
> >
> > __be16 instead of u16 for proto?
>
> I'll take care of this when I apply these patches.

( CC trimmed )

Thanks David !

Here is a small patch to use one 64bit load/store on x86_64 instead of
two 32bit load/stores.

[PATCH net-next] flow_dissector: use a 64bit load/store

gcc compiler is smart enough to use a single load/store if we
memcpy(dptr, sptr, 8) on x86_64, regardless of
CONFIG_CC_OPTIMIZE_FOR_SIZE

In IP header, daddr immediately follows saddr, this wont change in the
future. We only need to make sure our flow_keys (src,dst) fields wont
break the rule.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoxfs: force buffer writeback before blocking on the ilock in inode reclaim
Christoph Hellwig [Tue, 29 Nov 2011 18:06:14 +0000 (12:06 -0600)]
xfs: force buffer writeback before blocking on the ilock in inode reclaim

If we are doing synchronous inode reclaim we block the VM from making
progress in memory reclaim.  So if we encouter a flush locked inode
promote it in the delwri list and wake up xfsbufd to write it out now.
Without this we can get hangs of up to 30 seconds during workloads hitting
synchronous inode reclaim.

The scheme is copied from what we do for dquot reclaims.

Reported-by: Simon Kirby <sim@hostway.ca>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Simon Kirby <sim@hostway.ca>
Signed-off-by: Ben Myers <bpm@sgi.com>
12 years agosfc: Support for byte queue limits
Tom Herbert [Mon, 28 Nov 2011 16:33:43 +0000 (16:33 +0000)]
sfc: Support for byte queue limits

Changes to sfc to use byte queue limits.

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agobnx2x: Support for byte queue limits
Tom Herbert [Mon, 28 Nov 2011 16:33:37 +0000 (16:33 +0000)]
bnx2x: Support for byte queue limits

Changes to bnx2x to use byte queue limits.

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agotg3: Support for byte queue limits
Tom Herbert [Mon, 28 Nov 2011 16:33:30 +0000 (16:33 +0000)]
tg3: Support for byte queue limits

Changes to tg3 to use byte queue limits.

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoforcedeth: Support for byte queue limits
Tom Herbert [Mon, 28 Nov 2011 16:33:23 +0000 (16:33 +0000)]
forcedeth: Support for byte queue limits

Changes to forcedeth to use byte queue limits.

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoe1000e: Support for byte queue limits
Tom Herbert [Mon, 28 Nov 2011 16:33:16 +0000 (16:33 +0000)]
e1000e: Support for byte queue limits

Changes to e1000e to use byte queue limits.

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agobql: Byte queue limits
Tom Herbert [Mon, 28 Nov 2011 16:33:09 +0000 (16:33 +0000)]
bql: Byte queue limits

Networking stack support for byte queue limits, uses dynamic queue
limits library.  Byte queue limits are maintained per transmit queue,
and a dql structure has been added to netdev_queue structure for this
purpose.

Configuration of bql is in the tx-<n> sysfs directory for the queue
under the byte_queue_limits directory.  Configuration includes:
limit_min, bql minimum limit
limit_max, bql maximum limit
hold_time, bql slack hold time

Also under the directory are:
limit, current byte limit
inflight, current number of bytes on the queue

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoxps: Add xps_queue_release function
Tom Herbert [Mon, 28 Nov 2011 16:33:02 +0000 (16:33 +0000)]
xps: Add xps_queue_release function

This patch moves the xps specific parts in netdev_queue_release into
its own function which netdev_queue_release can call.  This allows
netdev_queue_release to be more generic (for adding new attributes
to tx queues).

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: Add netdev interfaces for recording sends/comp
Tom Herbert [Mon, 28 Nov 2011 16:32:52 +0000 (16:32 +0000)]
net: Add netdev interfaces for recording sends/comp

Add interfaces for drivers to call for recording number of packets and
bytes at send time and transmit completion.  Also, added a function to
"reset" a queue.  These will be used by Byte Queue Limits.

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agonet: Add queue state xoff flag for stack
Tom Herbert [Mon, 28 Nov 2011 16:32:44 +0000 (16:32 +0000)]
net: Add queue state xoff flag for stack

Create separate queue state flags so that either the stack or drivers
can turn on XOFF.  Added a set of functions used in the stack to determine
if a queue is really stopped (either by stack or driver)

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agodql: Dynamic queue limits
Tom Herbert [Mon, 28 Nov 2011 16:32:35 +0000 (16:32 +0000)]
dql: Dynamic queue limits

Implementation of dynamic queue limits (dql).  This is a libary which
allows a queue limit to be dynamically managed.  The goal of dql is
to set the queue limit, number of objects to the queue, to be minimized
without allowing the queue to be starved.

dql would be used with a queue which has these properties:

1) Objects are queued up to some limit which can be expressed as a
   count of objects.
2) Periodically a completion process executes which retires consumed
   objects.
3) Starvation occurs when limit has been reached, all queued data has
   actually been consumed but completion processing has not yet run,
   so queuing new data is blocked.
4) Minimizing the amount of queued data is desirable.

A canonical example of such a queue would be a NIC HW transmit queue.

The queue limit is dynamic, it will increase or decrease over time
depending on the workload.  The queue limit is recalculated each time
completion processing is done.  Increases occur when the queue is
starved and can exponentially increase over successive intervals.
Decreases occur when more data is being maintained in the queue than
needed to prevent starvation.  The number of extra objects, or "slack",
is measured over successive intervals, and to avoid hysteresis the
limit is only reduced by the miminum slack seen over a configurable
time period.

dql API provides routines to manage the queue:
- dql_init is called to intialize the dql structure
- dql_reset is called to reset dynamic values
- dql_queued called when objects are being enqueued
- dql_avail returns availability in the queue
- dql_completed is called when objects have be consumed in the queue

Configuration consists of:
- max_limit, maximum limit
- min_limit, minimum limit
- slack_hold_time, time to measure instances of slack before reducing
  queue limit

Signed-off-by: Tom Herbert <therbert@google.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agoASoC: Fix __iomem annotation for IDMA registers
Mark Brown [Sun, 27 Nov 2011 21:35:40 +0000 (21:35 +0000)]
ASoC: Fix __iomem annotation for IDMA registers

We always store the register address as __iomem but pass it around as a
plain void * which upsets sparse.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Ensure SYSCLK is enabled for WM8958 accessory detection
Mark Brown [Tue, 29 Nov 2011 14:36:17 +0000 (14:36 +0000)]
ASoC: Ensure SYSCLK is enabled for WM8958 accessory detection

Ensure SYSCLK is enabled while running accessory detection on WM8958.
It is always required so there is no sense in requiring machine drivers
to individually do this.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'dev' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Linus Torvalds [Tue, 29 Nov 2011 16:59:12 +0000 (08:59 -0800)]
Merge branch 'dev' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4

* 'dev' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
  ext4: fix racy use-after-free in ext4_end_io_dio()

12 years agologfs: update page reference count for pined pages
Prasad Joshi [Sat, 26 Nov 2011 05:30:47 +0000 (11:00 +0530)]
logfs: update page reference count for pined pages

LogFS sets PG_private flag to indicate a pined page. We assumed that
marking a page as private is enough to ensure its existence. But
instead it is necessary to hold a reference count to the page.

The change resolves the following BUG

BUG: Bad page state in process flush-253:16  pfn:6a6d0
page flags: 0x100000000000808(uptodate|private)

Suggested-and-Acked-by: Joern Engel <joern@logfs.org>
Signed-off-by: Prasad Joshi <prasadjoshi.linux@gmail.com>
12 years agoARM: soc: update arm-soc contents after at91/gpio merge
Arnd Bergmann [Tue, 29 Nov 2011 15:52:32 +0000 (15:52 +0000)]
ARM: soc: update arm-soc contents after at91/gpio merge

The at91/gpio branch has a dependency on the macb-gem
branch. Pull in only parts of that so we still have
a cleanup branch that can go in first.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
12 years agoMerge branch 'next/cleanup' into for-next
Arnd Bergmann [Tue, 29 Nov 2011 15:47:55 +0000 (15:47 +0000)]
Merge branch 'next/cleanup' into for-next