summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorWill Cohen2022-02-27 23:35:21 +0100
committerChristian Schoenebeck2022-03-07 11:49:31 +0100
commitd3671fd972cd185a6923433aa4802f54d8b62112 (patch)
tree34c9a3f2cec225382fbc42f599096f32e7352874 /tests
parent9p: darwin: Implement compatibility for mknodat (diff)
downloadqemu-d3671fd972cd185a6923433aa4802f54d8b62112.tar.gz
qemu-d3671fd972cd185a6923433aa4802f54d8b62112.tar.xz
qemu-d3671fd972cd185a6923433aa4802f54d8b62112.zip
9p: darwin: Adjust assumption on virtio-9p-test
The previous test depended on the assumption that P9_DOTL_AT_REMOVEDIR and AT_REMOVEDIR have the same value. While this is true on Linux, it is not true everywhere, and leads to an incorrect test failure on unlink_at, noticed when adding 9p to darwin: Received response 7 (RLERROR) instead of 77 (RUNLINKAT) Rlerror has errno 22 (Invalid argument) ** ERROR:../tests/qtest/virtio-9p-test.c:305:v9fs_req_recv: assertion failed (hdr.id == id): (7 == 77) Bail out! ERROR:../tests/qtest/virtio-9p-test.c:305:v9fs_req_recv: assertion failed (hdr.id == id): (7 == 77) Signed-off-by: Fabian Franz <fabianfranz.oss@gmail.com> [Will Cohen: - Add explanation of patch and description of pre-patch test failure] Signed-off-by: Will Cohen <wwcohen@gmail.com> Acked-by: Thomas Huth <thuth@redhat.com> [Will Cohen: - Move this patch before 9p: darwin: meson patch to avoid qtest breakage during bisecting] Signed-off-by: Will Cohen <wwcohen@gmail.com> Reviewed-by: Greg Kurz <groug@kaod.org> Message-Id: <20220227223522.91937-11-wwcohen@gmail.com> Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/qtest/virtio-9p-test.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/qtest/virtio-9p-test.c b/tests/qtest/virtio-9p-test.c
index 502e5ad0c7..01ca076afe 100644
--- a/tests/qtest/virtio-9p-test.c
+++ b/tests/qtest/virtio-9p-test.c
@@ -1253,7 +1253,7 @@ static void fs_unlinkat_dir(void *obj, void *data, QGuestAllocator *t_alloc)
/* ... and is actually a directory */
g_assert((st.st_mode & S_IFMT) == S_IFDIR);
- do_unlinkat(v9p, "/", "02", AT_REMOVEDIR);
+ do_unlinkat(v9p, "/", "02", P9_DOTL_AT_REMOVEDIR);
/* directory should be gone now */
g_assert(stat(new_dir, &st) != 0);
}