[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 0/7] 9pfs: Twalk optimization
From: |
Christian Schoenebeck |
Subject: |
Re: [PATCH v2 0/7] 9pfs: Twalk optimization |
Date: |
Mon, 28 Jun 2021 12:20:13 +0200 |
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_oss@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 <groug@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
- [PATCH v2 0/7] 9pfs: Twalk optimization, Christian Schoenebeck, 2021/06/04
- Re: [PATCH v2 0/7] 9pfs: Twalk optimization, Greg Kurz, 2021/06/04
- [PATCH v2 2/7] 9pfs: Twalk benchmark, Christian Schoenebeck, 2021/06/04
- [PATCH v2 6/7] 9pfs: drop root_qid, Christian Schoenebeck, 2021/06/04
- [PATCH v2 4/7] 9pfs: drop fid_to_qid(), Christian Schoenebeck, 2021/06/04
- [PATCH v2 3/7] 9pfs: capture root stat, Christian Schoenebeck, 2021/06/04
- [PATCH v2 7/7] 9pfs: reduce latency of Twalk, Christian Schoenebeck, 2021/06/04
- [PATCH v2 1/7] 9pfs: fix not_same_qid(), Christian Schoenebeck, 2021/06/04
- [PATCH v2 5/7] 9pfs: replace not_same_qid() by same_stat_id(), Christian Schoenebeck, 2021/06/04