deleg: fix for attributes in CB_GETATTR
CB_GETATTR specifies the delegation by filehandle, but deleg_fh_cmp() was comparing superblock and fileid. renamed deleg_fh_cmp() to deleg_file_cmp(), and created new deleg_fh_cmp() to compare actual filehandles call to nfs41_attr_cache_lookup() was not setting flags in info.attrmask, so the change and size attributes were not being encoded in the CB_GETATTR response Signed-off-by: Casey Bodley <cbodley@citi.umich.edu>
This commit is contained in:
parent
103124377a
commit
a085a8979b
2 changed files with 20 additions and 5 deletions
|
|
@ -337,6 +337,13 @@ static void copy_attrs(
|
|||
dst->numlinks = src->numlinks;
|
||||
dst->mode = src->mode;
|
||||
dst->fileid = src->fileid;
|
||||
|
||||
dst->attrmask.count = 2;
|
||||
dst->attrmask.arr[0] = FATTR4_WORD0_TYPE | FATTR4_WORD0_CHANGE
|
||||
| FATTR4_WORD0_SIZE | FATTR4_WORD0_FILEID;
|
||||
dst->attrmask.arr[1] = FATTR4_WORD1_MODE
|
||||
| FATTR4_WORD1_NUMLINKS | FATTR4_WORD1_TIME_ACCESS
|
||||
| FATTR4_WORD1_TIME_CREATE | FATTR4_WORD1_TIME_MODIFY;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue