[dm-devel] [patch] [2.6.12-rc6-mm1] Handle READA requests in dm-mpath.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



READA errors failing with EWOULDBLOCK/EAGAIN do not constitute a valid
reason for failing the path; this lead to erratic errors on DM multipath
devices. This error can be safely propagated upwards without failing the
path.

Acked-by: Kevin Corry <kevcorry@xxxxxxxxxx>
Acked-by: Jens Axboe <axboe@xxxxxxx>
Signed-off-by: Lars Marowsky-Bree <lmb@xxxxxxx>

--- linux-2.6.12-rc6-mm1.orig/drivers/md/dm-mpath.c	2005-06-08 12:51:02.741055000 +0200
+++ linux-2.6.12-rc6-mm1/drivers/md/dm-mpath.c	2005-06-08 12:57:55.757828867 +0200
@@ -985,6 +985,9 @@
 	if (!error)
 		return 0;	/* I/O complete */
 
+	if ((error == -EWOULDBLOCK) && bio_rw_ahead(bio))
+		return error;
+
 	spin_lock(&m->lock);
 	if (!m->nr_valid_paths) {
 		if (!m->queue_if_no_path || m->suspended) {


-- 
High Availability & Clustering
SUSE Labs, Research and Development
SUSE LINUX Products GmbH - A Novell Business	 -- Charles Darwin
"Ignorance more frequently begets confidence than does knowledge"


[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux