]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
12 years agoMerge remote-tracking branch 'dt-rh/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 03:04:13 +0000 (13:04 +1000)]
Merge remote-tracking branch 'dt-rh/for-next'

12 years agoMerge remote-tracking branch 'edac-amd/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 03:04:06 +0000 (13:04 +1000)]
Merge remote-tracking branch 'edac-amd/for-next'

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

12 years agoMerge remote-tracking branch 'edac/linux_next'
Stephen Rothwell [Wed, 19 Sep 2012 03:03:51 +0000 (13:03 +1000)]
Merge remote-tracking branch 'edac/linux_next'

12 years agoMerge remote-tracking branch 'fsnotify/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 03:02:15 +0000 (13:02 +1000)]
Merge remote-tracking branch 'fsnotify/for-next'

Conflicts:
kernel/audit_tree.c

12 years agoMerge remote-tracking branch 'pm/linux-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:54:59 +0000 (12:54 +1000)]
Merge remote-tracking branch 'pm/linux-next'

12 years agoMerge remote-tracking branch 'trivial/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:48:44 +0000 (12:48 +1000)]
Merge remote-tracking branch 'trivial/for-next'

Conflicts:
drivers/scsi/ipr.c
drivers/video/backlight/88pm860x_bl.c

12 years agoMerge remote-tracking branch 'osd/linux-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:47:03 +0000 (12:47 +1000)]
Merge remote-tracking branch 'osd/linux-next'

12 years agoMerge remote-tracking branch 'iommu/next'
Stephen Rothwell [Wed, 19 Sep 2012 02:45:26 +0000 (12:45 +1000)]
Merge remote-tracking branch 'iommu/next'

12 years agoMerge remote-tracking branch 'watchdog/master'
Stephen Rothwell [Wed, 19 Sep 2012 02:43:45 +0000 (12:43 +1000)]
Merge remote-tracking branch 'watchdog/master'

12 years agoMerge remote-tracking branch 'selinux/master'
Stephen Rothwell [Wed, 19 Sep 2012 02:43:39 +0000 (12:43 +1000)]
Merge remote-tracking branch 'selinux/master'

12 years agoMerge remote-tracking branch 'security/next'
Stephen Rothwell [Wed, 19 Sep 2012 02:39:15 +0000 (12:39 +1000)]
Merge remote-tracking branch 'security/next'

12 years agoMerge remote-tracking branch 'regulator/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:37:38 +0000 (12:37 +1000)]
Merge remote-tracking branch 'regulator/for-next'

Conflicts:
Documentation/devicetree/bindings/regulator/tps6586x.txt

12 years agoMerge remote-tracking branch 'omap_dss2/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:36:03 +0000 (12:36 +1000)]
Merge remote-tracking branch 'omap_dss2/for-next'

12 years agoMerge remote-tracking branch 'fbdev/fbdev-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:34:28 +0000 (12:34 +1000)]
Merge remote-tracking branch 'fbdev/fbdev-next'

12 years agoMerge remote-tracking branch 'battery/master'
Stephen Rothwell [Wed, 19 Sep 2012 02:32:50 +0000 (12:32 +1000)]
Merge remote-tracking branch 'battery/master'

12 years agoMerge remote-tracking branch 'mfd/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:25:47 +0000 (12:25 +1000)]
Merge remote-tracking branch 'mfd/for-next'

Conflicts:
Documentation/devicetree/bindings/regulator/tps6586x.txt
drivers/mfd/88pm860x-core.c
drivers/mfd/tc3589x.c
drivers/regulator/anatop-regulator.c

12 years agoMerge remote-tracking branch 'md/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:24:09 +0000 (12:24 +1000)]
Merge remote-tracking branch 'md/for-next'

12 years agoMerge remote-tracking branch 'slab/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:22:34 +0000 (12:22 +1000)]
Merge remote-tracking branch 'slab/for-next'

12 years agoMerge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:20:55 +0000 (12:20 +1000)]
Merge remote-tracking branch 'kgdb/kgdb-next'

