]> git.kernelconcepts.de Git - karo-tx-linux.git/log
karo-tx-linux.git
12 years agoIt's about time to revert 16d752397301b9 ("thermal: Create
Jean Delvare [Tue, 26 Jul 2011 10:14:36 +0000 (20:14 +1000)]
It's about time to revert 16d752397301b9 ("thermal: Create
CONFIG_THERMAL_HWMON=n").  Anybody running a kernel >= 2.6.40 would also
be running a recent enough version of lm-sensors.

Actually having CONFIG_THERMAL_HWMON is pretty convenient so instead of
dropping it, we keep it but hide it.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Rene Herman <rene.herman@gmail.com>
Cc: Len Brown <len.brown@intel.com>
Acked-by: Guenter Roeck <guenter.roeck@ericsson.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agokernel/time.c:578: error: conflicting types for 'jiffies_to_clock_t'
Andrew Morton [Tue, 26 Jul 2011 10:14:36 +0000 (20:14 +1000)]
kernel/time.c:578: error: conflicting types for 'jiffies_to_clock_t'
include/linux/jiffies.h:306: note: previous declaration of 'jiffies_to_clock_t' was here

Cc: John Stultz <john.stultz@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: hank <pyu@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agoThe parameter's origin type is long. On an i386 architecture, it can
hank [Tue, 26 Jul 2011 10:14:35 +0000 (20:14 +1000)]
The parameter's origin type is long.  On an i386 architecture, it can
easily be larger than 0x80000000, causing this function to convert it to a
sign-extended u64 type.  Change the type to unsigned long so we get the
correct result.

Signed-off-by: hank <pyu@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: John Stultz <john.stultz@linaro.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agoMy load tests on PowerPC freeze within minutes in __slab_free(). I
Hugh Dickins [Tue, 26 Jul 2011 10:14:35 +0000 (20:14 +1000)]
My load tests on PowerPC freeze within minutes in __slab_free().  I
happened to try PPC first, didn't try without this fix on x86.

It looks as if the author was interrupted while devising the new
cmpxchg_double_slab() version of __slab_free(): its decision to
spin_lock_irqsave() depends on several uninitialized fields, and fixing
that (by copying page to new) mostly fixes it.

But I didn't think about it very much, and this may well not be what the
author intends; and I have seen a couple of much rarer freezes in
__slab_free() on PPC (not yet on x86) even after applying this.

Signed-off-by: Hugh Dickins <hughd@google.com>
Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Cc: Christoph Lameter <cl@linux.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agoarch/cris/arch-v10/kernel/irq.c:239: error: implicit declaration of function 'kgdb_init'
WANG Cong [Tue, 26 Jul 2011 10:14:34 +0000 (20:14 +1000)]
arch/cris/arch-v10/kernel/irq.c:239: error: implicit declaration of function 'kgdb_init'
arch/cris/arch-v10/kernel/irq.c:240: error: implicit declaration of function 'breakpoint'

Declare these two functions.

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agoarch/cris/arch-v10/drivers/sync_serial.c:961: error: conflicting types for 'sync_seri...
WANG Cong [Tue, 26 Jul 2011 10:14:34 +0000 (20:14 +1000)]
arch/cris/arch-v10/drivers/sync_serial.c:961: error: conflicting types for 'sync_serial_ioctl'

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agoarch/cris/arch-v10/drivers/sync_serial.c:628: error: 'ret' undeclared (first use...
WANG Cong [Tue, 26 Jul 2011 10:14:33 +0000 (20:14 +1000)]
arch/cris/arch-v10/drivers/sync_serial.c:628: error: 'ret' undeclared (first use in this function)

'ret' should be 'err'.

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agoWARNING: line over 80 characters
Andrew Morton [Tue, 26 Jul 2011 10:14:33 +0000 (20:14 +1000)]
WARNING: line over 80 characters
#37: FILE: arch/cris/include/asm/thread_info.h:70:
+#define alloc_thread_info_node(tsk, node) ((struct thread_info *) __get_free_pages(GFP_KERNEL,1))

ERROR: space required after that ',' (ctx:VxV)
#37: FILE: arch/cris/include/asm/thread_info.h:70:
+#define alloc_thread_info_node(tsk, node) ((struct thread_info *) __get_free_pages(GFP_KERNEL,1))
                                                                                              ^

total: 1 errors, 1 warnings, 18 lines checked

./patches/cris-fix-a-build-error-in-kernel-forkc.patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

Please run checkpatch prior to sending patches

Cc: WANG Cong <xiyou.wangcong@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agokernel/fork.c:267: error: implicit declaration of function
WANG Cong [Tue, 26 Jul 2011 10:14:33 +0000 (20:14 +1000)]
kernel/fork.c:267: error: implicit declaration of function
'alloc_thread_info_node'

This is due to renaming alloc_thread_info() to alloc_thread_info_node().

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
12 years agoMerge remote-tracking branch 'moduleh/module.h-split'
Stephen Rothwell [Tue, 2 Aug 2011 04:53:02 +0000 (14:53 +1000)]
Merge remote-tracking branch 'moduleh/module.h-split'

Conflicts:
drivers/dma/ste_dma40.c
drivers/video/omap2/dss/rfbi.c

12 years agoMerge remote-tracking branch 'tmem/linux-next'
Stephen Rothwell [Tue, 2 Aug 2011 02:15:58 +0000 (12:15 +1000)]
Merge remote-tracking branch 'tmem/linux-next'

12 years agoMerge remote-tracking branch 'regmap/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 02:14:31 +0000 (12:14 +1000)]
Merge remote-tracking branch 'regmap/for-next'

12 years agoMerge remote-tracking branch 'namespace/master'
Stephen Rothwell [Tue, 2 Aug 2011 02:13:13 +0000 (12:13 +1000)]
Merge remote-tracking branch 'namespace/master'

12 years agoMerge remote-tracking branch 'sysctl/master'
Stephen Rothwell [Tue, 2 Aug 2011 02:11:57 +0000 (12:11 +1000)]
Merge remote-tracking branch 'sysctl/master'

12 years agoMerge remote-tracking branch 'drivers-x86/linux-next'
Stephen Rothwell [Tue, 2 Aug 2011 02:10:20 +0000 (12:10 +1000)]
Merge remote-tracking branch 'drivers-x86/linux-next'

Conflicts:
Documentation/feature-removal-schedule.txt

12 years agoMerge remote-tracking branch 'kvm/linux-next'
Stephen Rothwell [Tue, 2 Aug 2011 02:08:39 +0000 (12:08 +1000)]
Merge remote-tracking branch 'kvm/linux-next'

12 years agoMerge remote-tracking branch 'tip/auto-latest'
Stephen Rothwell [Tue, 2 Aug 2011 02:08:12 +0000 (12:08 +1000)]
Merge remote-tracking branch 'tip/auto-latest'

12 years agoMerge remote-tracking branch 'devicetree/devicetree/next'
Stephen Rothwell [Tue, 2 Aug 2011 02:06:51 +0000 (12:06 +1000)]
Merge remote-tracking branch 'devicetree/devicetree/next'

12 years agoMerge remote-tracking branch 'i7300_edac/linux_next'
Stephen Rothwell [Tue, 2 Aug 2011 02:06:49 +0000 (12:06 +1000)]
Merge remote-tracking branch 'i7300_edac/linux_next'

12 years agoMerge remote-tracking branch 'i7core_edac/linux_next'
Stephen Rothwell [Tue, 2 Aug 2011 02:05:18 +0000 (12:05 +1000)]
Merge remote-tracking branch 'i7core_edac/linux_next'

12 years agoMerge remote-tracking branch 'fsnotify/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 02:02:44 +0000 (12:02 +1000)]
Merge remote-tracking branch 'fsnotify/for-next'

12 years agoMerge remote-tracking branch 'trivial/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 02:01:21 +0000 (12:01 +1000)]
Merge remote-tracking branch 'trivial/for-next'

12 years agoMerge remote-tracking branch 'watchdog/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:59:41 +0000 (11:59 +1000)]
Merge remote-tracking branch 'watchdog/master'

12 years agoMerge remote-tracking branch 'agp/agp-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:59:15 +0000 (11:59 +1000)]
Merge remote-tracking branch 'agp/agp-next'

12 years agoMerge remote-tracking branch 'fbdev/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:57:39 +0000 (11:57 +1000)]
Merge remote-tracking branch 'fbdev/master'

12 years agoMerge remote-tracking branch 'slab/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:57:23 +0000 (11:57 +1000)]
Merge remote-tracking branch 'slab/for-next'

12 years agoMerge remote-tracking branch 'kgdb/kgdb-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:57:19 +0000 (11:57 +1000)]
Merge remote-tracking branch 'kgdb/kgdb-next'

12 years agoMerge remote-tracking branch 'mmc/mmc-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:55:58 +0000 (11:55 +1000)]
Merge remote-tracking branch 'mmc/mmc-next'

12 years agoMerge remote-tracking branch 'leds/for-mm'
Stephen Rothwell [Tue, 2 Aug 2011 01:55:51 +0000 (11:55 +1000)]
Merge remote-tracking branch 'leds/for-mm'

Conflicts:
drivers/leds/Kconfig

12 years agoMerge branch 'quilt/device-mapper'
Stephen Rothwell [Tue, 2 Aug 2011 01:53:51 +0000 (11:53 +1000)]
Merge branch 'quilt/device-mapper'

12 years agoMerge remote-tracking branch 'block/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:49:41 +0000 (11:49 +1000)]
Merge remote-tracking branch 'block/for-next'

12 years agoMerge branch 'quilt/rr'
Stephen Rothwell [Tue, 2 Aug 2011 01:48:17 +0000 (11:48 +1000)]
Merge branch 'quilt/rr'

12 years agoMerge remote-tracking branch 'sound-asoc/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:47:00 +0000 (11:47 +1000)]
Merge remote-tracking branch 'sound-asoc/for-next'

12 years agoMerge remote-tracking branch 'sound/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:45:31 +0000 (11:45 +1000)]
Merge remote-tracking branch 'sound/for-next'

12 years agoMerge remote-tracking branch 'l2-mtd/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:44:01 +0000 (11:44 +1000)]
Merge remote-tracking branch 'l2-mtd/master'

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

12 years agoMerge remote-tracking branch 'bluetooth/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:42:27 +0000 (11:42 +1000)]
Merge remote-tracking branch 'bluetooth/master'

12 years agoMerge remote-tracking branch 'wireless/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:41:06 +0000 (11:41 +1000)]
Merge remote-tracking branch 'wireless/master'

12 years agoMerge remote-tracking branch 'async_tx/next'
Stephen Rothwell [Tue, 2 Aug 2011 01:38:09 +0000 (11:38 +1000)]
Merge remote-tracking branch 'async_tx/next'

12 years agoMerge remote-tracking branch 'iscsi-target/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:36:50 +0000 (11:36 +1000)]
Merge remote-tracking branch 'iscsi-target/for-next'

12 years agoMerge remote-tracking branch 'ibft/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:36:45 +0000 (11:36 +1000)]
Merge remote-tracking branch 'ibft/master'

12 years agoMerge remote-tracking branch 'swiotlb/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:36:40 +0000 (11:36 +1000)]
Merge remote-tracking branch 'swiotlb/master'

12 years agoMerge remote-tracking branch 'powertools/tools-test'
Stephen Rothwell [Tue, 2 Aug 2011 01:35:15 +0000 (11:35 +1000)]
Merge remote-tracking branch 'powertools/tools-test'

12 years agoMerge remote-tracking branch 'idle-test/idle-test'
Stephen Rothwell [Tue, 2 Aug 2011 01:33:57 +0000 (11:33 +1000)]
Merge remote-tracking branch 'idle-test/idle-test'

12 years agoMerge remote-tracking branch 'acpi/test'
Stephen Rothwell [Tue, 2 Aug 2011 01:27:37 +0000 (11:27 +1000)]
Merge remote-tracking branch 'acpi/test'

Conflicts:
arch/ia64/Kconfig
arch/powerpc/Kconfig
arch/x86/Kconfig
lib/Kconfig
lib/Makefile

12 years agoMerge remote-tracking branch 'kconfig/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:27:26 +0000 (11:27 +1000)]
Merge remote-tracking branch 'kconfig/for-next'

12 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:27:16 +0000 (11:27 +1000)]
Merge remote-tracking branch 'kbuild/for-next'

12 years agoMerge branch 'quilt/kernel-doc'
Stephen Rothwell [Tue, 2 Aug 2011 01:25:51 +0000 (11:25 +1000)]
Merge branch 'quilt/kernel-doc'

12 years agoMerge remote-tracking branch 'hid/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:25:39 +0000 (11:25 +1000)]
Merge remote-tracking branch 'hid/for-next'

12 years agoMerge remote-tracking branch 'xfs/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:17:27 +0000 (11:17 +1000)]
Merge remote-tracking branch 'xfs/master'

12 years agoMerge remote-tracking branch 'ocfs2/linux-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:15:51 +0000 (11:15 +1000)]
Merge remote-tracking branch 'ocfs2/linux-next'

12 years agoMerge remote-tracking branch 'logfs/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:15:43 +0000 (11:15 +1000)]
Merge remote-tracking branch 'logfs/master'

Conflicts:
fs/logfs/logfs.h

12 years agoMerge remote-tracking branch 'jfs/next'
Stephen Rothwell [Tue, 2 Aug 2011 01:14:08 +0000 (11:14 +1000)]
Merge remote-tracking branch 'jfs/next'

12 years agoMerge remote-tracking branch 'gfs2/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:12:50 +0000 (11:12 +1000)]
Merge remote-tracking branch 'gfs2/master'

