rbd: separate reading header from decoding it
authorAlex Elder <elder@inktank.com>
Thu, 2 Aug 2012 16:29:46 +0000 (11:29 -0500)
committerAlex Elder <elder@inktank.com>
Mon, 1 Oct 2012 19:30:49 +0000 (14:30 -0500)
commit4156d998409be065aa8141b6bd2c6f18be1b21e9
treea7ba73b249097f4e836b7582bf0785a477dc162a
parent103a150f0cc57576b1c4b80bf07af60a14349eee
rbd: separate reading header from decoding it

Right now rbd_read_header() both reads the header object for an rbd
image and decodes its contents.  It does this repeatedly if needed,
in order to ensure a complete and intact header is obtained.

Separate this process into two steps--reading of the raw header
data (in new function, rbd_dev_v1_header_read()) and separately
decoding its contents (in rbd_header_from_disk()).  As a result,
the latter function no longer requires its allocated_snaps argument.

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
drivers/block/rbd.c