aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md
diff options
context:
space:
mode:
authorMike Snitzer <snitzer@redhat.com>2014-11-16 14:21:47 -0500
committerMike Snitzer <snitzer@redhat.com>2014-11-19 11:24:56 -0500
commit4d341d8216336174d35cd2575b6b9e4267a88ac8 (patch)
tree0792adf981d87cd1443e62b3aadeb99bd8b5feca /drivers/md
parent5ec02084f60f1537df850817fb91a16072cba4e7 (diff)
dm: return earlier from dm_blk_ioctl if target doesn't implement .ioctl
No point checking if the device is suspended if the current target doesn't even implement .ioctl Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers/md')
-rw-r--r--drivers/md/dm.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/md/dm.c b/drivers/md/dm.c
index 866ff19aa438..f8cdd97c28a7 100644
--- a/drivers/md/dm.c
+++ b/drivers/md/dm.c
@@ -525,14 +525,15 @@ retry:
525 goto out; 525 goto out;
526 526
527 tgt = dm_table_get_target(map, 0); 527 tgt = dm_table_get_target(map, 0);
528 if (!tgt->type->ioctl)
529 goto out;
528 530
529 if (dm_suspended_md(md)) { 531 if (dm_suspended_md(md)) {
530 r = -EAGAIN; 532 r = -EAGAIN;
531 goto out; 533 goto out;
532 } 534 }
533 535
534 if (tgt->type->ioctl) 536 r = tgt->type->ioctl(tgt, cmd, arg);
535 r = tgt->type->ioctl(tgt, cmd, arg);
536 537
537out: 538out:
538 dm_put_live_table(md, srcu_idx); 539 dm_put_live_table(md, srcu_idx);