struct ceph_pg_mapping {
        struct rb_node node;
-       struct ceph_pg pgid;
+       struct ceph_pg_v1 pgid;
        int len;
        int osds[];
 };
                                   const char *oid,
                                   struct ceph_file_layout *fl,
                                   struct ceph_osdmap *osdmap);
-extern int ceph_calc_pg_acting(struct ceph_osdmap *osdmap, struct ceph_pg pgid,
+extern int ceph_calc_pg_acting(struct ceph_osdmap *osdmap,
+                              struct ceph_pg_v1 pgid,
                               int *acting);
 extern int ceph_calc_pg_primary(struct ceph_osdmap *osdmap,
-                               struct ceph_pg pgid);
+                               struct ceph_pg_v1 pgid);
 
 extern const char *ceph_pg_pool_name_by_id(struct ceph_osdmap *map, u64 id);
 extern int ceph_pg_poolid_by_name(struct ceph_osdmap *map, const char *name);
 
  * placement group.
  * we encode this into one __le64.
  */
-struct ceph_pg {
+struct ceph_pg_v1 {
        __le16 preferred; /* preferred primary osd */
        __le16 ps;        /* placement seed */
        __le32 pool;      /* object pool */
  * object layout - how a given object should be stored.
  */
 struct ceph_object_layout {
-       struct ceph_pg ol_pgid;   /* raw pg, with _full_ ps precision. */
+       struct ceph_pg_v1 ol_pgid;   /* raw pg, with _full_ ps precision. */
        __le32 ol_stripe_unit;    /* for per-object parity, if any */
 } __attribute__ ((packed));
 
 
  * rbtree of pg_mapping for handling pg_temp (explicit mapping of pgid
  * to a set of osds)
  */
-static int pgid_cmp(struct ceph_pg l, struct ceph_pg r)
+static int pgid_cmp(struct ceph_pg_v1 l, struct ceph_pg_v1 r)
 {
        u64 a = *(u64 *)&l;
        u64 b = *(u64 *)&r;
 }
 
 static struct ceph_pg_mapping *__lookup_pg_mapping(struct rb_root *root,
-                                                  struct ceph_pg pgid)
+                                                  struct ceph_pg_v1 pgid)
 {
        struct rb_node *n = root->rb_node;
        struct ceph_pg_mapping *pg;
        return NULL;
 }
 
-static int __remove_pg_mapping(struct rb_root *root, struct ceph_pg pgid)
+static int __remove_pg_mapping(struct rb_root *root, struct ceph_pg_v1 pgid)
 {
        struct ceph_pg_mapping *pg = __lookup_pg_mapping(root, pgid);
 
        ceph_decode_32_safe(p, end, len, bad);
        for (i = 0; i < len; i++) {
                int n, j;
-               struct ceph_pg pgid;
+               struct ceph_pg_v1 pgid;
                struct ceph_pg_mapping *pg;
 
                ceph_decode_need(p, end, sizeof(u32) + sizeof(u64), bad);
        while (len--) {
                struct ceph_pg_mapping *pg;
                int j;
-               struct ceph_pg pgid;
+               struct ceph_pg_v1 pgid;
                u32 pglen;
                ceph_decode_need(p, end, sizeof(u64) + sizeof(u32), bad);
                ceph_decode_copy(p, &pgid, sizeof(pgid));
                            struct ceph_osdmap *osdmap)
 {
        unsigned int num, num_mask;
-       struct ceph_pg pgid;
+       struct ceph_pg_v1 pgid;
        int poolid = le32_to_cpu(fl->fl_pg_pool);
        struct ceph_pg_pool_info *pool;
        unsigned int ps;
  * Calculate raw osd vector for the given pgid.  Return pointer to osd
  * array, or NULL on failure.
  */
-static int *calc_pg_raw(struct ceph_osdmap *osdmap, struct ceph_pg pgid,
+static int *calc_pg_raw(struct ceph_osdmap *osdmap, struct ceph_pg_v1 pgid,
                        int *osds, int *num)
 {
        struct ceph_pg_mapping *pg;
 /*
  * Return acting set for given pgid.
  */
-int ceph_calc_pg_acting(struct ceph_osdmap *osdmap, struct ceph_pg pgid,
+int ceph_calc_pg_acting(struct ceph_osdmap *osdmap, struct ceph_pg_v1 pgid,
                        int *acting)
 {
        int rawosds[CEPH_PG_MAX_SIZE], *osds;
 /*
  * Return primary osd for given pgid, or -1 if none.
  */
-int ceph_calc_pg_primary(struct ceph_osdmap *osdmap, struct ceph_pg pgid)
+int ceph_calc_pg_primary(struct ceph_osdmap *osdmap, struct ceph_pg_v1 pgid)
 {
        int rawosds[CEPH_PG_MAX_SIZE], *osds;
        int i, num = CEPH_PG_MAX_SIZE;