]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
11 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 01:30:08 +0000 (11:30 +1000)]
Merge remote-tracking branch 'sound-asoc/for-next'

11 years agoMerge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 01:28:19 +0000 (11:28 +1000)]
Merge remote-tracking branch 'sound/for-next'

11 years agoMerge remote-tracking branch 'drm/drm-next'
Stephen Rothwell [Fri, 14 Sep 2012 01:26:28 +0000 (11:26 +1000)]
Merge remote-tracking branch 'drm/drm-next'

11 years agoMerge remote-tracking branch 'crypto/master'
Stephen Rothwell [Fri, 14 Sep 2012 01:24:45 +0000 (11:24 +1000)]
Merge remote-tracking branch 'crypto/master'

Conflicts:
crypto/Kconfig

11 years agoMerge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Fri, 14 Sep 2012 01:23:07 +0000 (11:23 +1000)]
Merge remote-tracking branch 'l2-mtd/master'

11 years agoMerge remote-tracking branch 'mtd/master'
Stephen Rothwell [Fri, 14 Sep 2012 01:21:25 +0000 (11:21 +1000)]
Merge remote-tracking branch 'mtd/master'

11 years agoMerge remote-tracking branch 'bluetooth/master'
Stephen Rothwell [Fri, 14 Sep 2012 01:19:49 +0000 (11:19 +1000)]
Merge remote-tracking branch 'bluetooth/master'

11 years agoMerge remote-tracking branch 'wireless-next/master'
Stephen Rothwell [Fri, 14 Sep 2012 01:17:57 +0000 (11:17 +1000)]
Merge remote-tracking branch 'wireless-next/master'

11 years agoMerge remote-tracking branch 'net-next/master'
Stephen Rothwell [Fri, 14 Sep 2012 01:01:39 +0000 (11:01 +1000)]
Merge remote-tracking branch 'net-next/master'

Conflicts:
net/netfilter/nfnetlink_log.c
net/netfilter/xt_LOG.c
net/socket.c

11 years agoMerge remote-tracking branch 'slave-dma/next'
Stephen Rothwell [Fri, 14 Sep 2012 00:44:43 +0000 (10:44 +1000)]
Merge remote-tracking branch 'slave-dma/next'

11 years agoMerge remote-tracking branch 'target-updates/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:42:53 +0000 (10:42 +1000)]
Merge remote-tracking branch 'target-updates/for-next'

11 years agoMerge remote-tracking branch 'scsi/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:41:08 +0000 (10:41 +1000)]
Merge remote-tracking branch 'scsi/for-next'

11 years agoMerge remote-tracking branch 'dlm/next'
Stephen Rothwell [Fri, 14 Sep 2012 00:39:30 +0000 (10:39 +1000)]
Merge remote-tracking branch 'dlm/next'

11 years agoMerge remote-tracking branch 'ubi/linux-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:37:53 +0000 (10:37 +1000)]
Merge remote-tracking branch 'ubi/linux-next'

11 years agoMerge remote-tracking branch 'thermal/next'
Stephen Rothwell [Fri, 14 Sep 2012 00:36:15 +0000 (10:36 +1000)]
Merge remote-tracking branch 'thermal/next'

11 years agoMerge remote-tracking branch 'cpuidle/cpuidle-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:36:08 +0000 (10:36 +1000)]
Merge remote-tracking branch 'cpuidle/cpuidle-next'

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

11 years agoMerge remote-tracking branch 'pstore/master'
Stephen Rothwell [Fri, 14 Sep 2012 00:34:22 +0000 (10:34 +1000)]
Merge remote-tracking branch 'pstore/master'

11 years agoMerge remote-tracking branch 'libata/NEXT'
Stephen Rothwell [Fri, 14 Sep 2012 00:32:35 +0000 (10:32 +1000)]
Merge remote-tracking branch 'libata/NEXT'

11 years agoMerge remote-tracking branch 'kconfig/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:31:03 +0000 (10:31 +1000)]
Merge remote-tracking branch 'kconfig/for-next'

11 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:29:22 +0000 (10:29 +1000)]
Merge remote-tracking branch 'kbuild/for-next'

11 years agoMerge remote-tracking branch 'v4l-dvb/master'
Stephen Rothwell [Fri, 14 Sep 2012 00:27:22 +0000 (10:27 +1000)]
Merge remote-tracking branch 'v4l-dvb/master'

