]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
11 years agoMerge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Fri, 14 Sep 2012 03:27:49 +0000 (13:27 +1000)]
Merge remote-tracking branch 'mmc/mmc-next'

11 years agoMerge branch 'quilt/device-mapper'
Stephen Rothwell [Fri, 14 Sep 2012 03:26:02 +0000 (13:26 +1000)]
Merge branch 'quilt/device-mapper'

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

11 years agoMerge commit 'refs/next/20120913/cgroup'
Stephen Rothwell [Fri, 14 Sep 2012 03:14:32 +0000 (13:14 +1000)]
Merge commit 'refs/next/20120913/cgroup'

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

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

11 years agoMerge branch 'quilt/rr'
Stephen Rothwell [Fri, 14 Sep 2012 01:31:48 +0000 (11:31 +1000)]
Merge branch 'quilt/rr'

Conflicts:
arch/alpha/Kconfig
arch/mips/kernel/module.c
arch/s390/Kconfig
arch/xtensa/Kconfig

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 agoA little thin discard code refactoring in preparation for the next
Mike Snitzer [Thu, 13 Sep 2012 23:03:56 +0000 (09:03 +1000)]
A little thin discard code refactoring in preparation for the next
patch. Use bools instead of unsigned for features.

No functional changes.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
11 years agoWhen there are no paths and multipath receives an ioctl, it waits until
Mike Snitzer [Thu, 13 Sep 2012 23:03:56 +0000 (09:03 +1000)]
When there are no paths and multipath receives an ioctl, it waits until
a path becomes available.  This behaviour is incorrect if the
"queue_if_no_path" setting was not specified, as then the ioctl should
be rejected immediately, which this patch now does.

commit 35991652b ("dm mpath: allow ioctls to trigger pg init") should
have checked if queue_if_no_path was configured before queueing IO.

Checking for the queue_if_no_path feature, like is done in map_io(),
allows the following table load to work without blocking in the
multipath_ioctl retry loop:

  echo "0 1024 multipath 0 0 0 0" | dmsetup create mpath_nodevs

Without this fix the multipath_ioctl will block with the following stack
trace:

  blkid           D 0000000000000002     0 23936      1 0x00000000
   ffff8802b89e5cd8 0000000000000082 ffff8802b89e5fd8 0000000000012440
   ffff8802b89e4010 0000000000012440 0000000000012440 0000000000012440
   ffff8802b89e5fd8 0000000000012440 ffff88030c2aab30 ffff880325794040
  Call Trace:
   [<ffffffff814ce099>] schedule+0x29/0x70
   [<ffffffff814cc312>] schedule_timeout+0x182/0x2e0
   [<ffffffff8104dee0>] ? lock_timer_base+0x70/0x70
   [<ffffffff814cc48e>] schedule_timeout_uninterruptible+0x1e/0x20
   [<ffffffff8104f840>] msleep+0x20/0x30
   [<ffffffffa0000839>] multipath_ioctl+0x109/0x170 [dm_multipath]
   [<ffffffffa06bfb9c>] dm_blk_ioctl+0xbc/0xd0 [dm_mod]
   [<ffffffff8122a408>] __blkdev_driver_ioctl+0x28/0x30
   [<ffffffff8122a79e>] blkdev_ioctl+0xce/0x730
   [<ffffffff811970ac>] block_ioctl+0x3c/0x40
   [<ffffffff8117321c>] do_vfs_ioctl+0x8c/0x340
   [<ffffffff81166293>] ? sys_newfstat+0x33/0x40
   [<ffffffff81173571>] sys_ioctl+0xa1/0xb0
   [<ffffffff814d70a9>] system_call_fastpath+0x16/0x1b

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Acked-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
11 years agoThe mpio dereference should be moved below the BUG_ON NULL test
Wei Yongjun [Thu, 13 Sep 2012 23:03:56 +0000 (09:03 +1000)]
The mpio dereference should be moved below the BUG_ON NULL test
in multipath_end_io().

spatch with a semantic match is used to found this.
(http://coccinelle.lip6.fr/)

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
11 years agoThis patch fixes sector_t overflow checking in dm-verity.
Mikulas Patocka [Thu, 13 Sep 2012 23:03:55 +0000 (09:03 +1000)]
This patch fixes sector_t overflow checking in dm-verity.

Without this patch, the code checks for overflow only if sector_t is
smaller than long long, not if sector_t and long long have the same size.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
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>