archive mirror
 help / color / mirror / Atom feed
From: Jason Wang <>
To: Yunsheng Lin <>,
	"Michael S. Tsirkin" <>
Subject: Re: [PATCH net-next v3 1/3] selftests/ptr_ring: add benchmark application for ptr_ring
Date: Fri, 2 Jul 2021 17:04:44 +0800	[thread overview]
Message-ID: <> (raw)
In-Reply-To: <>

在 2021/7/2 下午4:46, Yunsheng Lin 写道:
> On 2021/7/2 16:30, Michael S. Tsirkin wrote:
>> On Fri, Jul 02, 2021 at 04:17:17PM +0800, Yunsheng Lin wrote:
>>>> Let's reuse ptr_ring.c in tools/virtio/ringtest. Nothing virt specific there.
>>> It *does* have some virtio specific at the end of ptr_ring.c.

They are just wrappers to make ptr ring works like a virtio ring. We can 
split them out into another file if necessary.

>>> It can be argued that the ptr_ring.c in tools/virtio/ringtest
>>> could be refactored to remove the function related to virtio.
>>> But as mentioned in the previous disscusion [1], the tools/virtio/
>>> seems to have compile error in the latest kernel, it does not seems
>>> right to reuse that.
>>> And most of testcase in tools/virtio/ seems
>>> better be in tools/virtio/ringtest instead,so until the testcase
>>> in tools/virtio/ is compile-error-free and moved to tools/testing/
>>> selftests/, it seems better not to reuse it for now.
>> That's a great reason to reuse - so tools/virtio/ stays working.
>> Please just fix that.


> I understand that you guys like to see a working testcase of virtio.
> I would love to do that if I have the time and knowledge of virtio,
> But I do not think I have the time and I am familiar enough with
> virtio to fix that now.

So ringtest is used for bench-marking the ring performance for different 
format. Virtio is only one of the supported ring format, ptr ring is 
another. Wrappers were used to reuse the same test logic.

Though you may see host/guest in the test, it's in fact done via two 

We need figure out:

1) why the current ringtest.c does not fit for your requirement (it has 
SPSC test)
2) why can't we tweak the ptr_ring.c to be used by both ring_test and 
your benchmark

If neither of the above work, we can invent new ptr_ring infrastructure 
under tests/



  reply	other threads:[~2021-07-02  9:05 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-01 12:26 [PATCH net-next v3 0/3] add benchmark selftest and optimization for ptr_ring Yunsheng Lin
2021-07-01 12:26 ` [PATCH net-next v3 1/3] selftests/ptr_ring: add benchmark application " Yunsheng Lin
2021-07-02  6:43   ` Jason Wang
2021-07-02  8:17     ` Yunsheng Lin
2021-07-02  8:30       ` Michael S. Tsirkin
2021-07-02  8:46         ` Yunsheng Lin
2021-07-02  9:04           ` Jason Wang [this message]
2021-07-02  9:54             ` Yunsheng Lin
2021-07-02 14:18               ` Michael S. Tsirkin
2021-07-05  1:43                 ` Yunsheng Lin
2021-07-02 14:16             ` Michael S. Tsirkin
2021-07-01 12:26 ` [PATCH net-next v3 2/3] ptr_ring: move r->queue[] clearing after r->consumer_head updating Yunsheng Lin
2021-07-02  6:45   ` Jason Wang
2021-07-02  8:40     ` [Linuxarm] " Yunsheng Lin
2021-07-01 12:26 ` [PATCH net-next v3 3/3] ptr_ring: add barrier to ensure the visiblity of r->queue[] Yunsheng Lin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).