12 years agoMerge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:19:18 +0000 (12:19 +1000)]
Merge remote-tracking branch 'mmc/mmc-next'

12 years agoMerge branch 'quilt/device-mapper'
Stephen Rothwell [Wed, 19 Sep 2012 02:17:36 +0000 (12:17 +1000)]
Merge branch 'quilt/device-mapper'

12 years agoMerge remote-tracking branch 'block/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:11:08 +0000 (12:11 +1000)]
Merge remote-tracking branch 'block/for-next'

12 years agoMerge remote-tracking branch 'cgroup/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:06:54 +0000 (12:06 +1000)]
Merge remote-tracking branch 'cgroup/for-next'

12 years agoMerge remote-tracking branch 'input-mt/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 02:05:01 +0000 (12:05 +1000)]
Merge remote-tracking branch 'input-mt/for-next'

12 years agoMerge remote-tracking branch 'input/next'
Stephen Rothwell [Wed, 19 Sep 2012 02:03:22 +0000 (12:03 +1000)]
Merge remote-tracking branch 'input/next'

12 years agoMerge branch 'quilt/rr'
Stephen Rothwell [Wed, 19 Sep 2012 01:57:26 +0000 (11:57 +1000)]
Merge branch 'quilt/rr'

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

12 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:55:43 +0000 (11:55 +1000)]
Merge remote-tracking branch 'sound-asoc/for-next'

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

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

12 years agoMerge remote-tracking branch 'drm/drm-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:52:08 +0000 (11:52 +1000)]
Merge remote-tracking branch 'drm/drm-next'

Conflicts:
drivers/gpu/drm/i915/i915_dma.c

12 years agoMerge remote-tracking branch 'crypto/master'
Stephen Rothwell [Wed, 19 Sep 2012 01:50:25 +0000 (11:50 +1000)]
Merge remote-tracking branch 'crypto/master'

Conflicts:
crypto/Kconfig

12 years agoMerge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Wed, 19 Sep 2012 01:48:45 +0000 (11:48 +1000)]
Merge remote-tracking branch 'l2-mtd/master'

12 years agoMerge remote-tracking branch 'mtd/master'
Stephen Rothwell [Wed, 19 Sep 2012 01:47:13 +0000 (11:47 +1000)]
Merge remote-tracking branch 'mtd/master'

12 years agoMerge commit 'refs/next/20120918/bluetooth'
Stephen Rothwell [Wed, 19 Sep 2012 01:44:46 +0000 (11:44 +1000)]
Merge commit 'refs/next/20120918/bluetooth'

12 years agoMerge remote-tracking branch 'net-next/master'
Stephen Rothwell [Wed, 19 Sep 2012 01:29:00 +0000 (11:29 +1000)]
Merge remote-tracking branch 'net-next/master'

Conflicts:
net/ipv4/fib_frontend.c
net/ipv4/route.c
net/socket.c

12 years agoMerge remote-tracking branch 'slave-dma/next'
Stephen Rothwell [Wed, 19 Sep 2012 01:17:33 +0000 (11:17 +1000)]
Merge remote-tracking branch 'slave-dma/next'

12 years agoMerge remote-tracking branch 'target-updates/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:15:48 +0000 (11:15 +1000)]
Merge remote-tracking branch 'target-updates/for-next'

12 years agoMerge remote-tracking branch 'scsi/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:13:47 +0000 (11:13 +1000)]
Merge remote-tracking branch 'scsi/for-next'

Conflicts:
drivers/scsi/ipr.c
drivers/scsi/qla2xxx/qla_nx.c

12 years agoMerge remote-tracking branch 'dlm/next'
Stephen Rothwell [Wed, 19 Sep 2012 01:12:11 +0000 (11:12 +1000)]
Merge remote-tracking branch 'dlm/next'

12 years agoMerge remote-tracking branch 'ubi/linux-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:10:35 +0000 (11:10 +1000)]
Merge remote-tracking branch 'ubi/linux-next'

