We already have fid as a part of V9fsFidState so use that instead of defining another variable
Signed-off-by: Aneesh Kumar K.V <aneesh.ku...@linux.vnet.ibm.com> Reviewed-by: Venkateswararao Jujjuri <jv...@linux.vnet.ibm.com> --- hw/virtio-9p.c | 62 ++++++++++++++++++++++++++----------------------------- 1 files changed, 29 insertions(+), 33 deletions(-) diff --git a/hw/virtio-9p.c b/hw/virtio-9p.c index 3ce26ca..c8ab6b6 100644 --- a/hw/virtio-9p.c +++ b/hw/virtio-9p.c @@ -770,7 +770,6 @@ out: typedef struct V9fsStatState { V9fsPDU *pdu; size_t offset; - int32_t fid; V9fsStat v9stat; V9fsFidState *fidp; struct stat stbuf; @@ -798,6 +797,7 @@ out: static void v9fs_stat(V9fsState *s, V9fsPDU *pdu) { + int32_t fid; V9fsStatState *vs; ssize_t err = 0; @@ -807,9 +807,9 @@ static void v9fs_stat(V9fsState *s, V9fsPDU *pdu) memset(&vs->v9stat, 0, sizeof(vs->v9stat)); - pdu_unmarshal(vs->pdu, vs->offset, "d", &vs->fid); + pdu_unmarshal(vs->pdu, vs->offset, "d", &fid); - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -ENOENT; goto out; @@ -828,8 +828,6 @@ out: typedef struct V9fsWalkState { V9fsPDU *pdu; size_t offset; - int32_t fid; - int32_t newfid; int16_t nwnames; int name_idx; V9fsQID *qids; @@ -867,7 +865,7 @@ static void v9fs_walk_post_newfid_lstat(V9fsState *s, V9fsWalkState *vs, int err) { if (err == -1) { - free_fid(s, vs->newfid); + free_fid(s, vs->newfidp->fid); v9fs_string_free(&vs->path); err = -ENOENT; goto out; @@ -924,6 +922,7 @@ out: static void v9fs_walk(V9fsState *s, V9fsPDU *pdu) { + int32_t fid, newfid; V9fsWalkState *vs; int err = 0; int i; @@ -934,8 +933,8 @@ static void v9fs_walk(V9fsState *s, V9fsPDU *pdu) vs->qids = NULL; vs->offset = 7; - vs->offset += pdu_unmarshal(vs->pdu, vs->offset, "ddw", &vs->fid, - &vs->newfid, &vs->nwnames); + vs->offset += pdu_unmarshal(vs->pdu, vs->offset, "ddw", &fid, + &newfid, &vs->nwnames); if(vs->nwnames) { vs->wnames = qemu_mallocz(sizeof(vs->wnames[0]) * vs->nwnames); @@ -948,14 +947,14 @@ static void v9fs_walk(V9fsState *s, V9fsPDU *pdu) } } - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -ENOENT; goto out; } /* FIXME: is this really valid? */ - if (vs->fid == vs->newfid) { + if (fid == newfid) { v9fs_string_init(&vs->path); vs->name_idx = 0; @@ -969,7 +968,7 @@ static void v9fs_walk(V9fsState *s, V9fsPDU *pdu) return; } } else { - vs->newfidp = alloc_fid(s, vs->newfid); + vs->newfidp = alloc_fid(s, newfid); if (vs->newfidp == NULL) { err = -EINVAL; goto out; @@ -1000,7 +999,6 @@ out: typedef struct V9fsOpenState { V9fsPDU *pdu; size_t offset; - int32_t fid; int8_t mode; V9fsFidState *fidp; V9fsQID qid; @@ -1105,7 +1103,7 @@ out: static void v9fs_open(V9fsState *s, V9fsPDU *pdu) { - + int32_t fid; V9fsOpenState *vs; ssize_t err = 0; @@ -1114,9 +1112,9 @@ static void v9fs_open(V9fsState *s, V9fsPDU *pdu) vs->pdu = pdu; vs->offset = 7; - pdu_unmarshal(vs->pdu, vs->offset, "db", &vs->fid, &vs->mode); + pdu_unmarshal(vs->pdu, vs->offset, "db", &fid, &vs->mode); - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -ENOENT; goto out; @@ -1183,7 +1181,6 @@ static void print_sg(struct iovec *sg, int cnt) typedef struct V9fsReadState { V9fsPDU *pdu; size_t offset; - int32_t fid; int32_t count; int32_t total; int64_t off; @@ -1346,6 +1343,7 @@ out: static void v9fs_read(V9fsState *s, V9fsPDU *pdu) { + int32_t fid; V9fsReadState *vs; ssize_t err = 0; @@ -1356,9 +1354,9 @@ static void v9fs_read(V9fsState *s, V9fsPDU *pdu) vs->len = 0; vs->count = 0; - pdu_unmarshal(vs->pdu, vs->offset, "dqd", &vs->fid, &vs->off, &vs->count); + pdu_unmarshal(vs->pdu, vs->offset, "dqd", &fid, &vs->off, &vs->count); - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -EINVAL; goto out; @@ -1407,7 +1405,6 @@ out: typedef struct V9fsWriteState { V9fsPDU *pdu; size_t offset; - int32_t fid; int32_t len; int32_t count; int32_t total; @@ -1476,6 +1473,7 @@ out: static void v9fs_write(V9fsState *s, V9fsPDU *pdu) { + int32_t fid; V9fsWriteState *vs; ssize_t err; @@ -1487,10 +1485,10 @@ static void v9fs_write(V9fsState *s, V9fsPDU *pdu) vs->total = 0; vs->len = 0; - pdu_unmarshal(vs->pdu, vs->offset, "dqdv", &vs->fid, &vs->off, &vs->count, + pdu_unmarshal(vs->pdu, vs->offset, "dqdv", &fid, &vs->off, &vs->count, vs->sg, &vs->cnt); - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -EINVAL; goto out; @@ -1514,7 +1512,6 @@ out: typedef struct V9fsCreateState { V9fsPDU *pdu; size_t offset; - int32_t fid; V9fsFidState *fidp; V9fsQID qid; int32_t perm; @@ -1652,12 +1649,10 @@ static void v9fs_create_post_lstat(V9fsState *s, V9fsCreateState *vs, int err) } else if (vs->perm & P9_STAT_MODE_LINK) { int32_t nfid = atoi(vs->extension.data); V9fsFidState *nfidp = lookup_fid(s, nfid); - if (nfidp == NULL) { err = -errno; v9fs_post_create(s, vs, err); } - err = posix_link(s, &nfidp->path, &vs->fullname); v9fs_create_post_perms(s, vs, err); } else if (vs->perm & P9_STAT_MODE_DEVICE) { @@ -1707,6 +1702,7 @@ out: static void v9fs_create(V9fsState *s, V9fsPDU *pdu) { + int32_t fid; V9fsCreateState *vs; int err = 0; @@ -1716,10 +1712,10 @@ static void v9fs_create(V9fsState *s, V9fsPDU *pdu) v9fs_string_init(&vs->fullname); - pdu_unmarshal(vs->pdu, vs->offset, "dsdbs", &vs->fid, &vs->name, + pdu_unmarshal(vs->pdu, vs->offset, "dsdbs", &fid, &vs->name, &vs->perm, &vs->mode, &vs->extension); - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -EINVAL; goto out; @@ -1749,7 +1745,6 @@ static void v9fs_flush(V9fsState *s, V9fsPDU *pdu) typedef struct V9fsRemoveState { V9fsPDU *pdu; size_t offset; - int32_t fid; V9fsFidState *fidp; } V9fsRemoveState; @@ -1761,7 +1756,7 @@ static void v9fs_remove_post_remove(V9fsState *s, V9fsRemoveState *vs, goto out; } - err = free_fid(s, vs->fid); + err = free_fid(s, vs->fidp->fid); if (err < 0) goto out; @@ -1773,6 +1768,7 @@ out: static void v9fs_remove(V9fsState *s, V9fsPDU *pdu) { + int32_t fid; V9fsRemoveState *vs; int err = 0; @@ -1780,9 +1776,9 @@ static void v9fs_remove(V9fsState *s, V9fsPDU *pdu) vs->pdu = pdu; vs->offset = 7; - pdu_unmarshal(vs->pdu, vs->offset, "d", &vs->fid); + pdu_unmarshal(vs->pdu, vs->offset, "d", &fid); - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -EINVAL; goto out; @@ -1837,7 +1833,6 @@ typedef struct V9fsWstatState { V9fsPDU *pdu; size_t offset; - int32_t fid; int16_t unused; V9fsStat v9stat; V9fsFidState *fidp; @@ -2002,6 +1997,7 @@ static int donttouch_stat(V9fsStat *stat) static void v9fs_wstat(V9fsState *s, V9fsPDU *pdu) { + int32_t fid; V9fsWstatState *vs; int err = 0; @@ -2009,9 +2005,9 @@ static void v9fs_wstat(V9fsState *s, V9fsPDU *pdu) vs->pdu = pdu; vs->offset = 7; - pdu_unmarshal(pdu, vs->offset, "dwS", &vs->fid, &vs->unused, &vs->v9stat); + pdu_unmarshal(pdu, vs->offset, "dwS", &fid, &vs->unused, &vs->v9stat); - vs->fidp = lookup_fid(s, vs->fid); + vs->fidp = lookup_fid(s, fid); if (vs->fidp == NULL) { err = -EINVAL; goto out; -- 1.7.0.2.273.gc2413