From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759917AbdACXgw (ORCPT ); Tue, 3 Jan 2017 18:36:52 -0500 Received: from mx2.mpynet.fi ([82.197.21.85]:23146 "EHLO mx2.mpynet.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759724AbdACXfP (ORCPT ); Tue, 3 Jan 2017 18:35:15 -0500 Date: Wed, 4 Jan 2017 01:34:50 +0200 From: Tuomas Tynkkynen To: Al Viro CC: , , Subject: Re: 9pfs hangs since 4.7 Message-ID: <20170104013355.4a8923b6@duuni> In-Reply-To: <20170102162309.GZ1555@ZenIV.linux.org.uk> References: <20161124215023.02deb03c@duuni> <20170102102035.7d1cf903@duuni> <20170102162309.GZ1555@ZenIV.linux.org.uk> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: tuxera-exch.ad.tuxera.com (10.20.48.11) To tuxera-exch.ad.tuxera.com (10.20.48.11) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2 Jan 2017 16:23:09 +0000 Al Viro 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