• Ilya Dryomov's avatar
    libceph: pg_upmap[_items] infrastructure · 6f428df4
    Ilya Dryomov authored
    pg_temp and pg_upmap encodings are the same (PG -> array of osds),
    except for the incremental remove: it's an empty mapping in new_pg_temp
    for pg_temp and a separate old_pg_upmap set for pg_upmap.  (This isn't
    to allow for empty pg_upmap mappings -- apparently, pg_temp just wasn't
    looked at as an example for pg_upmap encoding.)
    
    Reuse __decode_pg_temp() for decoding pg_upmap and new_pg_upmap.
    __decode_pg_temp() stores into pg_temp union member, but since pg_upmap
    union member is identical, reading through pg_upmap later is OK.
    Signed-off-by: default avatarIlya Dryomov <idryomov@gmail.com>
    6f428df4
debugfs.c 12.6 KB