linux/include
Mike Snitzer a63a5cf84d dm: improve block integrity support
The current block integrity (DIF/DIX) support in DM is verifying that
all devices' integrity profiles match during DM device resume (which
is past the point of no return).  To some degree that is unavoidable
(stacked DM devices force this late checking).  But for most DM
devices (which aren't stacking on other DM devices) the ideal time to
verify all integrity profiles match is during table load.

Introduce the notion of an "initialized" integrity profile: a profile
that was blk_integrity_register()'d with a non-NULL 'blk_integrity'
template.  Add blk_integrity_is_initialized() to allow checking if a
profile was initialized.

Update DM integrity support to:
- check all devices with _initialized_ integrity profiles match
  during table load; uninitialized profiles (e.g. for underlying DM
  device(s) of a stacked DM device) are ignored.
- disallow a table load that would result in an integrity profile that
  conflicts with a DM device's existing (in-use) integrity profile
- avoid clearing an existing integrity profile
- validate all integrity profiles match during resume; but if they
  don't all we can do is report the mismatch (during resume we're past
  the point of no return)

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Cc: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2011-04-05 23:52:43 +02:00
..
acpi Merge branch 'linus' into release 2011-03-23 02:34:54 -04:00
asm-generic WARN_ON_SMP(): Add comment to explain ({0;}) 2011-03-28 10:10:42 -04:00
crypto
drm drm: fix "persistant" typo 2011-04-05 10:22:23 +10:00
keys libceph: Create a new key type "ceph". 2011-03-29 12:11:24 -07:00
linux dm: improve block integrity support 2011-04-05 23:52:43 +02:00
math-emu
media [media] videobuf2-dma-contig: make cookie() return a pointer to dma_addr_t 2011-03-22 19:41:58 -03:00
mtd
net net: gre: provide multicast mappings for ipv4 and ipv6 2011-03-30 00:10:47 -07:00
pcmcia
rdma
rxrpc
scsi [SCSI] libiscsi_tcp: use kmap in xmit path 2011-03-23 11:36:58 -05:00
sound Merge branch 'for-2.6.39' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into fix/asoc 2011-03-28 13:02:29 +02:00
staging [media] Altera FPGA firmware download module 2011-03-21 20:32:16 -03:00
target [SCSI] target: add initial statistics 2011-03-23 11:36:50 -05:00
trace Merge branch 'for-linus-unmerged' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable 2011-03-28 15:31:05 -07:00
video atmel_lcdfb: implement inverted contrast pwm 2011-03-22 16:23:44 +09:00
xen Merge branch 'stable/xen.pm.bug-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen 2011-03-17 18:37:42 -07:00
Kbuild