5 The variant of the 'mdt_rec_reint' for the 'setattr' operation is:
8 struct mdt_rec_setattr {
30 __u32 sa_bias; /* some operation flags */
37 The 'setattr' variant modifies the semantics of the generic REINT
40 There is only one FID to be operated upon, and the 'sa_valid',
41 'sa_uid', and 'sa_gid' values take the place of the second 'struct
44 The 'sa_valid' field identifies which of the other fields in the
45 structure are to be honored. If the corresponding flag bit is not set
46 then the value of the corresponding field is to be ignored. The flags
50 #define MDS_ATTR_MODE 0x1ULL /* = 1 */
51 #define MDS_ATTR_UID 0x2ULL /* = 2 */
52 #define MDS_ATTR_GID 0x4ULL /* = 4 */
53 #define MDS_ATTR_SIZE 0x8ULL /* = 8 */
54 #define MDS_ATTR_ATIME 0x10ULL /* = 16 */
55 #define MDS_ATTR_MTIME 0x20ULL /* = 32 */
56 #define MDS_ATTR_CTIME 0x40ULL /* = 64 */
57 #define MDS_ATTR_ATIME_SET 0x80ULL /* = 128 */
58 #define MDS_ATTR_MTIME_SET 0x100ULL /* = 256 */
59 #define MDS_ATTR_FORCE 0x200ULL /* = 512 */
60 #define MDS_ATTR_ATTR_FLAG 0x400ULL /* = 1024 */
61 #define MDS_ATTR_KILL_SUID 0x800ULL /* = 2048 */
62 #define MDS_ATTR_KILL_SGID 0x1000ULL /* = 4096 */
63 #define MDS_ATTR_CTIME_SET 0x2000ULL /* = 8192 */
64 #define MDS_ATTR_FROM_OPEN 0x4000ULL /* = 16384 */
65 #define MDS_ATTR_BLOCKS 0x8000ULL /* = 32768 */
68 The 'sa_uid' and 'sa_gid' fields give the values of the UID and GID
69 attributes, respectively, to be set on the target resource.
71 There is no umask for the 'setattr' variant, and no high order bytes
72 for the flags attribute. Otherwise, the order of the attributes is
73 different in the structure, but their semantics remains the same as for