[dm-thin, persistent-data] sm_metadata_new_block wasn't returning errors
[dm-thin] switch to read only mode if a mapping insert fails
Merge branch 'thin-dev' into era
[dm-cache] wip
[dm-cache] Fix bug when resizing the cache

New size was recorded in superblock, but the arrays were not being resized.
[dm-cache] Introduce three new tunables to the mq policy

Internally the mq policy maintains a promotion threshold variable.  If
the count of a block not in the cache goes above this threshold it
gets promoted to the cache.  These tunables allow you to tweak the
promotion threshold by adding a small value.  These adjustments depend
on the io type:

   read_promote_adjustment:    READ io, default 4
   write_promote_adjustment:   WRITE io, default 8
   discard_promote_adjustment: READ/WRITE io to a discarded block, default 1

If you're trying to quickly warm a new cache device you may wish to
reduce these to encourage promotion.  Remember to switch them back to
their defaults after the cache fills though.
[dm, persistent-data] If a space map is asked to decrement a reference count below zero return -EINVAL.

This old behaviour was removed in commit f722063.

This is a serious error, and I think we should put a DMERR in here as
well just to hilight it.

The question of why dm-cache is triggering this still remains to be
solved.
[dm-cache] Fix ref counting bug in shadow_ablock

An old array block could have its reference count decremented below
zero.

The fix is to bump the count up just before inserting a new ablock
into the btree that will overwrite it.
Merge branch 'thin-dev' into era
[dm-era] Work on formatting the metadata