12 years agoMerge remote-tracking branch 'ceph/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:12:41 +0000 (11:12 +1000)]
Merge remote-tracking branch 'ceph/for-next'

Conflicts:
fs/ceph/export.c

12 years agoMerge remote-tracking branch 'unicore32/unicore32'
Stephen Rothwell [Tue, 2 Aug 2011 01:11:21 +0000 (11:11 +1000)]
Merge remote-tracking branch 'unicore32/unicore32'

12 years agoMerge remote-tracking branch 'tile/master'
Stephen Rothwell [Tue, 2 Aug 2011 01:09:57 +0000 (11:09 +1000)]
Merge remote-tracking branch 'tile/master'

12 years agoMerge remote-tracking branch 'rmobile/rmobile-latest'
Stephen Rothwell [Tue, 2 Aug 2011 01:08:37 +0000 (11:08 +1000)]
Merge remote-tracking branch 'rmobile/rmobile-latest'

12 years agoMerge remote-tracking branch 's390/features'
Stephen Rothwell [Tue, 2 Aug 2011 01:07:23 +0000 (11:07 +1000)]
Merge remote-tracking branch 's390/features'

12 years agoMerge remote-tracking branch '52xx-and-virtex/powerpc/next'
Stephen Rothwell [Tue, 2 Aug 2011 01:06:04 +0000 (11:06 +1000)]
Merge remote-tracking branch '52xx-and-virtex/powerpc/next'

12 years agoMerge remote-tracking branch 'parisc/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:04:49 +0000 (11:04 +1000)]
Merge remote-tracking branch 'parisc/for-next'

12 years agoMerge remote-tracking branch 'mips/mips-for-linux-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:03:27 +0000 (11:03 +1000)]
Merge remote-tracking branch 'mips/mips-for-linux-next'

12 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:03:24 +0000 (11:03 +1000)]
Merge remote-tracking branch 'm68knommu/for-next'

12 years agoMerge remote-tracking branch 'ia64/test'
Stephen Rothwell [Tue, 2 Aug 2011 01:03:22 +0000 (11:03 +1000)]
Merge remote-tracking branch 'ia64/test'

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

