aboutsummaryrefslogtreecommitdiff
path: root/tests/qtest/virtio-9p-test.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/qtest/virtio-9p-test.c')
-rw-r--r--tests/qtest/virtio-9p-test.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/tests/qtest/virtio-9p-test.c b/tests/qtest/virtio-9p-test.c
index 6401d4f564..92d12f5e02 100644
--- a/tests/qtest/virtio-9p-test.c
+++ b/tests/qtest/virtio-9p-test.c
@@ -567,10 +567,8 @@ static void v9fs_rflush(P9Req *req)
v9fs_req_free(req);
}
-static void fs_version(void *obj, void *data, QGuestAllocator *t_alloc)
+static void do_version(QVirtio9P *v9p)
{
- QVirtio9P *v9p = obj;
- alloc = t_alloc;
const char *version = "9P2000.L";
uint16_t server_len;
char *server_version;
@@ -585,13 +583,19 @@ static void fs_version(void *obj, void *data, QGuestAllocator *t_alloc)
g_free(server_version);
}
+static void fs_version(void *obj, void *data, QGuestAllocator *t_alloc)
+{
+ alloc = t_alloc;
+ do_version(obj);
+}
+
static void fs_attach(void *obj, void *data, QGuestAllocator *t_alloc)
{
QVirtio9P *v9p = obj;
alloc = t_alloc;
P9Req *req;
- fs_version(v9p, NULL, t_alloc);
+ do_version(v9p);
req = v9fs_tattach(v9p, 0, getuid(), 0);
v9fs_req_wait_for_reply(req, NULL);
v9fs_rattach(req, NULL);
@@ -831,7 +835,7 @@ static void fs_walk_dotdot(void *obj, void *data, QGuestAllocator *t_alloc)
v9fs_qid root_qid, *wqid;
P9Req *req;
- fs_version(v9p, NULL, t_alloc);
+ do_version(v9p);
req = v9fs_tattach(v9p, 0, getuid(), 0);
v9fs_req_wait_for_reply(req, NULL);
v9fs_rattach(req, &root_qid);