summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Elder <elder@inktank.com>2012-10-10 21:19:13 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-01-17 08:46:48 -0800
commit38f14fd492d3a7d2d096795f2e457d556a6b2f95 (patch)
tree2db9d6d4e5758383f898d59227fee85d802ed400
parent4de98b629ee84b800da6f4a5f8b0f4cfba3a7e3c (diff)
rbd: fix bug in rbd_dev_id_put()
(cherry picked from commit b213e0b1a62637b2a9395a34349b13d73ca2b90a) In rbd_dev_id_put(), there's a loop that's intended to determine the maximum device id in use. But it isn't doing that at all, the effect of how it's written is to simply use the just-put id number, which ignores whole purpose of this function. Fix the bug. Signed-off-by: Alex Elder <elder@inktank.com> Reviewed-by: Josh Durgin <josh.durgin@inktank.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/block/rbd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index bb3d9be3b1b4..37d928f573e4 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -2621,8 +2621,8 @@ static void rbd_dev_id_put(struct rbd_device *rbd_dev)
struct rbd_device *rbd_dev;
rbd_dev = list_entry(tmp, struct rbd_device, node);
- if (rbd_id > max_id)
- max_id = rbd_id;
+ if (rbd_dev->dev_id > max_id)
+ max_id = rbd_dev->dev_id;
}
spin_unlock(&rbd_dev_list_lock);