• Jeff Layton's avatar
    ceph: implement updated ceph_mds_request_head structure · 4f1ddb1e
    Jeff Layton authored
    When we added the btime feature in mainline ceph, we had to extend
    struct ceph_mds_request_args so that it could be set. Implement the same
    in the kernel client.
    
    Rename ceph_mds_request_head with a _old extension, and a union
    ceph_mds_request_args_ext to allow for the extended size of the new
    header format.
    
    Add the appropriate code to handle both formats in struct
    create_request_message and key the behavior on whether the peer supports
    CEPH_FEATURE_FS_BTIME.
    
    The gid_list field in the payload is now populated from the saved
    credential. For now, we don't add any support for setting the btime via
    setattr, but this does enable us to add that in the future.
    
    [ idryomov: break unnecessarily long lines ]
    Signed-off-by: default avatarJeff Layton <jlayton@kernel.org>
    Reviewed-by: default avatarXiubo Li <xiubli@redhat.com>
    Signed-off-by: default avatarIlya Dryomov <idryomov@gmail.com>
    4f1ddb1e
mds_client.c 134 KB