12 years agoMerge remote-tracking branch 'ux500-core/ux500-core'
Stephen Rothwell [Tue, 2 Aug 2011 01:01:57 +0000 (11:01 +1000)]
Merge remote-tracking branch 'ux500-core/ux500-core'

12 years agoMerge remote-tracking branch 's5p/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 01:00:43 +0000 (11:00 +1000)]
Merge remote-tracking branch 's5p/for-next'

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

12 years agoMerge remote-tracking branch 'msm/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 00:59:16 +0000 (10:59 +1000)]
Merge remote-tracking branch 'msm/for-next'

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

12 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 00:56:00 +0000 (10:56 +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

12 years agoMerge remote-tracking branch 'arm-lpae/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 00:54:27 +0000 (10:54 +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

12 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Tue, 2 Aug 2011 00:53:10 +0000 (10:53 +1000)]
Merge remote-tracking branch 'arm/for-next'

12 years agoMerge remote-tracking branch 'devicetree-current/devicetree/merge'
Stephen Rothwell [Tue, 2 Aug 2011 00:51:52 +0000 (10:51 +1000)]
Merge remote-tracking branch 'devicetree-current/devicetree/merge'

12 years agoMerge remote-tracking branch 'fbdev-current/fbdev-fixes-for-linus'
Stephen Rothwell [Tue, 2 Aug 2011 00:51:49 +0000 (10:51 +1000)]
Merge remote-tracking branch 'fbdev-current/fbdev-fixes-for-linus'

12 years agoMerge remote-tracking branch 'input-current/for-linus'
Stephen Rothwell [Tue, 2 Aug 2011 00:51:36 +0000 (10:51 +1000)]
Merge remote-tracking branch 'input-current/for-linus'

12 years agoMerge remote-tracking branch 'usb.current/usb-linus'
Stephen Rothwell [Tue, 2 Aug 2011 00:51:34 +0000 (10:51 +1000)]
Merge remote-tracking branch 'usb.current/usb-linus'

12 years agoMerge remote-tracking branch 'net-current/master'
Stephen Rothwell [Tue, 2 Aug 2011 00:39:24 +0000 (10:39 +1000)]
Merge remote-tracking branch 'net-current/master'

12 years agoMerge remote-tracking branch 'sparc-current/master'
Stephen Rothwell [Tue, 2 Aug 2011 00:39:22 +0000 (10:39 +1000)]
Merge remote-tracking branch 'sparc-current/master'

