libceph: allow STAT osd operations
authorAlex Elder <elder@inktank.com>
Fri, 8 Feb 2013 15:55:48 +0000 (09:55 -0600)
committerAlex Elder <elder@inktank.com>
Wed, 20 Feb 2013 01:14:03 +0000 (19:14 -0600)
commitfbfab53966b279f9cdb36b96ffa1e22f042c96ff
tree4f3acf06a4dd61eeeee16119b5f65290c4200bde
parentef06f4d32ae5b656f17b53ee3f3c43471a11cc73
libceph: allow STAT osd operations

Add support for CEPH_OSD_OP_STAT operations in the osd client
and in rbd.

This operation sends no data to the osd; everything required is
encoded in identity of the target object.

The result will be ENOENT if the object doesn't exist.  If it does
exist and no other error occurs the server returns the size and last
modification time of the target object as output data (in little
endian format).  The size is a 64 bit unsigned and the time is
ceph_timespec structure (two unsigned 32-bit integers, representing
a seconds and nanoseconds value).

This resolves:
    http://tracker.ceph.com/issues/4007

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