Commit 8495f9ad authored by Li Qiang's avatar Li Qiang Committed by Greg Kurz
Browse files

9pfs: convert 'len/copied_len' field in V9fsXattr to the type of uint64_t



The 'len' in V9fsXattr comes from the 'size' argument in setxattr()
function in guest. The setxattr() function's declaration is this:

int setxattr(const char *path, const char *name,
             const void *value, size_t size, int flags);

and 'size' is treated as u64 in linux kernel client code:

int p9_client_xattrcreate(struct p9_fid *fid, const char *name,
                          u64 attr_size, int flags)

So the 'len' should have an type of 'uint64_t'.
The 'copied_len' in V9fsXattr is used to account for copied bytes, it
should also have an type of 'uint64_t'.

Suggested-by: default avatarGreg Kurz <groug@kaod.org>
Signed-off-by: default avatarLi Qiang <liqiang6-s@360.cn>
Reviewed-by: default avatarGreg Kurz <groug@kaod.org>
Signed-off-by: default avatarGreg Kurz <groug@kaod.org>
parent dd28fbbc
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -159,8 +159,8 @@ typedef struct V9fsConf

typedef struct V9fsXattr
{
    int64_t copied_len;
    int64_t len;
    uint64_t copied_len;
    uint64_t len;
    void *value;
    V9fsString name;
    int flags;