Conflicts:
arch/arm/mach-imx/mach-imx27_visstrim_m10.c

11 years agoMerge remote-tracking branch 'hwmon-staging/hwmon-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:25:47 +0000 (10:25 +1000)]
Merge remote-tracking branch 'hwmon-staging/hwmon-next'

11 years agoMerge branch 'quilt/jdelvare-hwmon'
Stephen Rothwell [Fri, 14 Sep 2012 00:24:20 +0000 (10:24 +1000)]
Merge branch 'quilt/jdelvare-hwmon'

11 years agoMerge remote-tracking branch 'i2c-embedded/i2c-embedded/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:22:54 +0000 (10:22 +1000)]
Merge remote-tracking branch 'i2c-embedded/i2c-embedded/for-next'

11 years agoMerge branch 'quilt/i2c'
Stephen Rothwell [Fri, 14 Sep 2012 00:21:27 +0000 (10:21 +1000)]
Merge branch 'quilt/i2c'

11 years agoMerge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:19:51 +0000 (10:19 +1000)]
Merge remote-tracking branch 'hid/for-next'

Conflicts:
drivers/hid/usbhid/hid-quirks.c

11 years agoMerge remote-tracking branch 'pci/next'
Stephen Rothwell [Fri, 14 Sep 2012 00:16:31 +0000 (10:16 +1000)]
Merge remote-tracking branch 'pci/next'

11 years agoMerge remote-tracking branch 'vfs/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:12:09 +0000 (10:12 +1000)]
Merge remote-tracking branch 'vfs/for-next'

11 years agoMerge remote-tracking branch 'xfs/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:10:31 +0000 (10:10 +1000)]
Merge remote-tracking branch 'xfs/for-next'

11 years agoMerge remote-tracking branch 'ubifs/linux-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:09:00 +0000 (10:09 +1000)]
Merge remote-tracking branch 'ubifs/linux-next'

11 years agoMerge remote-tracking branch 'v9fs/for-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:07:33 +0000 (10:07 +1000)]
Merge remote-tracking branch 'v9fs/for-next'

11 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:05:57 +0000 (10:05 +1000)]
Merge remote-tracking branch 'ocfs2/linux-next'

11 years agoMerge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:04:23 +0000 (10:04 +1000)]
Merge remote-tracking branch 'nfsd/nfsd-next'

11 years agoMerge remote-tracking branch 'nfs/linux-next'
Stephen Rothwell [Fri, 14 Sep 2012 00:02:55 +0000 (10:02 +1000)]
Merge remote-tracking branch 'nfs/linux-next'

11 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Fri, 14 Sep 2012 00:01:29 +0000 (10:01 +1000)]
Merge remote-tracking branch 'logfs/master'

11 years agoMerge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Fri, 14 Sep 2012 00:00:04 +0000 (10:00 +1000)]
Merge remote-tracking branch 'gfs2/master'

11 years agoMerge remote-tracking branch 'fuse/for-next'
Stephen Rothwell [Thu, 13 Sep 2012 23:58:28 +0000 (09:58 +1000)]
Merge remote-tracking branch 'fuse/for-next'

11 years agoMerge remote-tracking branch 'ext4/dev'
Stephen Rothwell [Thu, 13 Sep 2012 23:56:57 +0000 (09:56 +1000)]
Merge remote-tracking branch 'ext4/dev'

11 years agoMerge remote-tracking branch 'ext3/for_next'
Stephen Rothwell [Thu, 13 Sep 2012 23:55:25 +0000 (09:55 +1000)]
Merge remote-tracking branch 'ext3/for_next'

11 years agoMerge remote-tracking branch 'cifs/for-next'
Stephen Rothwell [Thu, 13 Sep 2012 23:53:53 +0000 (09:53 +1000)]
Merge remote-tracking branch 'cifs/for-next'

11 years agoMerge remote-tracking branch 'xtensa/for_next'
Stephen Rothwell [Thu, 13 Sep 2012 23:52:24 +0000 (09:52 +1000)]
Merge remote-tracking branch 'xtensa/for_next'

11 years agoMerge remote-tracking branch 'unicore32/unicore32'
Stephen Rothwell [Thu, 13 Sep 2012 23:50:55 +0000 (09:50 +1000)]
Merge remote-tracking branch 'unicore32/unicore32'

11 years agoMerge remote-tracking branch 'sparc-next/master'
Stephen Rothwell [Thu, 13 Sep 2012 23:49:27 +0000 (09:49 +1000)]
Merge remote-tracking branch 'sparc-next/master'