12 years agoMerge remote-tracking branch 'thermal/next'
Stephen Rothwell [Wed, 19 Sep 2012 01:09:02 +0000 (11:09 +1000)]
Merge remote-tracking branch 'thermal/next'

12 years agoMerge remote-tracking branch 'cpuidle/cpuidle-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:08:55 +0000 (11:08 +1000)]
Merge remote-tracking branch 'cpuidle/cpuidle-next'

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

12 years agoMerge remote-tracking branch 'pstore/master'
Stephen Rothwell [Wed, 19 Sep 2012 01:07:14 +0000 (11:07 +1000)]
Merge remote-tracking branch 'pstore/master'

12 years agoMerge remote-tracking branch 'infiniband/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:05:41 +0000 (11:05 +1000)]
Merge remote-tracking branch 'infiniband/for-next'

12 years agoMerge remote-tracking branch 'libata/NEXT'
Stephen Rothwell [Wed, 19 Sep 2012 01:04:01 +0000 (11:04 +1000)]
Merge remote-tracking branch 'libata/NEXT'

12 years agoMerge remote-tracking branch 'kconfig/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:02:29 +0000 (11:02 +1000)]
Merge remote-tracking branch 'kconfig/for-next'

12 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 01:00:46 +0000 (11:00 +1000)]
Merge remote-tracking branch 'kbuild/for-next'

12 years agoMerge remote-tracking branch 'v4l-dvb/master'
Stephen Rothwell [Wed, 19 Sep 2012 00:58:44 +0000 (10:58 +1000)]
Merge remote-tracking branch 'v4l-dvb/master'

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

12 years agoMerge remote-tracking branch 'hwmon-staging/hwmon-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:57:15 +0000 (10:57 +1000)]
Merge remote-tracking branch 'hwmon-staging/hwmon-next'

12 years agoMerge branch 'quilt/jdelvare-hwmon'
Stephen Rothwell [Wed, 19 Sep 2012 00:55:50 +0000 (10:55 +1000)]
Merge branch 'quilt/jdelvare-hwmon'

12 years agoMerge remote-tracking branch 'i2c-embedded/i2c-embedded/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:54:23 +0000 (10:54 +1000)]
Merge remote-tracking branch 'i2c-embedded/i2c-embedded/for-next'

12 years agoMerge branch 'quilt/i2c'
Stephen Rothwell [Wed, 19 Sep 2012 00:52:56 +0000 (10:52 +1000)]
Merge branch 'quilt/i2c'

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

12 years agoMerge remote-tracking branch 'mpc5xxx/next'
Stephen Rothwell [Wed, 19 Sep 2012 00:50:03 +0000 (10:50 +1000)]
Merge remote-tracking branch 'mpc5xxx/next'

12 years agoMerge remote-tracking branch 'powerpc/next'
Stephen Rothwell [Wed, 19 Sep 2012 00:47:33 +0000 (10:47 +1000)]
Merge remote-tracking branch 'powerpc/next'

12 years agoMerge remote-tracking branch 'pci/next'
Stephen Rothwell [Wed, 19 Sep 2012 00:44:17 +0000 (10:44 +1000)]
Merge remote-tracking branch 'pci/next'

12 years agoMerge remote-tracking branch 'vfs/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:40:07 +0000 (10:40 +1000)]
Merge remote-tracking branch 'vfs/for-next'

12 years agoMerge remote-tracking branch 'xfs/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:38:33 +0000 (10:38 +1000)]
Merge remote-tracking branch 'xfs/for-next'

12 years agoMerge remote-tracking branch 'ubifs/linux-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:37:08 +0000 (10:37 +1000)]
Merge remote-tracking branch 'ubifs/linux-next'

12 years agoMerge remote-tracking branch 'v9fs/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:35:40 +0000 (10:35 +1000)]
Merge remote-tracking branch 'v9fs/for-next'

12 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:34:07 +0000 (10:34 +1000)]
Merge remote-tracking branch 'ocfs2/linux-next'

12 years agoMerge remote-tracking branch 'nfsd/nfsd-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:32:40 +0000 (10:32 +1000)]
Merge remote-tracking branch 'nfsd/nfsd-next'