12 years agoInitial EXPERIMENTAL implementation of device-mapper thin provisioning
Joe Thornber [Tue, 2 Aug 2011 00:25:31 +0000 (10:25 +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>
12 years agoThe persistent-data library offers a re-usable framework for the storage
Joe Thornber [Tue, 2 Aug 2011 00:25:30 +0000 (10:25 +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>
12 years agoDestroy _minor_idr when unloading the core dm module. (Found by kmemleak.)
Alasdair G Kergon [Tue, 2 Aug 2011 00:25:30 +0000 (10:25 +1000)]
Destroy _minor_idr when unloading the core dm module.  (Found by kmemleak.)

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoDM has always advertised both REQ_FLUSH and REQ_FUA flush capabilities
Mike Snitzer [Tue, 2 Aug 2011 00:25:30 +0000 (10:25 +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>
12 years agoSuppress sparse warnings about cpu_to_le32() by using __le32 types for
Alasdair G Kergon [Tue, 2 Aug 2011 00:25:29 +0000 (10:25 +1000)]
Suppress sparse warnings about cpu_to_le32() by using __le32 types for
on-disk data etc.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoExport dm_get_md() for the new thin provisioning target to use.
Alasdair G Kergon [Tue, 2 Aug 2011 00:25:29 +0000 (10:25 +1000)]
Export dm_get_md() for the new thin provisioning target to use.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoDetect invalid empty messages in core dm instead of requiring every target to
Alasdair G Kergon [Tue, 2 Aug 2011 00:25:29 +0000 (10:25 +1000)]
Detect invalid empty messages in core dm instead of requiring every target to
check this.

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

The thin provisioning target will use this.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoIntroduce the concept of a singleton table which contains exactly one target.
Alasdair G Kergon [Tue, 2 Aug 2011 00:25:28 +0000 (10:25 +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 will use this.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoThere is no need for __table_get_device to be factored out.
Mike Snitzer [Tue, 2 Aug 2011 00:25:28 +0000 (10:25 +1000)]
There is no need for __table_get_device to be factored out.
Also move the exports to the end of their respective functions.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoAdd optional parameter field to dmcrypt table and support
Milan Broz [Tue, 2 Aug 2011 00:25:28 +0000 (10:25 +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>
12 years agoA dm target only needs to use include/linux dm headers.
Alasdair G Kergon [Tue, 2 Aug 2011 00:25:27 +0000 (10:25 +1000)]
A dm target only needs to use include/linux dm headers.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoSupport the MD RAID1 personality through dm-raid.
Jonathan Brassow [Tue, 2 Aug 2011 00:25:27 +0000 (10:25 +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>
12 years agoAdd the ability to parse and use metadata devices to dm-raid. Although
Jonathan Brassow [Tue, 2 Aug 2011 00:25:27 +0000 (10:25 +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>
12 years agoAdd the write_mostly parameter to RAID1 dm-raid tables.
Jonathan Brassow [Tue, 2 Aug 2011 00:25:27 +0000 (10:25 +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>
12 years agoAllow the user to specify the region_size.
Jonathan Brassow [Tue, 2 Aug 2011 00:25:26 +0000 (10:25 +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>
12 years agoAdd more information about some dm-raid table parameters and clarify how
Jonathan Brassow [Tue, 2 Aug 2011 00:25:26 +0000 (10:25 +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>
[Heavily edited by AGK.  Unfinished.]

12 years agoExactly one of name, uuid or device must be specified when referencing
Mikulas Patocka [Tue, 2 Aug 2011 00:25:26 +0000 (10:25 +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>
12 years agoMove logic to find device based on major/minor number to a separate
Mikulas Patocka [Tue, 2 Aug 2011 00:25:26 +0000 (10:25 +1000)]
Move logic to find device based on major/minor number to a separate
function __get_dev_cell (similar to __get_uuid_cell and __get_name_cell).
This makes the function __find_device_hash_cell more straightforward.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoMove parameter filling from find_device to __find_device_hash_cell.
Mikulas Patocka [Tue, 2 Aug 2011 00:25:25 +0000 (10:25 +1000)]
Move parameter filling from find_device to __find_device_hash_cell.

This patch causes ioctls using __find_device_hash_cell
(DM_DEV_REMOVE_CMD, DM_DEV_SUSPEND_CMD - resume, DM_TABLE_CLEAR_CMD)
to return device parameters, bringing them into line with the other
ioctls.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoAdd corrupt_bio_byte feature to simulate corruption by overwriting a byte at a
Mike Snitzer [Tue, 2 Aug 2011 00:25:25 +0000 (10:25 +1000)]
Add corrupt_bio_byte feature to simulate corruption by overwriting a byte at a
specified position with a specified value during intervals when the device is
"down".

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoAdd 'drop_writes' option to drop writes silently while the
Mike Snitzer [Tue, 2 Aug 2011 00:25:25 +0000 (10:25 +1000)]
Add 'drop_writes' option to drop writes silently while the
device is 'down'.  Reads are not touched.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoAdd the ability to specify arbitrary feature flags when creating a
Mike Snitzer [Tue, 2 Aug 2011 00:25:24 +0000 (10:25 +1000)]
Add the ability to specify arbitrary feature flags when creating a
flakey target.  This code uses the same target argument helpers that
the multipath target does.

Also remove the superfluous 'dm-flakey' prefixes from the error messages,
as they already contain the prefix 'flakey'.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
12 years agoUse dm_target_offset() and support discards.
Mike Snitzer [Tue, 2 Aug 2011 00:25:24 +0000 (10:25 +1000)]
Use dm_target_offset() and support discards.

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>