On Freitag, 4. Juni 2021 20:23:21 CEST Christian Schoenebeck wrote: > On Freitag, 4. Juni 2021 18:31:28 CEST Greg Kurz wrote: > > On Fri, 4 Jun 2021 17:48:49 +0200 > > > > Christian Schoenebeck <qemu_...@crudebyte.com> wrote: > > > This patch set reduces latency of Twalk handling by reducing the amount > > > of > > > thread hops, similar to previous Treaddir optimization. > > > > > > The performance gain of this patch set is not as spectacular as > > > previously > > > with Treaddir, but there is definitely a measurable difference. > > > > > > The actualy performance optimization is patch 7. With the benchmark of > > > patch 2, the runtime of the Twalk test was cut in half. In real world > > > tests > > > I measured a performance gain (i.e. running an entire guest OS, and > > > hence > > > mixed with all other kinds of 9p requests) of about 2%, again measured > > > in > > > a > > > mix, not concentrated on Twalk alone. > > > > > > v1 -> v2: > > > * Added a separate [NEW PATCH 1] for fixing not_same_qid() semantic. > > > > Strangely, patch 1 appears between patch 3 and 4 in my email client. > > My bad, I forgot to take care about the time stamps of the individual > patches this time. > > > > * Code style: use sizeof(var-name) instead of sizeof(type-name) > > > > > > [PATCH 3]. > > > > > > * Split out dropping fid_to_qid() into separate [PATCH 4]. > > > > > > * Split out replacing not_same_qid() by same_stat_id() into separate > > > > > > [PATCH 5]. > > > > > > * Split out dropping root_qid into separate [PATCH 6]. > > > > I could have a look at all the patches except the last one. LGTM. > > You can add my R-b for patches 1 and 3 to 6. > > > > Reviewed-by: Greg Kurz <gr...@kaod.org> > > Queued patches 1, 3..6 on 9p.next: > > https://github.com/cschoenebeck/qemu/commits/9p.next > > Thanks! > > > I'll try to find some time for patch 7 next week. > > Twalk can be tricky, so no hurry! It takes what it takes. > > > > Christian Schoenebeck (7): > > > 9pfs: fix not_same_qid() > > > 9pfs: Twalk benchmark > > > 9pfs: capture root stat > > > 9pfs: drop fid_to_qid() > > > 9pfs: replace not_same_qid() by same_stat_id() > > > 9pfs: drop root_qid > > > 9pfs: reduce latency of Twalk > > > > > > hw/9pfs/9p.c | 128 +++++++++++++++++++++++------------ > > > hw/9pfs/9p.h | 2 +- > > > tests/qtest/virtio-9p-test.c | 30 ++++++++ > > > 3 files changed, 116 insertions(+), 44 deletions(-)
Ping How is your schedule Greg? Any chance for a time slice on this one? Best regards, Christian Schoenebeck