On Mon, 2 Jan 2017 16:23:09 +0000 Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote: > > What I'd like to see is a log of 9p traffic in those; to hell with the > payloads, just the type and tag of from each message [...] Thanks for the suggestions. With the following patch to QEMU: diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index aea7e9d..8a6b426 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -662,6 +662,7 @@ static void coroutine_fn pdu_complete(V9fsPDU *pdu, ssize_t len) /* fill out the header */ pdu_marshal(pdu, 0, "dbw", (int32_t)len, id, pdu->tag); + fprintf(stderr, "complete %d %04x\n", id, pdu->tag); /* keep these in sync */ pdu->size = len; @@ -2347,6 +2348,7 @@ static void v9fs_flush(void *opaque) return; } trace_v9fs_flush(pdu->tag, pdu->id, tag); + fprintf(stderr, "flush %04x %04x\n", tag, pdu->tag); QLIST_FOREACH(cancel_pdu, &s->active_list, next) { if (cancel_pdu->tag == tag) { diff --git a/hw/9pfs/virtio-9p-device.c b/hw/9pfs/virtio-9p-device.c index 1782e4a..6a5ac04 100644 --- a/hw/9pfs/virtio-9p-device.c +++ b/hw/9pfs/virtio-9p-device.c @@ -76,6 +76,7 @@ static void handle_9p_output(VirtIODevice *vdev, VirtQueue *vq) pdu->id = out.id; pdu->tag = le16_to_cpu(out.tag_le); + fprintf(stderr, "out %d %04x\n", pdu->id, pdu->tag); qemu_co_queue_init(&pdu->complete); pdu_submit(pdu); I got these logs from the server & client with 9p tracepoints enabled: https://gist.githubusercontent.com/dezgeg/02447100b3182167403099fe7de4d941/raw/3772e408ddf586fb662ac9148fc10943529a6b99/dmesg%2520with%25209p%2520trace https://gist.githubusercontent.com/dezgeg/e1e0c7f354042e1d9bdf7e9135934a65/raw/3a0e3b4f7a5229fd0be032c6839b578d47a21ce4/qemu.log -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html