11 years agoMerge remote-tracking branch 'sh/sh-latest'
Stephen Rothwell [Thu, 13 Sep 2012 23:47:58 +0000 (09:47 +1000)]
Merge remote-tracking branch 'sh/sh-latest'

11 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Thu, 13 Sep 2012 23:42:51 +0000 (09:42 +1000)]
Merge remote-tracking branch 's390/features'

11 years agoMerge remote-tracking branch 'galak/next'
Stephen Rothwell [Thu, 13 Sep 2012 23:40:23 +0000 (09:40 +1000)]
Merge remote-tracking branch 'galak/next'

11 years agoMerge remote-tracking branch 'mpc5xxx/next'
Stephen Rothwell [Thu, 13 Sep 2012 23:38:58 +0000 (09:38 +1000)]
Merge remote-tracking branch 'mpc5xxx/next'

11 years agoMerge remote-tracking branch 'powerpc/next'
Stephen Rothwell [Thu, 13 Sep 2012 23:36:25 +0000 (09:36 +1000)]
Merge remote-tracking branch 'powerpc/next'

11 years agoMerge remote-tracking branch 'openrisc/for-upstream'
Stephen Rothwell [Thu, 13 Sep 2012 23:34:58 +0000 (09:34 +1000)]
Merge remote-tracking branch 'openrisc/for-upstream'

11 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Thu, 13 Sep 2012 23:33:31 +0000 (09:33 +1000)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

11 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Thu, 13 Sep 2012 23:32:07 +0000 (09:32 +1000)]
Merge remote-tracking branch 'm68knommu/for-next'

11 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Thu, 13 Sep 2012 23:30:41 +0000 (09:30 +1000)]
Merge remote-tracking branch 'm68k/for-next'

11 years agoMerge remote-tracking branch 'ia64/next'
Stephen Rothwell [Thu, 13 Sep 2012 23:29:13 +0000 (09:29 +1000)]
Merge remote-tracking branch 'ia64/next'

11 years agoMerge remote-tracking branch 'cris/for-next'
Stephen Rothwell [Thu, 13 Sep 2012 23:27:42 +0000 (09:27 +1000)]
Merge remote-tracking branch 'cris/for-next'

11 years agoMerge remote-tracking branch 'arm64/upstream'
Stephen Rothwell [Thu, 13 Sep 2012 23:22:35 +0000 (09:22 +1000)]
Merge remote-tracking branch 'arm64/upstream'

11 years agoMerge remote-tracking branch 'arm-perf/for-next/perf'
Stephen Rothwell [Thu, 13 Sep 2012 23:21:05 +0000 (09:21 +1000)]
Merge remote-tracking branch 'arm-perf/for-next/perf'

Conflicts:
arch/arm/kernel/hw_breakpoint.c

11 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Thu, 13 Sep 2012 23:19:35 +0000 (09:19 +1000)]
Merge remote-tracking branch 'arm/for-next'

11 years agoMerge remote-tracking branch 'spi-current/spi/merge'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:37 +0000 (09:12 +1000)]
Merge remote-tracking branch 'spi-current/spi/merge'

11 years agoMerge remote-tracking branch 'devicetree-current/devicetree/merge'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:36 +0000 (09:12 +1000)]
Merge remote-tracking branch 'devicetree-current/devicetree/merge'

11 years agoMerge remote-tracking branch 'staging.current/staging-linus'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:25 +0000 (09:12 +1000)]
Merge remote-tracking branch 'staging.current/staging-linus'

11 years agoMerge remote-tracking branch 'usb.current/usb-linus'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:24 +0000 (09:12 +1000)]
Merge remote-tracking branch 'usb.current/usb-linus'

11 years agoMerge remote-tracking branch 'tty.current/tty-linus'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:23 +0000 (09:12 +1000)]
Merge remote-tracking branch 'tty.current/tty-linus'

11 years agoMerge remote-tracking branch 'driver-core.current/driver-core-linus'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:22 +0000 (09:12 +1000)]
Merge remote-tracking branch 'driver-core.current/driver-core-linus'

11 years agoMerge remote-tracking branch 'wireless/master'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:21 +0000 (09:12 +1000)]
Merge remote-tracking branch 'wireless/master'

11 years agoMerge remote-tracking branch 'sound-current/for-linus'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:19 +0000 (09:12 +1000)]
Merge remote-tracking branch 'sound-current/for-linus'

