Add decoding support for some commonly exchanged data structures. Adapt Mike's code to serve as a generic client for cls::lock in userspace. Discussion points: Is this how we want to represent object classes in the kernel client? This defines ceph_locker to contain ceph_locker_id and ceph_locker_info from userspace. Is that what we want for adaptation of userspace data structures (in this case std::map<locker_id_t, locker_info_t>)? There are quite a few strings in these data structures. Do we want to add utility functions to properly free them at some level? Douglas Fuller (4): auth.c: added ceph_entity_name_encode osd_client: added single object method call cls_lock: add rados locking cls_lock: add support for lock_info Mike Christie (2): Add support for userspace ceph DECODE_START. ceph: add start/finish encoding helpers include/linux/ceph/auth.h | 2 + include/linux/ceph/cls_lock.h | 39 +++++ include/linux/ceph/decode.h | 78 ++++++++++ include/linux/ceph/osd_client.h | 6 + net/ceph/Makefile | 1 + net/ceph/auth.c | 11 ++ net/ceph/cls_lock.c | 329 ++++++++++++++++++++++++++++++++++++++++ net/ceph/osd_client.c | 44 ++++++ 8 files changed, 510 insertions(+) create mode 100644 include/linux/ceph/cls_lock.h create mode 100644 net/ceph/cls_lock.c -- 1.9.3 -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html