summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2010-06-17 19:22:48 +0200
committerSage Weil <sage@newdream.net>2010-06-17 19:22:48 +0200
commitcebc5be6b6c82a99231e9c9af451e9e3d3399ec6 (patch)
tree5899be89ac6396cb38ca938f922ef0a8ab57d3b3
parentceph: fix message memory leak, uninitialized variable (diff)
downloadlinux-cebc5be6b6c82a99231e9c9af451e9e3d3399ec6.tar.xz
linux-cebc5be6b6c82a99231e9c9af451e9e3d3399ec6.zip
ceph: fix crush map update decoding
If the incremental osdmap has a new crush map, advance the position after decoding so that we can parse the rest of the osdmap properly. Signed-off-by: Sage Weil <sage@newdream.net>
-rw-r--r--fs/ceph/osdmap.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ceph/osdmap.c b/fs/ceph/osdmap.c
index ddc656fb5c05..50ce64ebd330 100644
--- a/fs/ceph/osdmap.c
+++ b/fs/ceph/osdmap.c
@@ -707,6 +707,7 @@ struct ceph_osdmap *osdmap_apply_incremental(void **p, void *end,
newcrush = crush_decode(*p, min(*p+len, end));
if (IS_ERR(newcrush))
return ERR_CAST(newcrush);
+ *p += len;
}
/* new flags? */