11 years agoMerge remote-tracking branch 'net/master'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:18 +0000 (09:12 +1000)]
Merge remote-tracking branch 'net/master'

11 years agoMerge remote-tracking branch 'm68k-current/for-linus'
Stephen Rothwell [Thu, 13 Sep 2012 23:12:16 +0000 (09:12 +1000)]
Merge remote-tracking branch 'm68k-current/for-linus'

11 years agohwmon: (coretemp) Use get_online_cpus to avoid races involving CPU hotplug
Silas Boyd-Wickizer [Thu, 13 Sep 2012 23:03:54 +0000 (09:03 +1000)]
hwmon: (coretemp) Use get_online_cpus to avoid races involving CPU hotplug

coretemp_init loops with for_each_online_cpu, adding platform_devices
and sysfs interfaces, then calls register_hotcpu_notifier.  There is a
race if a CPU is offlined or onlined after the loop, but before
register_hotcpu_notifier.  The race might result in the absence of a
platform_device+sysfs interface for an online CPU, or the presence of
a platform_device+sysfs interface for an offline CPU.  A similar race
occurs during coretemp_exit, after the module calls
unregister_hotcpu_notifier, but before it unregisters all devices, a
CPU might offline and a device for an offline CPU will exist for a
short while.

This fix surrounds for_each_online_cpu and register_hotcpu_notifier
with get_online_cpus+put_online_cpus; and surrounds
unregister_hotcpu_notifier and device unregistering with
get_online_cpus+put_online_cpus.

Build tested.

Signed-off-by: Silas Boyd-Wickizer <sbw@mit.edu>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
11 years agohwmon: (via-cputemp) Use get_online_cpus to avoid races involving CPU hotplug
Silas Boyd-Wickizer [Thu, 13 Sep 2012 23:03:53 +0000 (09:03 +1000)]
hwmon: (via-cputemp) Use get_online_cpus to avoid races involving CPU hotplug

via_cputemp_init loops with for_each_online_cpu, adding
platform_devices, then calls register_hotcpu_notifier.  If a CPU is
offlined between the loop and register_hotcpu_notifier, then later
onlined, via_cputemp_device_add will attempt to add platform devices
with the same ID.  A similar race occurs during via_cputemp_exit,
after the module calls unregister_hotcpu_notifier, a CPU might offline
and a device will exist for a CPU that is offline.

This fix surrounds for_each_online_cpu and register_hotcpu_notifier
with get_online_cpus+put_online_cpus; and surrounds
unregister_hotcpu_notifier and device unregistering with
get_online_cpus+put_online_cpus.

Build tested.

Signed-off-by: Silas Boyd-Wickizer <sbw@mit.edu>
Acked-by: Harald Welte <laforge@gnumonks.org>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
11 years agoi2c: Make I2C available on UML
Peter Huewe [Thu, 13 Sep 2012 23:03:52 +0000 (09:03 +1000)]
i2c: Make I2C available on UML

Remove the global dependency of the I2C subsystem on HAS_IOMEM and
move the dependency to the i2c/busses submenu, with an exception for
i2c-stub.

The generic I2C part does not need to have HAS_IOMEM set and thus now
becomes available in UML, so the I2C subsystem can now be used, e.g.
by the i2c-stub driver, for development of I2C device drivers.

[JD: Some adjustments.]

Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
11 years agoi2c: Convert struct i2c_msg initialization to C99 format
Shubhrajyoti D [Thu, 13 Sep 2012 23:03:52 +0000 (09:03 +1000)]
i2c: Convert struct i2c_msg initialization to C99 format

Convert the struct i2c_msg initialization to C99 format. This makes
maintaining and editing the code simpler. Also helps once other fields
like transferred are added in future.

Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
11 years agoi2c-smbus: Convert kzalloc to devm_kzalloc
Julia Lawall [Thu, 13 Sep 2012 23:03:51 +0000 (09:03 +1000)]
i2c-smbus: Convert kzalloc to devm_kzalloc

Converting kzalloc to devm_kzalloc simplifies the code and ensures that the
result, alert, is freed after the irq allocated by the subsequent
devm_request_irq.  This in turn ensures that when an interrupt can be
triggered, the alert structure is still available.

