[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+GJov6dkLkeUE4nAW6BnY+75VAemqMxTE-na6SUrGqAz1ntWQ@mail.gmail.com>
Date: Wed, 16 Aug 2023 15:57:24 -0400
From: Rae Moar <rmoar@...gle.com>
To: Richard Fitzgerald <rf@...nsource.cirrus.com>
Cc: brendan.higgins@...ux.dev, davidgow@...gle.com,
linux-kselftest@...r.kernel.org, kunit-dev@...glegroups.com,
linux-kernel@...r.kernel.org, patches@...nsource.cirrus.com
Subject: Re: [PATCH v4 00/10] kunit: Add dynamically-extending log
On Mon, Aug 14, 2023 at 9:23 AM Richard Fitzgerald
<rf@...nsource.cirrus.com> wrote:
>
> This patch chain changes the logging implementation to use string_stream
> so that the log will grow dynamically.
>
> The first 8 patches add test code for string_stream, and make some
> changes to string_stream needed to be able to use it for the log.
>
> The final patch adds a performance report of string_stream.
>
> CHANGES SINCE V3:
>
> Completely rewritten to use string_stream instead of implementing a
> separate extending-buffer implementation for logging.
>
> I have used the performance test from the final patch on my original
> fixed-size-fragment implementation from V3 to get a comparison of the
> two implementations (run on i3-8145UE CPU @ 2.20GHz):
>
> string_stream V3 fixed-size-buffer
> Time elapsed: 7748 us 3251 us
> Total string length: 573890 573890
> Bytes requested: 823994 728336
> Actual bytes allocated: 1061440 728352
>
> I don't think the difference is enough to be worth complicating the
> string_stream implementation with my fixed-fragment implementation from
> V3 of this patch chain.
Hello!
I just wanted to note that I have tested this series and it looks good
to me. I specifically looked over the newline handling and that looks
really good.
I understand you will likely be doing a new version of this. But other
than the things noted in comments by David, this seems to be working
really well.
Tested-by: Rae Moar <rmoar@...gle.com>
Thanks for all the work you did in moving this framework to string-stream!
-Rae
>
> Richard Fitzgerald (10):
> kunit: string-stream: Improve testing of string_stream
> kunit: string-stream: Don't create a fragment for empty strings
> kunit: string-stream: Add cases for adding empty strings to a
> string_stream
> kunit: string-stream: Add option to make all lines end with newline
> kunit: string-stream: Add cases for string_stream newline appending
> kunit: string-stream: Pass struct kunit to string_stream_get_string()
> kunit: string-stream: Decouple string_stream from kunit
> kunit: string-stream: Add test for freeing resource-managed
> string_stream
> kunit: Use string_stream for test log
> kunit: string-stream: Test performance of string_stream
>
> include/kunit/test.h | 14 +-
> lib/kunit/Makefile | 5 +-
> lib/kunit/debugfs.c | 36 ++-
> lib/kunit/kunit-test.c | 52 +---
> lib/kunit/log-test.c | 72 ++++++
> lib/kunit/string-stream-test.c | 447 +++++++++++++++++++++++++++++++--
> lib/kunit/string-stream.c | 129 +++++++---
> lib/kunit/string-stream.h | 22 +-
> lib/kunit/test.c | 48 +---
> 9 files changed, 656 insertions(+), 169 deletions(-)
> create mode 100644 lib/kunit/log-test.c
>
> --
> 2.30.2
>
Powered by blists - more mailing lists