[dm-devel] dm-cache refusing to come up again after a crash

Joe Thornber thornber at redhat.com
Fri Dec 6 17:57:13 UTC 2013


On Fri, Dec 06, 2013 at 04:49:14PM +0100, Steinar H. Gunderson wrote:
> Linux (3.12.0-rc5) hung, and on boot, I can't get the dm-cache up again:
> 
> (initramfs) echo 0 23440891904 cache /dev/cache/metadata /dev/cache/blocks /dev/md1 1024 1 writeback
> default 4 random_threshold 8 sequential_threshold 512 | dmsetup create cache -u CACHE-0a8bb56fc873c195bf7117af925c7f08
> device-mapper: reload ioctl on cache failed: Input/output error
> Command failed
> 
> The kernel complains with
> 
> [  639.189756] attempt to access beyond end of device
> [  639.189761] dm-0: rw=0, want=18445688752888627208, limit=1048576
> [  639.189764] device-mapper: transaction manager: couldn't open metadata space map
> [  639.189767] device-mapper: cache metadata: tm_open_with_sm failed
> [  639.283130] device-mapper: table: 254:2: cache: Error creating metadata object
> [  639.283134] device-mapper: ioctl: error adding target to table
> 
> Is there anything I can do short of nuking the metadata partition
> and taking the loss of whatever wasn't written back?

Yep, grab:

https://github.com/jthornber/thin-provisioning-tools

build, and then try cache_check on it (which should tell you what's
wrong).  Other programs to play with are cache_dump, cache_restore and
cache_repair.

Let me know how it goes,

- Joe




More information about the dm-devel mailing list