NFSv4: Save a few bytes in the nfs_pgio_args/res

Save a few bytes by allowing the read/write specific fields of the
structures to share storage.

Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
This commit is contained in:
Trond Myklebust 2018-09-24 13:15:37 -04:00
parent 8d8928d879
commit 28d52235ee
1 changed files with 17 additions and 7 deletions

View File

@ -608,9 +608,13 @@ struct nfs_pgio_args {
__u32 count;
unsigned int pgbase;
struct page ** pages;
unsigned int replen; /* used by read */
const u32 * bitmask; /* used by write */
enum nfs3_stable_how stable; /* used by write */
union {
unsigned int replen; /* used by read */
struct {
const u32 * bitmask; /* used by write */
enum nfs3_stable_how stable; /* used by write */
};
};
};
struct nfs_pgio_res {
@ -618,10 +622,16 @@ struct nfs_pgio_res {
struct nfs_fattr * fattr;
__u32 count;
__u32 op_status;
int eof; /* used by read */
unsigned int replen; /* used by read */
struct nfs_writeverf * verf; /* used by write */
const struct nfs_server *server; /* used by write */
union {
struct {
unsigned int replen; /* used by read */
int eof; /* used by read */
};
struct {
struct nfs_writeverf * verf; /* used by write */
const struct nfs_server *server; /* used by write */
};
};
};
/*