remarkable-linux/drivers/md
Mike Snitzer 8c0f0e8c9f dm thin: requeue bios to DM core if no_free_space and in read-only mode
Now that we switch the pool to read-only mode when the data device runs
out of space it causes active writers to get IO errors once we resume
after resizing the data device.

If no_free_space is set, save bios to the 'retry_on_resume_list' and
requeue them on resume (once the data or metadata device may have been
resized).

With this patch the resize_io test passes again (on slower storage):
 dmtest run --suite thin-provisioning -n /resize_io/

Later patches fix some subtle races associated with the pool mode
transitions done as part of the pool's -ENOSPC handling.  These races
are exposed on fast storage (e.g. PCIe SSD).

Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Acked-by: Joe Thornber <ejt@redhat.com>
2014-01-07 10:14:29 -05:00
..
bcache bcache: defensively handle format strings 2013-11-10 21:56:43 -08:00
persistent-data dm persistent data: cleanup dm-thin specific references in text 2014-01-07 10:11:54 -05:00
bitmap.c sysfs: clean up sysfs_get_dirent() 2013-09-26 15:33:18 -07:00
bitmap.h
dm-bio-prison.c
dm-bio-prison.h
dm-bio-record.h
dm-bufio.c dm bufio: initialize read-only module parameters 2013-12-10 19:13:20 -05:00
dm-bufio.h
dm-cache-block-types.h
dm-cache-metadata.c dm cache metadata: check the metadata version when reading the superblock 2013-11-11 11:37:49 -05:00
dm-cache-metadata.h dm cache: add passthrough mode 2013-11-11 11:37:49 -05:00
dm-cache-policy-cleaner.c
dm-cache-policy-internal.h dm cache: add remove_cblock method to policy interface 2013-11-11 11:37:50 -05:00
dm-cache-policy-mq.c dm cache policy mq: fix promotions to occur as expected 2013-12-10 16:35:14 -05:00
dm-cache-policy.c dm cache: return -EINVAL if the user specifies unknown cache policy 2013-11-09 18:20:18 -05:00
dm-cache-policy.h dm cache: add remove_cblock method to policy interface 2013-11-11 11:37:50 -05:00
dm-cache-target.c dm cache: actually resize cache 2013-12-10 16:35:15 -05:00
dm-crypt.c tree-wide: use reinit_completion instead of INIT_COMPLETION 2013-11-15 09:32:21 +09:00
dm-delay.c dm delay: use per-bio data instead of a mempool and slab cache 2014-01-07 10:11:45 -05:00
dm-exception-store.c
dm-exception-store.h
dm-flakey.c
dm-io.c
dm-ioctl.c dm: allow remove to be deferred 2013-11-09 18:20:22 -05:00
dm-kcopyd.c
dm-linear.c
dm-log-userspace-base.c
dm-log-userspace-transfer.c
dm-log-userspace-transfer.h
dm-log.c
dm-mpath.c dm mpath: requeue I/O during pg_init 2013-11-05 11:20:34 -05:00
dm-mpath.h
dm-path-selector.c
dm-path-selector.h
dm-queue-length.c
dm-raid.c
dm-raid1.c
dm-region-hash.c
dm-round-robin.c
dm-service-time.c
dm-snap-persistent.c dm snapshot: fix data corruption 2013-10-16 03:17:47 +01:00
dm-snap-transient.c
dm-snap.c dm snapshot: avoid snapshot space leak on crash 2013-12-10 16:34:25 -05:00
dm-stats.c dm stats: initialize read-only module parameter 2013-12-10 19:13:21 -05:00
dm-stats.h
dm-stripe.c
dm-switch.c
dm-sysfs.c
dm-table.c dm table: remove unused buggy code that extends the targets array 2014-01-07 10:11:44 -05:00
dm-target.c
dm-thin-metadata.c dm thin: fix discard support to a previously shared block 2014-01-07 10:11:43 -05:00
dm-thin-metadata.h dm thin: use bool rather than unsigned for flags in structures 2014-01-07 10:14:18 -05:00
dm-thin.c dm thin: requeue bios to DM core if no_free_space and in read-only mode 2014-01-07 10:14:29 -05:00
dm-uevent.c
dm-uevent.h
dm-verity.c
dm-zero.c
dm.c dm: allow remove to be deferred 2013-11-09 18:20:22 -05:00
dm.h dm: allow remove to be deferred 2013-11-09 18:20:22 -05:00
faulty.c
Kconfig dm persistent data: cleanup dm-thin specific references in text 2014-01-07 10:11:54 -05:00
linear.c
linear.h
Makefile
md.c Merge branch 'for-linus' of git://git.kernel.dk/linux-block 2013-12-05 15:33:27 -08:00
md.h Merge branch 'for-3.13/core' of git://git.kernel.dk/linux-block 2013-11-14 12:08:14 +09:00
multipath.c
multipath.h
raid0.c
raid0.h
raid1.c md update for 3.13. 2013-11-20 13:05:25 -08:00
raid1.h raid1: Rewrite the implementation of iobarrier. 2013-11-19 15:19:18 +11:00
raid5.c md/raid5: fix newly-broken locking in get_active_stripe. 2013-11-28 11:00:15 +11:00
raid5.h md update for 3.13. 2013-11-20 13:05:25 -08:00
raid10.c md update for 3.13. 2013-11-20 13:05:25 -08:00
raid10.h