12 years agoMerge remote-tracking branch 'nfs/linux-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:31:15 +0000 (10:31 +1000)]
Merge remote-tracking branch 'nfs/linux-next'

12 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Wed, 19 Sep 2012 00:29:49 +0000 (10:29 +1000)]
Merge remote-tracking branch 'logfs/master'

12 years agoMerge remote-tracking branch 'jfs/jfs-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:28:26 +0000 (10:28 +1000)]
Merge remote-tracking branch 'jfs/jfs-next'

12 years agoMerge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Wed, 19 Sep 2012 00:27:02 +0000 (10:27 +1000)]
Merge remote-tracking branch 'gfs2/master'

Conflicts:
fs/gfs2/rgrp.c

12 years agoMerge remote-tracking branch 'fuse/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:25:25 +0000 (10:25 +1000)]
Merge remote-tracking branch 'fuse/for-next'

12 years agoMerge remote-tracking branch 'ext4/dev'
Stephen Rothwell [Wed, 19 Sep 2012 00:23:57 +0000 (10:23 +1000)]
Merge remote-tracking branch 'ext4/dev'

12 years agoMerge remote-tracking branch 'ext3/for_next'
Stephen Rothwell [Wed, 19 Sep 2012 00:22:31 +0000 (10:22 +1000)]
Merge remote-tracking branch 'ext3/for_next'

12 years agoMerge remote-tracking branch 'cifs/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:20:58 +0000 (10:20 +1000)]
Merge remote-tracking branch 'cifs/for-next'

12 years agoMerge remote-tracking branch 'xtensa/for_next'
Stephen Rothwell [Wed, 19 Sep 2012 00:19:35 +0000 (10:19 +1000)]
Merge remote-tracking branch 'xtensa/for_next'

12 years agoMerge remote-tracking branch 'unicore32/unicore32'
Stephen Rothwell [Wed, 19 Sep 2012 00:18:12 +0000 (10:18 +1000)]
Merge remote-tracking branch 'unicore32/unicore32'

12 years agoMerge remote-tracking branch 'sparc-next/master'
Stephen Rothwell [Wed, 19 Sep 2012 00:16:46 +0000 (10:16 +1000)]
Merge remote-tracking branch 'sparc-next/master'

12 years agoMerge remote-tracking branch 'sh/sh-latest'
Stephen Rothwell [Wed, 19 Sep 2012 00:15:21 +0000 (10:15 +1000)]
Merge remote-tracking branch 'sh/sh-latest'

12 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Wed, 19 Sep 2012 00:10:16 +0000 (10:10 +1000)]
Merge remote-tracking branch 's390/features'

12 years agoMerge remote-tracking branch 'openrisc/for-upstream'
Stephen Rothwell [Wed, 19 Sep 2012 00:08:52 +0000 (10:08 +1000)]
Merge remote-tracking branch 'openrisc/for-upstream'

12 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:07:27 +0000 (10:07 +1000)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

12 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:06:03 +0000 (10:06 +1000)]
Merge remote-tracking branch 'm68knommu/for-next'

12 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:04:40 +0000 (10:04 +1000)]
Merge remote-tracking branch 'm68k/for-next'

12 years agoMerge remote-tracking branch 'ia64/next'
Stephen Rothwell [Wed, 19 Sep 2012 00:03:18 +0000 (10:03 +1000)]
Merge remote-tracking branch 'ia64/next'

12 years agoMerge remote-tracking branch 'cris/for-next'
Stephen Rothwell [Wed, 19 Sep 2012 00:01:53 +0000 (10:01 +1000)]
Merge remote-tracking branch 'cris/for-next'

12 years agoMerge remote-tracking branch 'arm64/upstream'
Stephen Rothwell [Tue, 18 Sep 2012 23:56:47 +0000 (09:56 +1000)]
Merge remote-tracking branch 'arm64/upstream'

