ceph: fix crush map update decoding
authorSage Weil <sage@newdream.net>
Thu, 17 Jun 2010 17:22:48 +0000 (10:22 -0700)
committerSage Weil <sage@newdream.net>
Thu, 17 Jun 2010 17:22:48 +0000 (10:22 -0700)
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>
fs/ceph/osdmap.c

index ddc656fb5c059aa865aac8b45550d33c7e1635da..50ce64ebd3301eb24cf358ca7d6c1cdb6c0fe444 100644 (file)
@@ -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? */