Jason Wang
2023-Sep-11 06:43 UTC
[PATCH RFC v2 0/3] vdpa: dedicated descriptor table group
On Sat, Sep 9, 2023 at 4:45?PM Si-Wei Liu <si-wei.liu at oracle.com> wrote:> > Following patchset introduces dedicated group for descriptor table to > reduce live migration downtime when passthrough VQ is being switched > to shadow VQ. This RFC v2 is sent to incorporate the early feedback > from reviewers on the uAPI and driver API part of changes, the > associated driver patch set consuming ths API will come around > soon along with formal submission of this series. > > Some initial performance data will be gathered using the real > hardware device with mlx5_vdpa. The target goal of this series is to > reduce the SVQ switching overhead to less than 300ms on a ~100GB > guest with 2 non-mq vhost-vdpa devices. The reduction in the downtime > is thanks to avoiding the full remap in the switching. > > The plan of the intended driver implementation is to use a dedicated > group (specifically, 2 in below table) to host the descriptor tables > for data vqs, different from where buffer addresses are contained (in > group 0 as below). cvq does not have to allocate dedicated group for > descriptor table, so its buffers and descriptor table would always > belong to the same group (1 in table below). > > > | data vq | ctrl vq > ==============+==========+==========> vq_group | 0 | 1 > vq_desc_group | 2 | 1 > > > --- > > Si-Wei Liu (3): > vdpa: introduce dedicated descriptor group for virtqueue > vhost-vdpa: introduce descriptor group backend feature > vhost-vdpa: uAPI to get dedicated descriptor group idLooks good to me but I'd expect example implementations in the parent. Thanks> > drivers/vhost/vdpa.c | 27 +++++++++++++++++++++++++++ > include/linux/vdpa.h | 11 +++++++++++ > include/uapi/linux/vhost.h | 8 ++++++++ > include/uapi/linux/vhost_types.h | 5 +++++ > 4 files changed, 51 insertions(+) > > -- > 1.8.3.1 >
Dragos Tatulea
2023-Sep-11 07:06 UTC
[PATCH RFC v2 0/3] vdpa: dedicated descriptor table group
Hi Jason, On Mon, 2023-09-11 at 14:43 +0800, Jason Wang wrote:> On Sat, Sep 9, 2023 at 4:45?PM Si-Wei Liu <si-wei.liu at oracle.com> wrote: > > > > Following patchset introduces dedicated group for descriptor table to > > reduce live migration downtime when passthrough VQ is being switched > > to shadow VQ. This RFC v2 is sent to incorporate the early feedback > > from reviewers on the uAPI and driver API part of changes, the > > associated driver patch set consuming ths API will come around > > soon along with formal submission of this series. > > > > Some initial performance data will be gathered using the real > > hardware device with mlx5_vdpa. The target goal of this series is to > > reduce the SVQ switching overhead to less than 300ms on a ~100GB > > guest with 2 non-mq vhost-vdpa devices. The reduction in the downtime > > is thanks to avoiding the full remap in the switching. > > > > The plan of the intended driver implementation is to use a dedicated > > group (specifically, 2 in below table) to host the descriptor tables > > for data vqs, different from where buffer addresses are contained (in > > group 0 as below). cvq does not have to allocate dedicated group for > > descriptor table, so its buffers and descriptor table would always > > belong to the same group (1 in table below). > > > > > > ????????????? |? data vq | ctrl vq > > ==============+==========+==========> > vq_group????? |??? 0???? |??? 1 > > vq_desc_group |??? 2???? |??? 1 > > > > > > --- > > > > Si-Wei Liu (3): > > ? vdpa: introduce dedicated descriptor group for virtqueue > > ? vhost-vdpa: introduce descriptor group backend feature > > ? vhost-vdpa: uAPI to get dedicated descriptor group id > > Looks good to me but I'd expect example implementations in the parent. >We (Si-Wei and I) will send a non-RFC series with the mlx5_vdpa implementation as soon as the submission window opens. Can we add your Acked-by for these core patches? Thanks, Dragos