12 years agoMerge remote-tracking branch 'arm-perf/for-next/perf'
Stephen Rothwell [Tue, 18 Sep 2012 23:55:18 +0000 (09:55 +1000)]
Merge remote-tracking branch 'arm-perf/for-next/perf'

Conflicts:
arch/arm/kernel/hw_breakpoint.c

12 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Tue, 18 Sep 2012 23:53:52 +0000 (09:53 +1000)]
Merge remote-tracking branch 'arm/for-next'

12 years agoMerge remote-tracking branch 'spi-current/spi/merge'
Stephen Rothwell [Tue, 18 Sep 2012 23:50:20 +0000 (09:50 +1000)]
Merge remote-tracking branch 'spi-current/spi/merge'

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

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

12 years agoMerge remote-tracking branch 'm68k-current/for-linus'
Stephen Rothwell [Tue, 18 Sep 2012 23:50:04 +0000 (09:50 +1000)]
Merge remote-tracking branch 'm68k-current/for-linus'

12 years agoMerge remote-tracking branch 'arm-current/fixes'
Stephen Rothwell [Tue, 18 Sep 2012 23:50:03 +0000 (09:50 +1000)]
Merge remote-tracking branch 'arm-current/fixes'

12 years agoUse the recently-added bio front_pad field to allocate struct dm_target_io.
Mikulas Patocka [Tue, 18 Sep 2012 23:38:21 +0000 (09:38 +1000)]
Use the recently-added bio front_pad field to allocate struct dm_target_io.

Prior to this patch, dm_target_io was allocated from a mempool. For each
dm_target_io, there is exactly one bio allocated from a bioset.

This patch merges these two allocations into one allocation: we create a
bioset with front_pad equal to the size of dm_target_io so that every
bio allocated from the bioset has sizeof(struct dm_target_io) bytes
before it. We allocate a bio and use the bytes before the bio as
dm_target_io.

This idea was introduced by Kent Overstreet.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Cc: Kent Overstreet <koverstreet@google.com>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: tj@kernel.org
Cc: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoUse the ACCESS_ONCE macro in dm-bufio and dm-verity where a variable
Mikulas Patocka [Tue, 18 Sep 2012 23:38:21 +0000 (09:38 +1000)]
Use the ACCESS_ONCE macro in dm-bufio and dm-verity where a variable
can be modified asynchronously (through sysfs) and we want to prevent
compiler optimizations that assume that the variable hasn't changed.
(See Documentation/atomic_ops.txt.)

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoUse list_move() instead of list_del() + list_add().
Wei Yongjun [Tue, 18 Sep 2012 23:38:21 +0000 (09:38 +1000)]
Use list_move() instead of list_del() + list_add().

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

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoThe discard limits that get established for a thin-pool or thin device
Mike Snitzer [Tue, 18 Sep 2012 23:38:20 +0000 (09:38 +1000)]
The discard limits that get established for a thin-pool or thin device
may be incompatible with the pool's data device.  Avoid this by checking
the discard limits of the pool's data device.  If an incompatibility is
found then the pool's 'discard passdown' feature is disabled.

Change thin_io_hints to ensure that a thin device always uses the same
queue limits as its pool device.

