[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <PH0PR12MB54815AD7D0674FEB1D63EB61DC979@PH0PR12MB5481.namprd12.prod.outlook.com>
Date: Wed, 27 Jul 2022 03:47:35 +0000
From: Parav Pandit <parav@...dia.com>
To: "Zhu, Lingshan" <lingshan.zhu@...el.com>,
"jasowang@...hat.com" <jasowang@...hat.com>,
"mst@...hat.com" <mst@...hat.com>
CC: "virtualization@...ts.linux-foundation.org"
<virtualization@...ts.linux-foundation.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"xieyongji@...edance.com" <xieyongji@...edance.com>,
"gautam.dawar@....com" <gautam.dawar@....com>
Subject: RE: [PATCH V3 5/6] vDPA: answer num of queue pairs = 1 to userspace
when VIRTIO_NET_F_MQ == 0
> From: Zhu, Lingshan <lingshan.zhu@...el.com>
> Sent: Tuesday, July 26, 2022 10:53 PM
>
> On 7/27/2022 10:17 AM, Parav Pandit wrote:
> >> From: Zhu, Lingshan <lingshan.zhu@...el.com>
> >> Sent: Tuesday, July 26, 2022 10:15 PM
> >>
> >> On 7/26/2022 11:56 PM, Parav Pandit wrote:
> >>>> From: Zhu, Lingshan <lingshan.zhu@...el.com>
> >>>> Sent: Tuesday, July 12, 2022 11:46 PM
> >>>>> When the user space which invokes netlink commands, detects that
> >> _MQ
> >>>> is not supported, hence it takes max_queue_pair = 1 by itself.
> >>>> I think the kernel module have all necessary information and it is
> >>>> the only one which have precise information of a device, so it
> >>>> should answer precisely than let the user space guess. The kernel
> >>>> module should be reliable than stay silent, leave the question to
> >>>> the user space
> >> tool.
> >>> Kernel is reliable. It doesn’t expose a config space field if the
> >>> field doesn’t
> >> exist regardless of field should have default or no default.
> >> so when you know it is one queue pair, you should answer one, not try
> >> to guess.
> >>> User space should not guess either. User space gets to see if _MQ
> >> present/not present. If _MQ present than get reliable data from kernel.
> >>> If _MQ not present, it means this device has one VQ pair.
> >> it is still a guess, right? And all user space tools implemented this
> >> feature need to guess
> > No. it is not a guess.
> > It is explicitly checking the _MQ feature and deriving the value.
> > The code you proposed will be present in the user space.
> > It will be uniform for _MQ and 10 other features that are present now and
> in the future.
> MQ and other features like RSS are different. If there is no _RSS_XX, there
> are no attributes like max_rss_key_size, and there is not a default value.
> But for MQ, we know it has to be 1 wihtout _MQ.
"we" = user space.
To keep the consistency among all the config space fields.
> > For feature X, kernel reports default and for feature Y, kernel skip
> reporting it, because there is no default. <- This is what we are trying to
> avoid here.
> Kernel reports one queue pair because there is actually one.
> >
Powered by blists - more mailing lists