volume: cache volume attr results with vnetroot
moved the FileSystemName definition back down to the kernel, so the daemon is no longer responsible for setting it. the driver uses the string length to calculate the buffer size needed for NFS41_V_NET_ROOT_EXTENSION.FsAttrs, and copies in the FileSystemName after the first successful volume attributes upcall Signed-off-by: Casey Bodley <cbodley@umich.edu>
This commit is contained in:
parent
25ef4d25bb
commit
827a1b7368
4 changed files with 49 additions and 29 deletions
|
|
@ -141,12 +141,6 @@ typedef struct __volume_upcall_args {
|
|||
FILE_FS_SIZE_INFORMATION size;
|
||||
FILE_FS_FULL_SIZE_INFORMATION fullsize;
|
||||
FILE_FS_ATTRIBUTE_INFORMATION attribute;
|
||||
|
||||
/* attribute.FileSystemName is WCHAR[1], so even though there's
|
||||
* some extra space in the union from other members, reserve
|
||||
* enough space for an arbitrary NFS41_FILESYSTEM_NAME_LEN */
|
||||
unsigned char buffer[sizeof(FILE_FS_ATTRIBUTE_INFORMATION) +
|
||||
NFS41_FILESYSTEM_NAME_LEN];
|
||||
} info;
|
||||
} volume_upcall_args;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue