mirror of https://github.com/xemu-project/xemu.git
9pfs: drop fid_to_qid()
There is only one user of fid_to_qid() which is v9fs_walk(). Let's open-code fid_to_qid() directly within v9fs_walk(), because fid_to_qid() hides the POSIX stat buffer which we are going to need in the subsequent patch. Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com> Reviewed-by: Greg Kurz <groug@kaod.org> Message-Id: <e9a4c9c7a0792ed4db6578d105a0823ea05bc324.1622821729.git.qemu_oss@crudebyte.com>
This commit is contained in:
parent
110243750d
commit
1d0fc0d0ee
23
hw/9pfs/9p.c
23
hw/9pfs/9p.c
|
@ -971,23 +971,6 @@ static int stat_to_qid(V9fsPDU *pdu, const struct stat *stbuf, V9fsQID *qidp)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int coroutine_fn fid_to_qid(V9fsPDU *pdu, V9fsFidState *fidp,
|
|
||||||
V9fsQID *qidp)
|
|
||||||
{
|
|
||||||
struct stat stbuf;
|
|
||||||
int err;
|
|
||||||
|
|
||||||
err = v9fs_co_lstat(pdu, &fidp->path, &stbuf);
|
|
||||||
if (err < 0) {
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
err = stat_to_qid(pdu, &stbuf, qidp);
|
|
||||||
if (err < 0) {
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
V9fsPDU *pdu_alloc(V9fsState *s)
|
V9fsPDU *pdu_alloc(V9fsState *s)
|
||||||
{
|
{
|
||||||
V9fsPDU *pdu = NULL;
|
V9fsPDU *pdu = NULL;
|
||||||
|
@ -1772,7 +1755,11 @@ static void coroutine_fn v9fs_walk(void *opaque)
|
||||||
v9fs_path_init(&dpath);
|
v9fs_path_init(&dpath);
|
||||||
v9fs_path_init(&path);
|
v9fs_path_init(&path);
|
||||||
|
|
||||||
err = fid_to_qid(pdu, fidp, &qid);
|
err = v9fs_co_lstat(pdu, &fidp->path, &stbuf);
|
||||||
|
if (err < 0) {
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
err = stat_to_qid(pdu, &stbuf, &qid);
|
||||||
if (err < 0) {
|
if (err < 0) {
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue