[PATCH v3 5/5] vdpa/sfc: Add support for SW assisted live migration

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini In SW assisted live migration, vDPA driver will stop all virtqueues and setup up SW vrings to relay the communication between the virtio driver and the vDPA device using an event driven relay thread This will allow vDPA driver to help on guest dirty page logging for live mi

[PATCH v3 3/5] common/sfc_efx/base: use the updated definitions of cidx/pidx

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Change cidx and pidx definition to mean used queue and avail queue index respectively. Signed-off-by: Abhimanyu Saini --- v2: * Fix checkpatch warnings * Add a cover letter v3: * Restructure patchset drivers/common/sfc_efx/base/efx.h | 12 ++-- drivers/c

[PATCH v3 1/5] common/sfc_efx/base: remove VQ index check during VQ start

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini The used/avail queue indexes are not bound by queue size, because HW calculates descriptor entry index by performing a simple modulo between queue index and queue_size. So, do not check initial used and avail queue indexes against queue size because it is possible for these

[PATCH v3 4/5] vdpa/sfc: enable support for multi-queue

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Increase the number to default RX/TX queue pairs to 8, and add MQ feature flag to vDPA protocol features. Signed-off-by: Abhimanyu Saini --- v2: * Fix checkpatch warnings * Add a cover letter v3: * Restructure patchset drivers/vdpa/sfc/sfc_vdpa_hw.c | 2 ++ drivers/vdpa

[PATCH v3 2/5] common/sfc_efx/base: update MCDI headers

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Regenerate MCDI headers from smartnic_registry:72940ad Signed-off-by: Abhimanyu Saini --- v2: * Fix checkpatch warnings * Add a cover letter v3: * Restructure patchset drivers/common/sfc_efx/base/efx_regs_mcdi.h | 36 - 1 file changed, 25 inse

[PATCH v3 0/5] Add support for live migration and cleanup MCDI headers

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini In SW assisted live migration, vDPA driver will stop all virtqueues and setup up SW vrings to relay the communication between the virtio driver and the vDPA device using an event driven relay thread This will allow vDPA driver to help on guest dirty page logging for live mig

[PATCH v2 5/5] vdpa/sfc: Add support for SW assisted live migration

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini In SW assisted live migration, vDPA driver will stop all virtqueues and setup up SW vrings to relay the communication between the virtio driver and the vDPA device using an event driven relay thread This will allow vDPA driver to help on guest dirty page logging for live mi

[PATCH v2 3/5] common/sfc_efx/base: use the updated definitions of cidx/pidx

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Change cidx and pidx definition to mean used queue and avail queue index respectively. Signed-off-by: Abhimanyu Saini --- v2: * Fix checkpatch warnings * Add a cover letter drivers/common/sfc_efx/base/efx.h | 12 ++-- drivers/common/sfc_efx/base/rhead_vi

[PATCH v2 2/5] common/sfc_efx/base: update MCDI headers

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Regenerate MCDI headers from smartnic_registry:72940ad Signed-off-by: Abhimanyu Saini --- v2: * Fix checkpatch warnings * Add a cover letter drivers/common/sfc_efx/base/efx_regs_mcdi.h | 36 ++--- 1 file changed, 25 insertions(+), 11 deletions(-) diff --

[PATCH v2 0/5] Add support for live migration and cleanup MCDI headers

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini In SW assisted live migration, vDPA driver will stop all virtqueues and setup up SW vrings to relay the communication between the virtio driver and the vDPA device using an event driven relay thread This will allow vDPA driver to help on guest dirty page logging for live mig

[PATCH v2 4/5] vdpa/sfc: enable support for multi-queue

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Increase the number to default RX/TX queue pairs to 8, and add MQ feature flag to vDPA protocol features. Signed-off-by: Abhimanyu Saini --- v2: * Fix checkpatch warnings * Add a cover letter drivers/vdpa/sfc/sfc_vdpa_hw.c | 2 ++ drivers/vdpa/sfc/sfc_vdpa_ops.c | 10 +

[PATCH v2 1/5] common/sfc_efx/base: remove VQ index check during VQ start

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini The used/avail queue indexes are not bound by queue size, because HW calculates descriptor entry index by performing a simple modulo between queue index and queue_size. So, do not check initial used and avail queue indexes against queue size because it is possible for these

[PATCH 5/5] vdpa/sfc: Add support for SW assisted live migration

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini In SW assisted live migration, vDPA driver will stop all virtqueues and setup up SW vrings to relay the communication between the virtio driver and the vDPA device using an event driven relay thread This will allow vDPA driver to help on guest dirty page logging for live mi

[PATCH 1/5] common/sfc_efx/base: remove VQ index check during VQ start

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini The used/avail queue indexes are not bound by queue size, because H/W calculates descriptor entry index by performing a simple modulo between queue index and queue_size So, do not check initial used and avail queue indexes against queue size because it is possible for these

[PATCH 4/5] common/sfc_efx/base: use the updated definitions of cidx/pidx

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Change cidx and pidx definition to mean used queue and avail queue index respectively. Signed-off-by: Abhimanyu Saini --- drivers/common/sfc_efx/base/efx.h | 12 ++-- drivers/common/sfc_efx/base/rhead_virtio.c | 16 drivers/vdpa/sfc/sfc_v

[PATCH 3/5] common/sfc_efx/base: update MCDI headers

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Regenerate MCDI headers from smartnic_registry:72940ad Signed-off-by: Abhimanyu Saini --- drivers/common/sfc_efx/base/efx_regs_mcdi.h | 36 - 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/drivers/common/sfc_efx/base/efx_regs_m

[PATCH 2/5] vdpa/sfc: enable support for multi-queue

2022-07-14 Thread abhimanyu.saini
From: Abhimanyu Saini Increase the number to defaut RX/TX queue pairs to 8, and add MQ feature flag to vDPA protocol features. Signed-off-by: Abhimanyu Saini --- drivers/vdpa/sfc/sfc_vdpa_hw.c | 2 ++ drivers/vdpa/sfc/sfc_vdpa_ops.c | 6 -- drivers/vdpa/sfc/sfc_vdpa_ops.h | 2 +- 3 files

[PATCH v2] vdpa/sfc: enable support for multi-queue

2022-07-08 Thread abhimanyu.saini
From: Abhimanyu Saini Increase the number to default RX/TX queue pairs to 8, and add MQ feature flag to vDPA protocol features. Signed-off-by: Abhimanyu Saini --- v2: Fix checkpatch warnings drivers/vdpa/sfc/sfc_vdpa_hw.c | 2 ++ drivers/vdpa/sfc/sfc_vdpa_ops.c | 6 -- drivers/vdpa/sfc/s

[PATCH] vdpa/sfc: enable support for multi-queue

2022-07-08 Thread abhimanyu.saini
From: Abhimanyu Saini Increase the number to defaut RX/TX queue pairs to 8, and add MQ feature flag to vDPA protocol features. Signed-off-by: Abhimanyu Saini --- drivers/vdpa/sfc/sfc_vdpa_hw.c | 2 ++ drivers/vdpa/sfc/sfc_vdpa_ops.c | 6 -- drivers/vdpa/sfc/sfc_vdpa_ops.h | 2 +- 3 files

[PATCH] common/sfc_efx/base: remove VQ index check during VQ start

2022-07-08 Thread abhimanyu.saini
From: Abhimanyu Saini The used/avail queue indexes are not bound by queue size, because the descriptor entry index is calculated by a simple modulo between queue index and queue_size So, do not check initial used and avail queue indexes against queue size because it is possible for these indexes

[PATCH] vdpa/sfc: resolve race between libvhost and dev_conf

2022-07-06 Thread abhimanyu.saini
From: Abhimanyu Saini libvhost calls dev_conf() before prosessing the VHOST_USER_SET_VRING_CALL message for the last VQ. So this message is processed after dev_conf() returns. However, the dev_conf() function spawns a thread to set rte_vhost_host_notifier_ctrl() before returning control to libvh

[PATCH v2] vdpa/sfc: handle sync issue between qemu and vhost-user

2022-06-27 Thread abhimanyu.saini
From: Abhimanyu Saini When DPDK app is running in the VF, it sometimes rings the doorbell before dev_config has had a chance to complete and hence it misses the event. As workaround, ring the doorbell when vDPA reports the notify_area to QEMU. Fixes: 630be406dcbf ("vdpa/sfc: get queue notify are

[PATCH] vdpa/sfc: handle sync issue between qemu and vhost-user

2022-06-27 Thread abhimanyu.saini
From: Abhimanyu Saini When DPDK app is running in the VF, it sometimes rings the doorbell before dev_config has had a chance to complete and hence it misses the event. As workaround, ring the doorbell when vDPA reports the notify_area to QEMU. Fixes: 5e7596ba7cb3 ("vdpa/sfc: introduce Xilinx vDP

[PATCH v3] vdpa/sfc: make MCDI memzone name unique

2022-02-14 Thread abhimanyu.saini
From: Abhimanyu Saini Buffer for MCDI channel is allocated using rte_memzone_reserve_aligned with zone name 'mcdi'. Since multiple MCDI channels are needed to support multiple VF(s) and rte_memzone_reserve_aligned expects unique zone names, append PCI address to zone name to make it unique. Sign

[PATCH v2] vdpa/sfc: make MCDI memzone name unique

2022-01-17 Thread abhimanyu.saini
From: Abhimanyu Saini Buffer for MCDI channel is allocated using rte_memzone_reserve_aligned with zone name 'mcdi'. Since multiple MCDI channels are needed to support multiple VF(s) and rte_memzone_reserve_aligned expects unique zone names, append PCI address to zone name to make it unique. Sign

[PATCH] vdpa/sfc: make MCDI memzone name unique

2022-01-10 Thread abhimanyu.saini
From: Abhimanyu Saini Buffer for MCDI channel is allocated using rte_memzone_reserve_aligned with zone name 'mcdi'. Since multiple MCDI channels are needed to support multiple VF(s) and rte_memzone_reserve_aligned expects unique zone names, append PCI address to zone name to make it unique. Sign

[PATCH] vdpa/sfc: make MCDI memzone name unique

2022-01-04 Thread abhimanyu.saini
From: Abhimanyu Saini Buffer for MCDI channel is allocated using rte_memzone_reserve_aligned with zone name 'mcdi'. Since multiple MCDI channels are needed to support multiple VF(s) and rte_memzone_reserve_aligned expects unique zone names, append PCI address to zone name to make it unique. Sign