Introduce requested_pf to track whether or not the table line originally
contained the no_discard_passdown flag and use this directly for table
output.  We prepare the correct setting for discard_passdown directly in
bind_control_target (called from pool_io_hints) and store it in
adjusted_pf rather than waiting until we have access to pool->pf in
pool_preresume.

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>
12 years agoA little thin discard code refactoring in preparation for the next
Mike Snitzer [Tue, 18 Sep 2012 23:38:20 +0000 (09:38 +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>
12 years agoThe dm thin pool target claims to support the zeroing of discarded
Mike Snitzer [Tue, 18 Sep 2012 23:38:20 +0000 (09:38 +1000)]
The dm thin pool target claims to support the zeroing of discarded
data areas.  This turns out to be incorrect when processing discards
that do not exactly cover a complete number of blocks, so the target
must always set discard_zeroes_data_unsupported.

The thin pool target will zero blocks when they are allocated if the
skip_block_zeroing feature is not specified.  The block layer
may send a discard that only partly covers a block.  If a thin pool
block is partially discarded then there is no guarantee that the
discarded data will get zeroed before it is accessed again.
Due to this, thin devices cannot claim discards will always zero data.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Cc: stable@vger.kernel.org # 3.4+
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoAlways clear QUEUE_FLAG_ADD_RANDOM if any underlying device does not
Milan Broz [Tue, 18 Sep 2012 23:38:20 +0000 (09:38 +1000)]
Always clear QUEUE_FLAG_ADD_RANDOM if any underlying device does not
have it set.

QUEUE_FLAG_ADD_RANDOM specifies whether or not queue IO timings
contribute to the random pool.

For bio-based targets this flag is always 0 because such devices have no
real queue.

For request-based devices this flag was always set to 1 by default.

Now set it according to the flags on underlying devices. If there is at
least one device which should not contribute, set the flag to zero: If a
device, such as fast SSD storage, is not suitable for supplying entropy,
a request-based queue stacked over it will not be either.

Because the checking logic is exactly same as for the rotational flag,
share the iteration function with device_is_nonrot().

Signed-off-by: Milan Broz <mbroz@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agodrivers/virtio/virtio_pci.c: fix error return code
Peter Senna Tschudin [Mon, 17 Sep 2012 17:31:17 +0000 (19:31 +0200)]
drivers/virtio/virtio_pci.c: fix error return code

Convert a nonnegative error return code to a negative one, as returned
elsewhere in the function.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}
// </smpl>

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agomodule: wait when loading a module which is currently initializing.
Rusty Russell [Tue, 18 Sep 2012 23:38:14 +0000 (09:38 +1000)]
module: wait when loading a module which is currently initializing.

The original module-init-tools module loader used a fnctl lock on the
.ko file to avoid attempts to simultaneously load a module.
Unfortunately, you can't get an exclusive fcntl lock on a read-only
fd, making this not work for read-only mounted filesystems.
module-init-tools has a hacky sleep-and-loop for this now.

It's not that hard to wait in the kernel, and only return -EEXIST once
the first module has finished loading (or continue loading the module
if the first one failed to initialize for some reason).  It's also
consistent with what we do for dependent modules which are still loading.

Suggested-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agomodule: fix symbol waiting when module fails before init
Rusty Russell [Tue, 18 Sep 2012 23:38:13 +0000 (09:38 +1000)]
module: fix symbol waiting when module fails before init

We use resolve_symbol_wait(), which blocks if the module containing
the symbol is still loading.  However:

1) The module_wq we use is only woken after calling the modules' init
   function, but there are other failure paths after the module is
   placed in the linked list where we need to do the same thing.

2) wake_up() only wakes one waiter, and our waitqueue is shared by all
   modules, so we need to wake them all.

3) wake_up_all() doesn't imply a memory barrier: I feel happier calling
   it after we've grabbed and dropped the module_mutex, not just after
   the state assignment.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
12 years agoe1000: Small packets may get corrupted during padding by HW
Tushar Dave [Sat, 15 Sep 2012 10:16:57 +0000 (10:16 +0000)]
e1000: Small packets may get corrupted during padding by HW

On PCI/PCI-X HW, if packet size is less than ETH_ZLEN,
packets may get corrupted during padding by HW.
To WA this issue, pad all small packets manually.

Signed-off-by: Tushar Dave <tushar.n.dave@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
12 years agocifs: fix return value in cifsConvertToUTF16
Jeff Layton [Tue, 18 Sep 2012 18:21:01 +0000 (14:21 -0400)]
cifs: fix return value in cifsConvertToUTF16

This function returns the wrong value, which causes the callers to get
the length of the resulting pathname wrong when it contains non-ASCII
characters.

This seems to fix https://bugzilla.samba.org/show_bug.cgi?id=6767

Cc: <stable@vger.kernel.org>
Reported-by: Baldvin Kovacs <baldvin.kovacs@gmail.com>
Reported-and-Tested-by: Nicolas Lefebvre <nico.lefebvre@gmail.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>