diff options
Diffstat (limited to 'drivers/md/multipath.c')
| -rw-r--r-- | drivers/md/multipath.c | 31 | 
1 files changed, 0 insertions, 31 deletions
diff --git a/drivers/md/multipath.c b/drivers/md/multipath.c index 6d7ddf32ef2..1cc8ed44e4a 100644 --- a/drivers/md/multipath.c +++ b/drivers/md/multipath.c @@ -106,36 +106,6 @@ static void multipath_end_request(struct bio *bio, int error)  	rdev_dec_pending(rdev, conf->mddev);  } -static void unplug_slaves(mddev_t *mddev) -{ -	multipath_conf_t *conf = mddev->private; -	int i; - -	rcu_read_lock(); -	for (i=0; i<mddev->raid_disks; i++) { -		mdk_rdev_t *rdev = rcu_dereference(conf->multipaths[i].rdev); -		if (rdev && !test_bit(Faulty, &rdev->flags) -		    && atomic_read(&rdev->nr_pending)) { -			struct request_queue *r_queue = bdev_get_queue(rdev->bdev); - -			atomic_inc(&rdev->nr_pending); -			rcu_read_unlock(); - -			blk_unplug(r_queue); - -			rdev_dec_pending(rdev, mddev); -			rcu_read_lock(); -		} -	} -	rcu_read_unlock(); -} - -static void multipath_unplug(struct request_queue *q) -{ -	unplug_slaves(q->queuedata); -} - -  static int multipath_make_request(mddev_t *mddev, struct bio * bio)  {  	multipath_conf_t *conf = mddev->private; @@ -518,7 +488,6 @@ static int multipath_run (mddev_t *mddev)  	 */  	md_set_array_sectors(mddev, multipath_size(mddev, 0, 0)); -	mddev->queue->unplug_fn = multipath_unplug;  	mddev->queue->backing_dev_info.congested_fn = multipath_congested;  	mddev->queue->backing_dev_info.congested_data = mddev;  	md_integrity_register(mddev);  |