[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ea32a1cf-3a77-d63b-034f-0f80d2dd80ea@nvidia.com>
Date: Tue, 11 Jul 2023 10:34:33 +0800
From: Gavin Li <gavinl@...dia.com>
To: Xuan Zhuo <xuanzhuo@...ux.alibaba.com>
Cc: virtualization@...ts.linux-foundation.org, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, bpf@...r.kernel.org, mst@...hat.com,
jasowang@...hat.com, davem@...emloft.net, edumazet@...gle.com,
kuba@...nel.org, pabeni@...hat.com, ast@...nel.org, daniel@...earbox.net,
hawk@...nel.org, john.fastabend@...il.com, jiri@...dia.com,
dtatulea@...dia.com, Heng Qi <hengqi@...ux.alibaba.com>
Subject: Re: [PATCH net-next V1 0/4] virtio_net: add per queue interrupt
coalescing support
On 7/10/2023 5:25 PM, Xuan Zhuo wrote:
> External email: Use caution opening links or attachments
>
>
> On Mon, 10 Jul 2023 12:20:01 +0300, Gavin Li <gavinl@...dia.com> wrote:
>
> As far as I know, Heng Qi does that. I'm not sure, it's the same piece.
>
> cc @Heng Qi
>
> Thanks.
Do you mean the one below?
https://lists.oasis-open.org/archives/virtio-dev/202303/msg00415.html
The code is to implement what it described and I don't have better
words. So, I copied the text from Heng Qi's.
>
>
>> Currently, coalescing parameters are grouped for all transmit and receive
>> virtqueues. This patch series add support to set or get the parameters for
>> a specified virtqueue.
>>
>> When the traffic between virtqueues is unbalanced, for example, one virtqueue
>> is busy and another virtqueue is idle, then it will be very useful to
>> control coalescing parameters at the virtqueue granularity.
>>
>> Example command:
>> $ ethtool -Q eth5 queue_mask 0x1 --coalesce tx-packets 10
>> Would set max_packets=10 to VQ 1.
>> $ ethtool -Q eth5 queue_mask 0x1 --coalesce rx-packets 10
>> Would set max_packets=10 to VQ 0.
>> $ ethtool -Q eth5 queue_mask 0x1 --show-coalesce
>> Queue: 0
>> Adaptive RX: off TX: off
>> stats-block-usecs: 0
>> sample-interval: 0
>> pkt-rate-low: 0
>> pkt-rate-high: 0
>>
>> rx-usecs: 222
>> rx-frames: 0
>> rx-usecs-irq: 0
>> rx-frames-irq: 256
>>
>> tx-usecs: 222
>> tx-frames: 0
>> tx-usecs-irq: 0
>> tx-frames-irq: 256
>>
>> rx-usecs-low: 0
>> rx-frame-low: 0
>> tx-usecs-low: 0
>> tx-frame-low: 0
>>
>> rx-usecs-high: 0
>> rx-frame-high: 0
>> tx-usecs-high: 0
>> tx-frame-high: 0
>>
>> In this patch series:
>> Patch-1: Extract interrupt coalescing settings to a structure.
>> Patch-2: Extract get/set interrupt coalesce to a function.
>> Patch-3: Support per queue interrupt coalesce command.
>> Patch-4: Enable per queue interrupt coalesce feature.
>>
>> Gavin Li (4):
>> virtio_net: extract interrupt coalescing settings to a structure
>> virtio_net: extract get/set interrupt coalesce to a function
>> virtio_net: support per queue interrupt coalesce command
>> virtio_net: enable per queue interrupt coalesce feature
>>
>> drivers/net/virtio_net.c | 169 ++++++++++++++++++++++++++------
>> include/uapi/linux/virtio_net.h | 14 +++
>> 2 files changed, 154 insertions(+), 29 deletions(-)
>>
>> --
>> 2.39.1
>>
Powered by blists - more mailing lists