]> git.karo-electronics.de Git - karo-tx-linux.git/log
karo-tx-linux.git
13 years agoBecause of x86-implement-strict-user-copy-checks-for-x86_64.patch
KAMEZAWA Hiroyuki [Wed, 3 Aug 2011 00:52:32 +0000 (10:52 +1000)]
Because of x86-implement-strict-user-copy-checks-for-x86_64.patch

When compiling mm/mempolicy.c the following warning is shown.

In file included from arch/x86/include/asm/uaccess.h:572,
                 from include/linux/uaccess.h:5,
                 from include/linux/highmem.h:7,
                 from include/linux/pagemap.h:10,
                 from include/linux/mempolicy.h:70,
                 from mm/mempolicy.c:68:
In function `copy_from_user',
    inlined from `compat_sys_get_mempolicy' at mm/mempolicy.c:1415:
arch/x86/include/asm/uaccess_64.h:64: warning: call to `copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct
  LD      mm/built-in.o

Fix this by passing correct buffer size value.

Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoOn thread exit shm_exit_ns() is called, it uses shm_ids(ns).rw_mutex. It
Vasiliy Kulikov [Wed, 3 Aug 2011 00:52:32 +0000 (10:52 +1000)]
On thread exit shm_exit_ns() is called, it uses shm_ids(ns).rw_mutex.  It
is initialized in shm_init(), but it is not called yet at the moment of
kernel threads exit.  Some kernel threads are created in
do_pre_smp_initcalls(), and shm_init() is called in do_initcalls().

Static initialization of shm_ids(init_ipc_ns).rw_mutex fixes the race.

It fixes a kernel oops:

Unable to handle kernel NULL pointer dereference at virtual address 00000000
...
[<c0320090>] (__down_write_nested+0x88/0xe0) from [<c015da08>] (exit_shm+0x28/0x48)
[<c015da08>] (exit_shm+0x28/0x48) from [<c002e550>] (do_exit+0x59c/0x750)
[<c002e550>] (do_exit+0x59c/0x750) from [<c003eaac>] (____call_usermodehelper+0x13c/0x154)
[<c003eaac>] (____call_usermodehelper+0x13c/0x154) from [<c000f630>] (kernel_thread_exit+0x0/0x8)
Code: 1afffffa e597c00c e58d0000 e587d00c (e58cd000)

Reported-by: Manuel Lauss <manuel.lauss@googlemail.com>
Reported-by: Richard Weinberger <richard@nod.at>
Reported-by: Marc Zyngier <maz@misterjones.org>
Tested-by: Manuel Lauss <manuel.lauss@googlemail.com>
Tested-by: Richard Weinberger <richard@nod.at>
Tested-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years ago__GFP_OTHER_NODE is used for NUMA allocations on behalf of other nodes.
Johannes Weiner [Wed, 3 Aug 2011 00:52:31 +0000 (10:52 +1000)]
__GFP_OTHER_NODE is used for NUMA allocations on behalf of other nodes.
It's supposed to be passed through from the page allocator to
zone_statistics(), but it never gets there as gfp_allowed_mask is not wide
enough and masks out the flag early in the allocation path.

The result is an accounting glitch where successful NUMA allocations
by-agent are not properly attributed as local.

Increase __GFP_BITS_SHIFT so that it includes __GFP_OTHER_NODE.

Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Andi Kleen <ak@linux.intel.com>
Reviewed-by: Minchan Kim <minchan.kim@gmail.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoUpdate the module parameters when platform data is used. This means that
Sergiu Iordache [Wed, 3 Aug 2011 00:52:31 +0000 (10:52 +1000)]
Update the module parameters when platform data is used.  This means that
they can be read from /sys/module/ramoops/parameters in order to parse the
memory area.

Signed-off-by: Sergiu Iordache <sergiu@chromium.org>
Cc: Marco Stornelli <marco.stornelli@gmail.com>
Cc: Seiji Aguchi <seiji.aguchi@hds.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoUpdate kernel-parameters.txt to point users to the authoritative comment
Will Drewry [Wed, 3 Aug 2011 00:52:31 +0000 (10:52 +1000)]
Update kernel-parameters.txt to point users to the authoritative comment
for name_to_dev_t.  In addition, updates other places where some
name_to_dev_t behavior was discussed.  All other references to root=
appear to be for explicit sample usage or just side comments when
discussing other kernel parameters.

Signed-off-by: Will Drewry <wad@chromium.org>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Randy Dunlap <rdunlap@xenotime.net>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoThis patch makes two changes:
Will Drewry [Wed, 3 Aug 2011 00:52:30 +0000 (10:52 +1000)]
This patch makes two changes:
- check for trailing characters after parsing PARTNROFF=%d
- disable root_wait if a syntax error is seen

The former assures that bad input like
  root=PARTUUID=<validuuid>/PARTNROFF=5abc
properly fails by attempting to parse an extra character after the
integer.  If the integer is missing, sscanf will fail, but if it is
present, and there is a trailing non-nul character, then the extra
field will be parsed and the error case will be hit.

The latter assures that if rootwait has been specified, the error
message isn't flooded to the screen during rootwait's loop.  Instead of
adding printk ratelimiting, root_wait was disabled.  This stays true to
the rootwait goal of support asynchronous device arrival while still
providing users with helpful messages.  With ratelimiting or disabling
logging on rootwait, a range of edge cases turn up where the user would
not be informed of an error properly.

Signed-off-by: Will Drewry <wad@chromium.org>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Randy Dunlap <rdunlap@xenotime.net>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoExpand root=PARTUUID=UUID syntax to support selecting a root partition by
Will Drewry [Wed, 3 Aug 2011 00:52:30 +0000 (10:52 +1000)]
Expand root=PARTUUID=UUID syntax to support selecting a root partition by
integer offset from a known, unique partition.  This approach provides
similar properties to specifying a device and partition number, but using
the UUID as the unique path prior to evaluating the offset.

For example,
  root=PARTUUID=99DE9194-FC15-4223-9192-FC243948F88B/PARTNROFF=1
selects the partition with UUID 99DE.. then select the next
partition.

This change is motivated by a particular usecase in Chromium OS where the
bootloader can easily determine what partition it is on (by UUID) but
doesn't perform general partition table walking.

That said, support for this model provides a direct mechanism for the user
to modify the root partition to boot without specifically needing to
extract each UUID or update the bootloader explicitly when the root
partition UUID is changed (if it is recreated to be larger, for instance).
 Pinning to a /boot-style partition UUID allows the arbitrary root
partition reconfiguration/modifications with slightly less ambiguity than
just [dev][partition] and less stringency than the specific root partition
UUID.

Signed-off-by: Will Drewry <wad@chromium.org>
Cc: Kay Sievers <kay.sievers@vrfy.org>
Cc: Randy Dunlap <rdunlap@xenotime.net>
Cc: Namhyung Kim <namhyung@gmail.com>
Cc: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoFix new kernel-doc warning in fs/dcache.c:
Randy Dunlap [Wed, 3 Aug 2011 00:52:30 +0000 (10:52 +1000)]
Fix new kernel-doc warning in fs/dcache.c:

Warning(fs/dcache.c:797): No description found for parameter 'sb'

Signed-off-by: Randy Dunlap <rdunlap@xenotime.net>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoThe current hyper-optimized functions are overkill if you simply want to
Rusty Russell [Wed, 3 Aug 2011 00:52:29 +0000 (10:52 +1000)]
The current hyper-optimized functions are overkill if you simply want to
allocate an id for a device.  Create versions which use an internal lock.

In followup patches, numerous drivers are converted to use this interface.

Thanks to Tejun for feedback.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoWhen send_cpu_listeners() finds the orphaned listener it marks it as
Oleg Nesterov [Wed, 3 Aug 2011 00:52:29 +0000 (10:52 +1000)]
When send_cpu_listeners() finds the orphaned listener it marks it as
!valid and drops listeners->sem.  Before it takes this sem for writing,
s->pid can be reused and add_del_listener() can wrongly try to re-use this
entry.

Change add_del_listener() to check ->valid = T.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Vasiliy Kulikov <segoon@openwall.com>
Acked-by: Balbir Singh <bsingharora@gmail.com>
Cc: Jerome Marchand <jmarchan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years ago1. 26c4caea "don't allow duplicate entries in listener mode"
Oleg Nesterov [Wed, 3 Aug 2011 00:52:28 +0000 (10:52 +1000)]
1. 26c4caea "don't allow duplicate entries in listener mode"
   changed add_del_listener(REGISTER) so that "next_cpu:" can
   reuse the listener allocated for the previous cpu, this
   doesn't look exactly right even if minor.

   Change the code to kfree() in the already-registered case,
   this case is unlikely anyway so the extra kmalloc_node()
   shouldn't hurt but looke more correct and clean.

2. use the plain list_for_each_entry() instead of _safe() to
   scan listeners->list.

3. Remove the unneeded INIT_LIST_HEAD(&s->list), we are going
   to list_add(&s->list).

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Reviewed-by: Vasiliy Kulikov <segoon@openwall.com>
Cc: Balbir Singh <bsingharora@gmail.com>
Reviewed-by: Jerome Marchand <jmarchan@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoAs the comment explains, the intention of the code is to clear the
Daniel Glöckner [Wed, 3 Aug 2011 00:52:28 +0000 (10:52 +1000)]
As the comment explains, the intention of the code is to clear the
OMAP_RTC_CTRL_MODE_12_24 bit, but instead it only clears the
OMAP_RTC_CTRL_SPLIT and OMAP_RTC_CTRL_AUTO_COMP bits, which should be
kept. OMAP_RTC_CTRL_DISABLE, OMAP_RTC_CTRL_SET_32_COUNTER,
OMAP_RTC_CTRL_TEST, and OMAP_RTC_CTRL_ROUND_30S are also better off
being cleared.

Signed-off-by: Daniel Glöckner <dg@emlix.com>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoinit_fault_attr_dentries() is used to export fault_attr via debugfs. But
Akinobu Mita [Wed, 3 Aug 2011 00:52:27 +0000 (10:52 +1000)]
init_fault_attr_dentries() is used to export fault_attr via debugfs.  But
it can only export it in debugfs root directory.

Per Forlin is working on mmc_fail_request which adds support to inject
data errors after a completed host transfer in MMC subsystem.

The fault_attr for mmc_fail_request should be defined per mmc host and
export it in debugfs directory per mmc host like
/sys/kernel/debug/mmc0/mmc_fail_request.

init_fault_attr_dentries() doesn't help for mmc_fail_request.  So this
introduces fault_create_debugfs_attr() which is able to create a directory
in the arbitrary directory and replace init_fault_attr_dentries().

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Tested-by: Per Forlin <per.forlin@linaro.org>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Christoph Lameter <cl@linux-foundation.org>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Matt Mackall <mpm@selenic.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
13 years agoRevert "staging: zcache: module is GPL"
Stephen Rothwell [Wed, 3 Aug 2011 04:14:50 +0000 (14:14 +1000)]
Revert "staging: zcache: module is GPL"

This reverts commit fd6b68bbac9f100c8728b2cfe4e34f03f3df4e4d.

13 years agoMerge remote-tracking branch 'moduleh/module.h-split'
Stephen Rothwell [Wed, 3 Aug 2011 03:51:48 +0000 (13:51 +1000)]
Merge remote-tracking branch 'moduleh/module.h-split'

Conflicts:
drivers/dma/ste_dma40.c
drivers/staging/dt3155v4l/dt3155v4l.c

13 years agoMerge remote-tracking branch 'tmem/linux-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:38:25 +0000 (13:38 +1000)]
Merge remote-tracking branch 'tmem/linux-next'

13 years agoMerge remote-tracking branch 'regmap/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:36:55 +0000 (13:36 +1000)]
Merge remote-tracking branch 'regmap/for-next'

13 years agoMerge remote-tracking branch 'namespace/master'
Stephen Rothwell [Wed, 3 Aug 2011 03:35:35 +0000 (13:35 +1000)]
Merge remote-tracking branch 'namespace/master'

13 years agoMerge remote-tracking branch 'sysctl/master'
Stephen Rothwell [Wed, 3 Aug 2011 03:34:17 +0000 (13:34 +1000)]
Merge remote-tracking branch 'sysctl/master'

13 years agoMerge remote-tracking branch 'drivers-x86/linux-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:32:37 +0000 (13:32 +1000)]
Merge remote-tracking branch 'drivers-x86/linux-next'

Conflicts:
Documentation/feature-removal-schedule.txt

13 years agoMerge remote-tracking branch 'kvm/linux-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:30:57 +0000 (13:30 +1000)]
Merge remote-tracking branch 'kvm/linux-next'

13 years agoMerge remote-tracking branch 'tip/auto-latest'
Stephen Rothwell [Wed, 3 Aug 2011 03:30:30 +0000 (13:30 +1000)]
Merge remote-tracking branch 'tip/auto-latest'

13 years agoMerge remote-tracking branch 'spi/spi/next'
Stephen Rothwell [Wed, 3 Aug 2011 03:29:10 +0000 (13:29 +1000)]
Merge remote-tracking branch 'spi/spi/next'

13 years agoMerge remote-tracking branch 'devicetree/devicetree/next'
Stephen Rothwell [Wed, 3 Aug 2011 03:26:55 +0000 (13:26 +1000)]
Merge remote-tracking branch 'devicetree/devicetree/next'

13 years agoMerge remote-tracking branch 'i7300_edac/linux_next'
Stephen Rothwell [Wed, 3 Aug 2011 03:26:52 +0000 (13:26 +1000)]
Merge remote-tracking branch 'i7300_edac/linux_next'

13 years agoMerge remote-tracking branch 'i7core_edac/linux_next'
Stephen Rothwell [Wed, 3 Aug 2011 03:25:19 +0000 (13:25 +1000)]
Merge remote-tracking branch 'i7core_edac/linux_next'

13 years agoMerge remote-tracking branch 'fsnotify/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:22:44 +0000 (13:22 +1000)]
Merge remote-tracking branch 'fsnotify/for-next'

13 years agoMerge remote-tracking branch 'trivial/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:21:21 +0000 (13:21 +1000)]
Merge remote-tracking branch 'trivial/for-next'

13 years agoMerge remote-tracking branch 'watchdog/master'
Stephen Rothwell [Wed, 3 Aug 2011 03:19:48 +0000 (13:19 +1000)]
Merge remote-tracking branch 'watchdog/master'

13 years agoMerge remote-tracking branch 'agp/agp-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:19:21 +0000 (13:19 +1000)]
Merge remote-tracking branch 'agp/agp-next'

13 years agoMerge remote-tracking branch 'fbdev/master'
Stephen Rothwell [Wed, 3 Aug 2011 03:17:44 +0000 (13:17 +1000)]
Merge remote-tracking branch 'fbdev/master'

13 years agoMerge remote-tracking branch 'md/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:16:12 +0000 (13:16 +1000)]
Merge remote-tracking branch 'md/for-next'

13 years agoMerge remote-tracking branch 'slab/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:16:05 +0000 (13:16 +1000)]
Merge remote-tracking branch 'slab/for-next'

13 years agoMerge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:16:01 +0000 (13:16 +1000)]
Merge remote-tracking branch 'kgdb/kgdb-next'

13 years agoMerge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Wed, 3 Aug 2011 03:14:40 +0000 (13:14 +1000)]
Merge remote-tracking branch 'mmc/mmc-next'

Conflicts:
drivers/mmc/host/sdhci-esdhc-imx.c

13 years agoMerge remote-tracking branch 'leds/for-mm'
Stephen Rothwell [Wed, 3 Aug 2011 02:09:09 +0000 (12:09 +1000)]
Merge remote-tracking branch 'leds/for-mm'

Conflicts:
drivers/leds/Kconfig

13 years agoMerge branch 'quilt/device-mapper'
Stephen Rothwell [Wed, 3 Aug 2011 02:07:10 +0000 (12:07 +1000)]
Merge branch 'quilt/device-mapper'

13 years agoMerge remote-tracking branch 'block/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 02:02:56 +0000 (12:02 +1000)]
Merge remote-tracking branch 'block/for-next'

13 years agoMerge branch 'quilt/rr'
Stephen Rothwell [Wed, 3 Aug 2011 02:01:31 +0000 (12:01 +1000)]
Merge branch 'quilt/rr'

13 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 02:00:04 +0000 (12:00 +1000)]
Merge remote-tracking branch 'sound-asoc/for-next'

13 years agoMerge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 02:00:01 +0000 (12:00 +1000)]
Merge remote-tracking branch 'sound/for-next'

13 years agoMerge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:58:31 +0000 (11:58 +1000)]
Merge remote-tracking branch 'l2-mtd/master'

Conflicts:
drivers/mtd/maps/lantiq-flash.c
drivers/mtd/maps/pxa2xx-flash.c

13 years agoMerge remote-tracking branch 'bluetooth/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:56:57 +0000 (11:56 +1000)]
Merge remote-tracking branch 'bluetooth/master'

13 years agoMerge remote-tracking branch 'wireless/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:55:35 +0000 (11:55 +1000)]
Merge remote-tracking branch 'wireless/master'

13 years agoMerge remote-tracking branch 'async_tx/next'
Stephen Rothwell [Wed, 3 Aug 2011 01:52:39 +0000 (11:52 +1000)]
Merge remote-tracking branch 'async_tx/next'

13 years agoMerge remote-tracking branch 'iscsi-target/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:51:21 +0000 (11:51 +1000)]
Merge remote-tracking branch 'iscsi-target/for-next'

13 years agoMerge remote-tracking branch 'ibft/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:51:15 +0000 (11:51 +1000)]
Merge remote-tracking branch 'ibft/master'

13 years agoMerge remote-tracking branch 'swiotlb/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:51:10 +0000 (11:51 +1000)]
Merge remote-tracking branch 'swiotlb/master'

13 years agoMerge remote-tracking branch 'powertools/tools-test'
Stephen Rothwell [Wed, 3 Aug 2011 01:49:46 +0000 (11:49 +1000)]
Merge remote-tracking branch 'powertools/tools-test'

13 years agoMerge remote-tracking branch 'idle-test/idle-test'
Stephen Rothwell [Wed, 3 Aug 2011 01:48:28 +0000 (11:48 +1000)]
Merge remote-tracking branch 'idle-test/idle-test'

13 years agoMerge remote-tracking branch 'acpi/test'
Stephen Rothwell [Wed, 3 Aug 2011 01:42:11 +0000 (11:42 +1000)]
Merge remote-tracking branch 'acpi/test'

13 years agoMerge remote-tracking branch 'kconfig/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:42:03 +0000 (11:42 +1000)]
Merge remote-tracking branch 'kconfig/for-next'

13 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:41:53 +0000 (11:41 +1000)]
Merge remote-tracking branch 'kbuild/for-next'

13 years agoMerge branch 'quilt/kernel-doc'
Stephen Rothwell [Wed, 3 Aug 2011 01:40:34 +0000 (11:40 +1000)]
Merge branch 'quilt/kernel-doc'

13 years agoMerge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:40:22 +0000 (11:40 +1000)]
Merge remote-tracking branch 'hid/for-next'

13 years agoMerge remote-tracking branch 'vfs/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:39:04 +0000 (11:39 +1000)]
Merge remote-tracking branch 'vfs/for-next'

13 years agoMerge remote-tracking branch 'xfs/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:37:38 +0000 (11:37 +1000)]
Merge remote-tracking branch 'xfs/master'

13 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:36:09 +0000 (11:36 +1000)]
Merge remote-tracking branch 'ocfs2/linux-next'

13 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:36:01 +0000 (11:36 +1000)]
Merge remote-tracking branch 'logfs/master'

Conflicts:
fs/logfs/logfs.h

13 years agoMerge remote-tracking branch 'jfs/next'
Stephen Rothwell [Wed, 3 Aug 2011 01:34:27 +0000 (11:34 +1000)]
Merge remote-tracking branch 'jfs/next'

13 years agoMerge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:33:12 +0000 (11:33 +1000)]
Merge remote-tracking branch 'gfs2/master'

13 years agoMerge remote-tracking branch 'ceph/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:33:03 +0000 (11:33 +1000)]
Merge remote-tracking branch 'ceph/for-next'

Conflicts:
fs/ceph/export.c

13 years agoMerge remote-tracking branch 'unicore32/unicore32'
Stephen Rothwell [Wed, 3 Aug 2011 01:31:43 +0000 (11:31 +1000)]
Merge remote-tracking branch 'unicore32/unicore32'

13 years agoMerge remote-tracking branch 'tile/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:30:27 +0000 (11:30 +1000)]
Merge remote-tracking branch 'tile/master'

13 years agoMerge remote-tracking branch 'rmobile/rmobile-latest'
Stephen Rothwell [Wed, 3 Aug 2011 01:29:11 +0000 (11:29 +1000)]
Merge remote-tracking branch 'rmobile/rmobile-latest'

13 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Wed, 3 Aug 2011 01:27:51 +0000 (11:27 +1000)]
Merge remote-tracking branch 's390/features'

13 years agoMerge remote-tracking branch '52xx-and-virtex/powerpc/next'
Stephen Rothwell [Wed, 3 Aug 2011 01:26:27 +0000 (11:26 +1000)]
Merge remote-tracking branch '52xx-and-virtex/powerpc/next'

13 years agoMerge remote-tracking branch 'parisc/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:25:07 +0000 (11:25 +1000)]
Merge remote-tracking branch 'parisc/for-next'

13 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:23:43 +0000 (11:23 +1000)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

13 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:23:40 +0000 (11:23 +1000)]
Merge remote-tracking branch 'm68knommu/for-next'

13 years agoMerge remote-tracking branch 'cris/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:22:12 +0000 (11:22 +1000)]
Merge remote-tracking branch 'cris/for-next'

13 years agoMerge remote-tracking branch 'ux500-core/ux500-core'
Stephen Rothwell [Wed, 3 Aug 2011 01:22:07 +0000 (11:22 +1000)]
Merge remote-tracking branch 'ux500-core/ux500-core'

13 years agoMerge remote-tracking branch 's5p/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:20:46 +0000 (11:20 +1000)]
Merge remote-tracking branch 's5p/for-next'

Conflicts:
arch/arm/mach-exynos4/Kconfig
arch/arm/mach-exynos4/mach-smdkc210.c

13 years agoMerge remote-tracking branch 'msm/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:19:12 +0000 (11:19 +1000)]
Merge remote-tracking branch 'msm/for-next'

Conflicts:
arch/arm/mach-msm/io.c

13 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:19:01 +0000 (11:19 +1000)]
Merge remote-tracking branch 'arm-soc/for-next'

Conflicts:
arch/arm/mach-exynos4/pm.c
arch/arm/mach-imx/mm-imx25.c
arch/arm/mach-imx/mm-imx31.c
arch/arm/mach-imx/mm-imx35.c
arch/arm/mach-mx5/mm.c
arch/arm/mach-omap2/cm-regbits-44xx.h

13 years agoMerge remote-tracking branch 'arm-lpae/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:17:19 +0000 (11:17 +1000)]
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/proc-fns.h
arch/arm/include/asm/tlb.h
arch/arm/mm/context.c
arch/arm/mm/proc-v7.S

13 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Wed, 3 Aug 2011 01:15:58 +0000 (11:15 +1000)]
Merge remote-tracking branch 'arm/for-next'

13 years agoMerge remote-tracking branch 'devicetree-current/devicetree/merge'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:53 +0000 (11:12 +1000)]
Merge remote-tracking branch 'devicetree-current/devicetree/merge'

13 years agoMerge remote-tracking branch 'fbdev-current/fbdev-fixes-for-linus'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:50 +0000 (11:12 +1000)]
Merge remote-tracking branch 'fbdev-current/fbdev-fixes-for-linus'

13 years agoMerge remote-tracking branch 'input-current/for-linus'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:36 +0000 (11:12 +1000)]
Merge remote-tracking branch 'input-current/for-linus'

13 years agoMerge remote-tracking branch 'staging.current/staging-linus'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:34 +0000 (11:12 +1000)]
Merge remote-tracking branch 'staging.current/staging-linus'

13 years agoMerge remote-tracking branch 'usb.current/usb-linus'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:33 +0000 (11:12 +1000)]
Merge remote-tracking branch 'usb.current/usb-linus'

13 years agoMerge remote-tracking branch 'pci-current/for-linus'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:31 +0000 (11:12 +1000)]
Merge remote-tracking branch 'pci-current/for-linus'

13 years agoMerge remote-tracking branch 'sound-current/for-linus'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:29 +0000 (11:12 +1000)]
Merge remote-tracking branch 'sound-current/for-linus'

13 years agoMerge remote-tracking branch 'net-current/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:27 +0000 (11:12 +1000)]
Merge remote-tracking branch 'net-current/master'

13 years agoMerge remote-tracking branch 'sparc-current/master'
Stephen Rothwell [Wed, 3 Aug 2011 01:12:25 +0000 (11:12 +1000)]
Merge remote-tracking branch 'sparc-current/master'

13 years agoInitial EXPERIMENTAL implementation of device-mapper thin provisioning
Joe Thornber [Wed, 3 Aug 2011 00:43:45 +0000 (10:43 +1000)]
Initial EXPERIMENTAL implementation of device-mapper thin provisioning
with snapshot support.  The 'thin' target is used to create instances of
the virtual devices that are hosted in the 'thin-pool' target.  The
thin-pool target provides data sharing among devices.  This sharing is
made possible using the persistent-data library in the previous patch.

The main highlight of this implementation, compared to the previous
implementation of snapshots, is that it allows many virtual devices to
be stored on the same data volume, simplifying administration and
allowing sharing of data between volumes (thus reducing disk usage).

Another big feature is support for arbitrary depth of recursive
snapshots (snapshots of snapshots of snapshots ...).  The previous
implementation of snapshots did this by chaining together lookup tables,
and so performance was O(depth).  This new implementation uses a single
data structure so we don't get this degradation with depth.

For further information and examples of how to use this, please read
Documentation/device-mapper/thin-provisioning.txt

Signed-off-by: Joe Thornber <thornber@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoThe persistent-data library offers a re-usable framework for the storage
Joe Thornber [Wed, 3 Aug 2011 00:43:44 +0000 (10:43 +1000)]
The persistent-data library offers a re-usable framework for the storage
and management of on-disk metadata in device-mapper targets.

It's used by the thin-provisioning target in the next patch and in an
upcoming hierarchical storage target.

For further information, please read
Documentation/device-mapper/persistent-data.txt

Signed-off-by: Joe Thornber <thornber@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoExport dm_get_md() for the new thin provisioning target to use.
Alasdair G Kergon [Wed, 3 Aug 2011 00:43:44 +0000 (10:43 +1000)]
Export dm_get_md() for the new thin provisioning target to use.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoAdd a target feature flag to indicate that a target does not work in
Alasdair G Kergon [Wed, 3 Aug 2011 00:43:44 +0000 (10:43 +1000)]
Add a target feature flag to indicate that a target does not work in
read-only mode.

The thin provisioning target uses this.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoIntroduce the concept of a singleton table which contains exactly one target.
Alasdair G Kergon [Wed, 3 Aug 2011 00:43:44 +0000 (10:43 +1000)]
Introduce the concept of a singleton table which contains exactly one target.

If a target type sets the DM_TARGET_SINGLETON feature bit device-mapper
will ensure that any table that includes that target contains no others.

The thin provisioning pool target uses this.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoThis patch introduces dm_kcopyd_zero() to make it easy to use
Mikulas Patocka [Wed, 3 Aug 2011 00:43:43 +0000 (10:43 +1000)]
This patch introduces dm_kcopyd_zero() to make it easy to use
kcopyd to write zeros into the requested areas instead
instead of copying.  It is implemented by passing a NULL
copying source to dm_kcopyd_copy().

The forthcoming thin provisioning target uses this.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoDM has always advertised both REQ_FLUSH and REQ_FUA flush capabilities
Mike Snitzer [Wed, 3 Aug 2011 00:43:43 +0000 (10:43 +1000)]
DM has always advertised both REQ_FLUSH and REQ_FUA flush capabilities
regardless of whether or not a given DM device's underlying devices
also advertised a need for them.

Block's flush-merge changes from 2.6.39 have proven to be more costly
for DM devices.  Performance regressions have been reported even when
DM's underlying devices do not advertise that they have a write cache.

Fix the performance regressions by configuring a DM device's flushing
capabilities based on those of the underlying devices' capabilities.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoAdd optional parameter field to dmcrypt table and support
Milan Broz [Wed, 3 Aug 2011 00:43:43 +0000 (10:43 +1000)]
Add optional parameter field to dmcrypt table and support
"allow_discards" option.

Discard requests bypass crypt queue processing. Bio is simple remapped
to underlying device.

Note that discard will be never enabled by default because of security
consequences.  It is up to the administrator to enable it for encrypted
devices.

(Note that userspace cryptsetup does not understand new optional
parameters yet.  Support for this will come later.  Until then, you
should use 'dmsetup' to enable and disable this.)

Signed-off-by: Milan Broz <mbroz@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoSupport the MD RAID1 personality through dm-raid.
Jonathan Brassow [Wed, 3 Aug 2011 00:43:42 +0000 (10:43 +1000)]
Support the MD RAID1 personality through dm-raid.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoAdd the ability to parse and use metadata devices to dm-raid. Although
Jonathan Brassow [Wed, 3 Aug 2011 00:43:42 +0000 (10:43 +1000)]
Add the ability to parse and use metadata devices to dm-raid.  Although
not strictly required, without the metadata devices, many features of
RAID are unavailable.  They are used to store a superblock and bitmap.

The role, or position in the array, of each device must be recorded in
its superblock.  This is to help with fault handling, array reshaping,
and sanity checks.  RAID 4/5/6 devices must be loaded in a specific order:
in this way, the 'array_position' field helps validate the correctness
of the mapping when it is loaded.  It can be used during reshaping to
identify which devices are added/removed.  Fault handling is impossible
without this field.  For example, when a device fails it is recorded in
the superblock.  If this is a RAID1 device and the offending device is
removed from the array, there must be a way during subsequent array
assembly to determine that the failed device was the one removed.  This
is done by correlating the 'array_position' field and the bit-field
variable 'failed_devices'.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoAdd the write_mostly parameter to RAID1 dm-raid tables.
Jonathan Brassow [Wed, 3 Aug 2011 00:43:42 +0000 (10:43 +1000)]
Add the write_mostly parameter to RAID1 dm-raid tables.

This allows the user to set the WriteMostly flag on a RAID1 device that
should normally be avoided for read I/O.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoAllow the user to specify the region_size.
Jonathan Brassow [Wed, 3 Aug 2011 00:43:41 +0000 (10:43 +1000)]
Allow the user to specify the region_size.

Ensures that the supplied value meets md's constraints, viz. the number of
regions does not exceed 2^21.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoAdd more information about some dm-raid table parameters and clarify how
Jonathan Brassow [Wed, 3 Aug 2011 00:43:41 +0000 (10:43 +1000)]
Add more information about some dm-raid table parameters and clarify how
parameters are printed when 'dmsetup table' is issued.

Signed-off-by: Jonathan Brassow <jbrassow@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
13 years agoExactly one of name, uuid or device must be specified when referencing
Mikulas Patocka [Wed, 3 Aug 2011 00:43:41 +0000 (10:43 +1000)]
Exactly one of name, uuid or device must be specified when referencing
an existing device.  This removes the ambiguity (risking the wrong
device being updated) if two conflicting parameters were specified.
Previously one parameter got used and any others were ignored silently.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>