The problem of a free after a devm_request_irq was found using the
following semantic match (http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
expression e1,e2,x,a,b,c,d;
identifier free;
position p1,p2;
@@

  devm_request_irq@p1(e1,e2,...,x)
  ... when any
      when != e2 = a
      when != x = b
  if (...) {
    ... when != e2 = c
        when != x = d
    free@p2(...,x,...);
    ...
    return ...;
  }
// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
11 years agoi2c-i801: Support SMBus multiplexing on Asus Z8 series
Jean Delvare [Thu, 13 Sep 2012 23:03:51 +0000 (09:03 +1000)]
i2c-i801: Support SMBus multiplexing on Asus Z8 series

Add support for SMBus multiplexing on Asus Z8 motherboard series. On
these boards, the memory slots are behind a GPIO-controlled I2C
multiplexer. Models with 6 or 12 memory slots have 2 segments behind
the multiplexer, while models with 18 memory slots have 3 such
segments.

On these boards, only the memory slots are behind the multiplexer,
so it is possible to keep the autodetection mechanism.

The code is generic enough so it could work on other boards as long as
the multiplexer is controlled by GPIO pins. For other forms of
multiplexing (for example using an I2C device) additional code will be
needed.

Thanks to Asus for providing a board to develop and test this feature,
as well as all the technical information required.

At the moment, the GPIO driver must be loaded before the i2c-i801
driver, but I hope to solve this soon, using deferred probing on
the i2c-mux-gpio side.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
11 years agoi2c-mux: Add support for device auto-detection
Jean Delvare [Thu, 13 Sep 2012 23:03:51 +0000 (09:03 +1000)]
i2c-mux: Add support for device auto-detection

Let I2C bus segments behind multiplexers have a class. This allows for
device auto-detection on these segments. As long as parent segments
don't share the same class, it should be fine.

I implemented support in drivers i2c-mux-gpio and i2c-mux-pca954x. I
left i2c-mux-pca9541 and i2c-mux-pinctrl alone for the moment as I
don't know if this feature makes sense for the use cases of these
drivers.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Peter Korsgaard <peter.korsgaard@barco.com>
Cc: David Daney <david.daney@cavium.com>
Cc: Michael Lawnick <ml.lawnick@gmx.de>
Cc: Rodolfo Giometti <giometti@linux.it>
11 years agoMerge branch 'next/p3/trace' into mips-for-linux-next
Ralf Baechle [Thu, 13 Sep 2012 22:23:33 +0000 (00:23 +0200)]
Merge branch 'next/p3/trace' into mips-for-linux-next

11 years agoMerge branch 'next/p1/for-linus' into mips-for-linux-next
Ralf Baechle [Thu, 13 Sep 2012 22:23:28 +0000 (00:23 +0200)]
Merge branch 'next/p1/for-linus' into mips-for-linux-next

11 years agoMerge branch 'rixi-3.7' of git://git.linux-mips.org/pub/scm/sjhill/linux-sjhill into...
Ralf Baechle [Thu, 13 Sep 2012 22:23:16 +0000 (00:23 +0200)]
Merge branch 'rixi-3.7' of git://git.linux-mips.org/pub/scm/sjhill/linux-sjhill into mips-for-linux-next

11 years agoMIPS: Replace 'kernel_uses_smartmips_rixi' with 'cpu_has_rixi'.
Steven J. Hill [Thu, 13 Sep 2012 21:51:46 +0000 (16:51 -0500)]
MIPS: Replace 'kernel_uses_smartmips_rixi' with 'cpu_has_rixi'.

Remove usage of the 'kernel_uses_smartmips_rixi' macro from all files
and use new 'cpu_has_rixi' instead.

Signed-off-by: Steven J. Hill <sjhill@mips.com>
Acked-by: David Daney <david.daney@cavium.com>
11 years agoMIPS: Add base architecture support for RI and XI.
Steven J. Hill [Thu, 13 Sep 2012 21:47:58 +0000 (16:47 -0500)]
MIPS: Add base architecture support for RI and XI.

Originally both Read Inhibit (RI) and Execute Inhibit (XI) were
supported by the TLB only for a SmartMIPS core. The MIPSr3(TM)
Architecture now defines an optional feature to implement these
TLB bits separately. Support for one or both features can be
checked by looking at the Config3.RXI bit.

Signed-off-by: Steven J. Hill <sjhill@mips.com>
Acked-by: David Daney <david.daney@cavium.com>
11 years agopktgen: fix crash with vlan and packet size less than 46
Nishank Trivedi [Wed, 12 Sep 2012 13:32:49 +0000 (13:32 +0000)]
pktgen: fix crash with vlan and packet size less than 46

If vlan option is being specified in the pktgen and packet size
being requested is less than 46 bytes, despite being illogical
request, pktgen should not crash the kernel.

BUG: unable to handle kernel paging request at ffff88021fb82000
Process kpktgend_0 (pid: 1184, threadinfo ffff880215f1a000, task ffff880218544530)
Call Trace:
[<ffffffffa0637cd2>] ? pktgen_finalize_skb+0x222/0x300 [pktgen]
[<ffffffff814f0084>] ? build_skb+0x34/0x1c0
[<ffffffffa0639b11>] pktgen_thread_worker+0x5d1/0x1790 [pktgen]
[<ffffffffa03ffb10>] ? igb_xmit_frame_ring+0xa30/0xa30 [igb]
[<ffffffff8107ba20>] ? wake_up_bit+0x40/0x40
[<ffffffff8107ba20>] ? wake_up_bit+0x40/0x40
[<ffffffffa0639540>] ? spin+0x240/0x240 [pktgen]
[<ffffffff8107b4e3>] kthread+0x93/0xa0
[<ffffffff81615de4>] kernel_thread_helper+0x4/0x10
[<ffffffff8107b450>] ? flush_kthread_worker+0x80/0x80
[<ffffffff81615de0>] ? gs_change+0x13/0x13

The root cause of why pktgen is not able to handle this case is due
to comparison of signed (datalen) and unsigned data (sizeof), which
eventually passes a huge number to skb_put().

Signed-off-by: Nishank Trivedi <nistrive@cisco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agodrivers/isdn/gigaset/common.c: Remove useless kfree
Peter Senna Tschudin [Wed, 12 Sep 2012 05:06:47 +0000 (05:06 +0000)]
drivers/isdn/gigaset/common.c: Remove useless kfree

Remove useless kfree() and clean up code related to the removal.

The semantic patch that finds this problem is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@r exists@
position p1,p2;
expression x;
@@

if (x@p1 == NULL) { ... kfree@p2(x); ... return ...; }

@unchanged exists@
position r.p1,r.p2;
expression e <= r.x,x,e1;
iterator I;
statement S;
@@

if (x@p1 == NULL) { ... when != I(x,...) S
                        when != e = e1
                        when != e += e1
                        when != e -= e1
                        when != ++e
                        when != --e
                        when != e++
                        when != e--
                        when != &e
   kfree@p2(x); ... return ...; }

@ok depends on unchanged exists@
position any r.p1;
position r.p2;
expression x;
@@

... when != true x@p1 == NULL
kfree@p2(x);

@depends on !ok && unchanged@
position r.p2;
expression x;
@@

*kfree@p2(x);
// </smpl>

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Acked-by: Tilman Schmidt <tilman@imap.cc>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agoMIPS: ptrace: Switch syscall reporting to tracehook_report_syscall_entry().
Ralf Baechle [Fri, 31 Aug 2012 12:42:18 +0000 (14:42 +0200)]
MIPS: ptrace: Switch syscall reporting to tracehook_report_syscall_entry().

Set ret just so __must_check is satisfied but don't use the variable for
anything yet.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: Move audit_arch() helper function to __syscall_get_arch().
Ralf Baechle [Fri, 31 Aug 2012 12:42:15 +0000 (14:42 +0200)]
MIPS: Move audit_arch() helper function to __syscall_get_arch().

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: Enable HAVE_ARCH_TRACEHOOK.
Ralf Baechle [Fri, 17 Aug 2012 08:22:04 +0000 (10:22 +0200)]
MIPS: Enable HAVE_ARCH_TRACEHOOK.

This enables /proc/<pid>/syscall and the ptrace PTRACE_GETREGSET and
PTRACE_SETREGSET operations.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: ptrace.h: Add commit to #endif of long ifdef block.
Ralf Baechle [Thu, 2 Aug 2012 13:41:09 +0000 (15:41 +0200)]
MIPS: ptrace.h: Add commit to #endif of long ifdef block.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: Switch ELF core dumper to use regsets.
Ralf Baechle [Thu, 2 Aug 2012 13:18:32 +0000 (15:18 +0200)]
MIPS: Switch ELF core dumper to use regsets.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: Implement task_user_regset_view.
Ralf Baechle [Thu, 2 Aug 2012 12:44:11 +0000 (14:44 +0200)]
MIPS: Implement task_user_regset_view.

There are no users yet of task_user_regset_view. yet; users will be
implemented rsp activated in subsequent commits.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: ptrace: Use tracehook helpers.
Ralf Baechle [Tue, 17 Jul 2012 17:43:58 +0000 (19:43 +0200)]
MIPS: ptrace: Use tracehook helpers.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: O32 / 32-bit: Always copy 4 stack arguments.
Ralf Baechle [Sat, 14 Jul 2012 07:22:05 +0000 (09:22 +0200)]
MIPS: O32 / 32-bit: Always copy 4 stack arguments.

This gets us rid of the hard to maintain table of the number of syscall
arguments and paves the way for further restructuring of the syscall
code.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: Provide arch_syscall_addr.
Ralf Baechle [Fri, 13 Jul 2012 21:38:17 +0000 (23:38 +0200)]
MIPS: Provide arch_syscall_addr.

The generic version is wrong for MIPS.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: N32: Delete unused re-definition of SIGILL.
Ralf Baechle [Fri, 13 Jul 2012 19:16:37 +0000 (21:16 +0200)]
MIPS: N32: Delete unused re-definition of SIGILL.

Originally and unnecessarilly added in
dd8c35f40cda31dc8c027a62b73301a310b8b529 (lmo) [N32 ...]

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: N32: Kill definition PT_TRACESYS for good.
Ralf Baechle [Fri, 13 Jul 2012 19:01:12 +0000 (21:01 +0200)]
MIPS: N32: Kill definition PT_TRACESYS for good.

Originally killed in 75ddbae069832b2ef15fb9678347ce7f5fbbbf95 (lmo) [Merge
with Linux 2.5.3.] then unnecessarily added back in
dd8c35f40cda31dc8c027a62b73301a310b8b529 (lmo) [N32 ...]  This predates
Linus' git history ...

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: 32-bit: Remove unused gas macros fifty and mille.
Ralf Baechle [Fri, 13 Jul 2012 11:36:40 +0000 (13:36 +0200)]
MIPS: 32-bit: Remove unused gas macros fifty and mille.

These are a leftover of the IRIX compat code which was removed in
2957c9e61ee9c37e7ebf2c8acab03e073fe942fd (kernel.org) rsp.
b934da913f236bca00c41d9e386e980586000461 (lmo) [[MIPS] IRIX: Goodbye
and thanks for all the fish].

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: Enable entries for SIGSYS in struct siginfo.
Ralf Baechle [Thu, 12 Jul 2012 15:13:15 +0000 (17:13 +0200)]
MIPS: Enable entries for SIGSYS in struct siginfo.

This is necessary because MIPS doesn't use HAVE_ARCH_SIGINFO_T for
historical reasons.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: 64-bit: Mark native syscall table as data object.
Ralf Baechle [Thu, 12 Jul 2012 12:06:46 +0000 (14:06 +0200)]
MIPS: 64-bit: Mark native syscall table as data object.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: compat: Mark N32 syscall table as data object.
Ralf Baechle [Thu, 12 Jul 2012 12:02:41 +0000 (14:02 +0200)]
MIPS: compat: Mark N32 syscall table as data object.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoMIPS: compat: Export O32 syscall table and rename to avoid duplicate symbol.
Ralf Baechle [Thu, 12 Jul 2012 12:01:31 +0000 (14:01 +0200)]
MIPS: compat: Export O32 syscall table and rename to avoid duplicate symbol.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
11 years agoipv6: replace write lock with read lock when get route info
Li RongQing [Tue, 11 Sep 2012 21:59:01 +0000 (21:59 +0000)]
ipv6: replace write lock with read lock when get route info

geting route info does not write rt->rt6i_table, so replace
write lock with read lock

Suggested-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Li RongQing <roy.qing.li@gmail.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agoipv6: route templates can be const
Eric Dumazet [Tue, 11 Sep 2012 21:47:51 +0000 (21:47 +0000)]
ipv6: route templates can be const

We kmemdup() templates, so they can be const.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
11 years agoMerge branch 'ralf-3.7' of git://git.linux-mips.org/pub/scm/sjhill/linux-sjhill into...
Ralf Baechle [Thu, 13 Sep 2012 20:46:47 +0000 (22:46 +0200)]
Merge branch 'ralf-3.7' of git://git.linux-mips.org/pub/scm/sjhill/linux-sjhill into mips-for-linux-next