get_config_size() should return the size based on the decected
device type.
Signed-off-by: Zhu Lingshan
Reviewed-by: Stefano Garzarella
Acked-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_main.c | 19 ++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-block
for vDPA.
Signed-off-by: Zhu Lingshan
Reviewed-by: Stefano Garzarella
Acked-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8 +++-
drivers/vdpa/ifcvf/ifcvf_main.c | 19 ++-
2 files changed, 25 insertions
This commit deduces VIRTIO device ID as device type when probe,
then ifcvf_vdpa_get_device_id() can simply return the ID.
ifcvf_vdpa_get_features() and ifcvf_vdpa_get_config_size()
can work properly based on the device ID.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 1
odern devices
and transitional devices in modern mode.(Jason)
(2)remove IFCVF_BLK_SUPPORTED_FEATURES, use hardware feature bits
directly(Jason)
(3)add error handling and message in get_config_size(Stefano)
Thanks!
Zhu Lingshan (3):
vDPA/ifcvf: deduce VIRTIO device ID when probe
vDPA/ifcvf: enabl
get_config_size() should return the size based on the decected
device type.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 19 ++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c
This commit deduces VIRTIO device ID as device type when probe,
then ifcvf_vdpa_get_device_id() can simply return the ID.
ifcvf_vdpa_get_features() and ifcvf_vdpa_get_config_size()
can work properly based on the device ID.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 1
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-block
for vDPA.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8 +++-
drivers/vdpa/ifcvf/ifcvf_main.c | 19 ++-
2 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/drivers/vdpa/ifcvf
error handling and message in get_config_size(Stefano)
Thanks!
Zhu Lingshan (3):
vDPA/ifcvf: deduce VIRTIO device ID when probe
vDPA/ifcvf: enable Intel C5000X-PL virtio-block for vDPA
vDPA/ifcvf: get_config_size should return dev specific config size
drivers/vdpa/ifcvf/ifcvf_base.h
On 4/15/2021 9:41 PM, Stefano Garzarella wrote:
On Thu, Apr 15, 2021 at 05:53:35PM +0800, Zhu Lingshan wrote:
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-block
for vDPA.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8 +++-
drivers/vdpa/ifcvf
On 4/15/2021 9:48 PM, Stefano Garzarella wrote:
On Thu, Apr 15, 2021 at 05:53:36PM +0800, Zhu Lingshan wrote:
get_config_size() should return the size based on the decected
device type.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 18 +-
1 file changed
get_config_size() should return the size based on the decected
device type.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 18 +-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-block
for vDPA.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8 +++-
drivers/vdpa/ifcvf/ifcvf_main.c | 10 +-
2 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/drivers/vdpa/ifcvf
1)add comments to explain this driver drives virtio modern devices
and transitional devices in modern mode.(Jason)
(2)remove IFCVF_BLK_SUPPORTED_FEATURES, use hardware feature bits
directly(Jason)
(3)add error handling and message in get_config_size(Stefano)
Thanks!
Zhu Lingshan (3):
vDPA/ifcvf: d
This commit deduces VIRTIO device ID as device type when probe,
then ifcvf_vdpa_get_device_id() can simply return the ID.
ifcvf_vdpa_get_features() and ifcvf_vdpa_get_config_size()
can work properly based on the device ID.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 1
On 4/15/2021 3:17 PM, Jason Wang wrote:
在 2021/4/15 下午2:41, Zhu Lingshan 写道:
I think we've discussed this sometime in the past but what's the
reason for such whitelist consider there's already a
get_features() implemention?
E.g Any reason to block VIRTIO_BLK_F
On 4/15/2021 3:16 PM, Jason Wang wrote:
在 2021/4/15 下午2:36, Zhu Lingshan 写道:
On 4/15/2021 2:30 PM, Jason Wang wrote:
在 2021/4/15 下午1:52, Zhu Lingshan 写道:
On 4/15/2021 11:30 AM, Jason Wang wrote:
在 2021/4/14 下午5:18, Zhu Lingshan 写道:
This commit deduces VIRTIO device ID as device
On 4/15/2021 2:31 PM, Jason Wang wrote:
在 2021/4/15 下午1:55, Zhu Lingshan 写道:
On 4/15/2021 11:34 AM, Jason Wang wrote:
在 2021/4/14 下午5:18, Zhu Lingshan 写道:
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-block
for vDPA.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf
On 4/15/2021 2:30 PM, Jason Wang wrote:
在 2021/4/15 下午1:52, Zhu Lingshan 写道:
On 4/15/2021 11:30 AM, Jason Wang wrote:
在 2021/4/14 下午5:18, Zhu Lingshan 写道:
This commit deduces VIRTIO device ID as device type when probe,
then ifcvf_vdpa_get_device_id() can simply return the ID
On 4/15/2021 11:34 AM, Jason Wang wrote:
在 2021/4/14 下午5:18, Zhu Lingshan 写道:
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-block
for vDPA.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 17 -
drivers/vdpa/ifcvf/ifcvf_main.c | 10
On 4/15/2021 11:30 AM, Jason Wang wrote:
在 2021/4/14 下午5:18, Zhu Lingshan 写道:
This commit deduces VIRTIO device ID as device type when probe,
then ifcvf_vdpa_get_device_id() can simply return the ID.
ifcvf_vdpa_get_features() and ifcvf_vdpa_get_config_size()
can work properly based on the
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-block
for vDPA.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 17 -
drivers/vdpa/ifcvf/ifcvf_main.c | 10 +-
2 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/drivers/vdpa/ifcvf
get_config_size() should return the size based on the decected
device type.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 11 ++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c
index
This commit deduces VIRTIO device ID as device type when probe,
then ifcvf_vdpa_get_device_id() can simply return the ID.
ifcvf_vdpa_get_features() and ifcvf_vdpa_get_config_size()
can work properly based on the device ID.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 1
This series enabled Intel FGPA SmartNIC C5000X-PL virtio-blk for vDPA.
This series requires:
Stefano's vdpa block patchset: https://lkml.org/lkml/2021/3/15/2113
my patchset to enable Intel FGPA SmartNIC C5000X-PL virtio-net for vDPA:
https://lkml.org/lkml/2021/3/17/432
Thanks!
Zhu Lingsh
This commit deduces the VIRTIO device ID of a probed
device from its pdev device ids.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 1 +
drivers/vdpa/ifcvf/ifcvf_main.c | 14 +-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf
vDPA requres VIRTIO_F_ACCESS_PLATFORM as a must, this commit
examines this when set features.
Signed-off-by: Zhu Lingshan
Acked-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_base.c | 12
drivers/vdpa/ifcvf/ifcvf_base.h | 1 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
3 files
This commit would read and store device feature
bits when probe.
rename ifcvf_get_features() to ifcvf_get_hw_features(),
it reads and stores features of the probed device.
new ifcvf_get_features() simply returns stored
feature bits.
Signed-off-by: Zhu Lingshan
Acked-by: Jason Wang
This commit removes the version number string, using kernel
version is enough.
Signed-off-by: Zhu Lingshan
Reviewed-by: Leon Romanovsky
Acked-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_main.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa
IFCVF driver probes multiple types of devices now,
to distinguish the original device driven by IFCVF
from others, it is renamed as "N3000".
Signed-off-by: Zhu Lingshan
Acked-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8
drivers/vdpa/ifcvf/ifcvf_main.c | 8 ---
patches(Jason)
Zhu Lingshan (7):
vDPA/ifcvf: get_vendor_id returns a device specific vendor id
vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA
vDPA/ifcvf: rename original IFCVF dev ids to N3000 ids
vDPA/ifcvf: remove the version number string
vDPA/ifcvf: fetch device feature bits when
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-net
for vDPA
Signed-off-by: Zhu Lingshan
Acked-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_base.h | 5 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
2 files changed, 10 insertions(+)
diff --git a/drivers/vdpa/ifcvf/ifcvf_base.h b
In this commit, ifcvf_get_vendor_id() will return
a device specific vendor id of the probed pci device
than a hard code.
Signed-off-by: Zhu Lingshan
Acked-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_main.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa
This commit checks the device ids from pdev, then deduce
VIRTIO device ID from the probed device.
Here we checks all four device ids than only subsystem_device_id,
help detecting a certain device for furture enabling.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.c | 42
vDPA requres VIRTIO_F_ACCESS_PLATFORM as a must, this commit
examines this when set features.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.c | 12
drivers/vdpa/ifcvf/ifcvf_base.h | 1 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
3 files changed, 18 insertions
This commit removes the version number string, using kernel
version is enough.
Signed-off-by: Zhu Lingshan
Reviewed-by: Leon Romanovsky
---
drivers/vdpa/ifcvf/ifcvf_main.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c
IFCVF driver probes multiple types of devices now,
to distinguish the original device driven by IFCVF
from others, it is renamed as "N3000".
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8
drivers/vdpa/ifcvf/ifcvf_main.c | 8
2 files changed, 8
This commit would read and store device feature
bits when probe.
rename ifcvf_get_features() to ifcvf_get_hw_features(),
it reads and stores features of the probed device.
new ifcvf_get_features() simply returns stored
feature bits.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf
get_device_id(Jason)
Changes from V2:
verify VIRTIO_F_ACCESS_PLATFORM when set features(Jason)
Changes from V1:
remove version number string(Leon)
add new device ids and remove original device ids
in separate patches(Jason)
Zhu Lingshan (7):
vDPA/ifcvf: get_vendor_id returns a device specific vendor id
In this commit, ifcvf_get_vendor_id() will return
a device specific vendor id of the probed pci device
than a hard code.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-net
for vDPA
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 5 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
2 files changed, 10 insertions(+)
diff --git a/drivers/vdpa/ifcvf/ifcvf_base.h b/drivers/vdpa/ifcvf
On 3/12/2021 3:00 PM, Jason Wang wrote:
On 2021/3/12 2:40 下午, Zhu, Lingshan wrote:
On 3/12/2021 1:52 PM, Jason Wang wrote:
On 2021/3/11 3:19 下午, Zhu, Lingshan wrote:
On 3/11/2021 2:20 PM, Jason Wang wrote:
On 2021/3/11 12:16 下午, Zhu Lingshan wrote:
On 3/11/2021 11:20 AM, Jason
On 3/12/2021 1:52 PM, Jason Wang wrote:
On 2021/3/11 3:19 下午, Zhu, Lingshan wrote:
On 3/11/2021 2:20 PM, Jason Wang wrote:
On 2021/3/11 12:16 下午, Zhu Lingshan wrote:
On 3/11/2021 11:20 AM, Jason Wang wrote:
On 2021/3/10 5:00 下午, Zhu Lingshan wrote:
vDPA requres
t_vdpa *v)
{
- if (v->config_ctx)
+ if (v->config_ctx) {
eventfd_ctx_put(v->config_ctx);
+ v->config_ctx = NULL;
+ }
}
static long vhost_vdpa_set_config_call(struct vhost_vdpa *v, u32 __user *argp)
Thanks Stefano!
Reviewed-by: Zhu Lingshan
On 3/11/2021 2:13 PM, Jason Wang wrote:
On 2021/3/11 12:21 下午, Zhu Lingshan wrote:
On 3/11/2021 11:23 AM, Jason Wang wrote:
On 2021/3/10 5:00 下午, Zhu Lingshan wrote:
In this commit, ifcvf_get_vendor_id() will return
a device specific vendor id of the probed pci device
than a hard code
On 3/11/2021 2:20 PM, Jason Wang wrote:
On 2021/3/11 12:16 下午, Zhu Lingshan wrote:
On 3/11/2021 11:20 AM, Jason Wang wrote:
On 2021/3/10 5:00 下午, Zhu Lingshan wrote:
vDPA requres VIRTIO_F_ACCESS_PLATFORM as a must, this commit
examines this when set features.
Signed-off-by: Zhu
On 3/11/2021 11:25 AM, Jason Wang wrote:
On 2021/3/10 5:00 下午, Zhu Lingshan wrote:
IFCVF driver probes multiple types of devices now,
to distinguish the original device driven by IFCVF
from others, it is renamed as "N3000".
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/if
On 3/11/2021 11:23 AM, Jason Wang wrote:
On 2021/3/10 5:00 下午, Zhu Lingshan wrote:
In this commit, ifcvf_get_vendor_id() will return
a device specific vendor id of the probed pci device
than a hard code.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 5 -
1 file
On 3/11/2021 11:20 AM, Jason Wang wrote:
On 2021/3/10 5:00 下午, Zhu Lingshan wrote:
vDPA requres VIRTIO_F_ACCESS_PLATFORM as a must, this commit
examines this when set features.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.c | 8
drivers/vdpa/ifcvf/ifcvf_base.h
vDPA requres VIRTIO_F_ACCESS_PLATFORM as a must, this commit
examines this when set features.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.c | 8
drivers/vdpa/ifcvf/ifcvf_base.h | 1 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
3 files changed, 14 insertions(+)
diff
This commit removes the version number string, using kernel
version is enough.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c
index fd5befc5cbcc..c34e1eec6b6c
This commit would read and store device feature
bits when probe.
rename ifcvf_get_features() to ifcvf_get_hw_features(),
it reads and stores features of the probed device.
new ifcvf_get_features() simply returns stored
feature bits.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf
IFCVF driver probes multiple types of devices now,
to distinguish the original device driven by IFCVF
from others, it is renamed as "N3000".
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8
drivers/vdpa/ifcvf/ifcvf_main.c | 8
2 files changed, 8
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-net
for vDPA
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 5 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
2 files changed, 10 insertions(+)
diff --git a/drivers/vdpa/ifcvf/ifcvf_base.h b/drivers/vdpa/ifcvf
In this commit, ifcvf_get_vendor_id() will return
a device specific vendor id of the probed pci device
than a hard code.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b
(Leon)
add new device ids and remove original device ids in
separate patches(Jason)
Zhu Lingshan (6):
vDPA/ifcvf: get_vendor_id returns a device specific vendor id
vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA
vDPA/ifcvf: rename original IFCVF dev ids to N3000 ids
vDPA/ifcvf: remove
On 3/9/2021 10:42 AM, Jason Wang wrote:
On 2021/3/9 10:28 上午, Zhu, Lingshan wrote:
On 3/9/2021 10:23 AM, Jason Wang wrote:
On 2021/3/8 4:35 下午, Zhu Lingshan wrote:
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-net
for vDPA
Signed-off-by: Zhu Lingshan
---
drivers/vdpa
On 3/9/2021 10:23 AM, Jason Wang wrote:
On 2021/3/8 4:35 下午, Zhu Lingshan wrote:
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-net
for vDPA
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 5 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
2 files changed
This commit removes the version number string, using kernel
version is enough.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c
index fd5befc5cbcc..c34e1eec6b6c
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-net
for vDPA
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 5 +
drivers/vdpa/ifcvf/ifcvf_main.c | 5 +
2 files changed, 10 insertions(+)
diff --git a/drivers/vdpa/ifcvf/ifcvf_base.h b/drivers/vdpa/ifcvf
IFCVF driver probes multiple types of devices now,
to distinguish the original device driven by IFCVF
from others, it is renamed as "N3000".
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_base.h | 8
drivers/vdpa/ifcvf/ifcvf_main.c | 8
2 files changed, 8
This series enabled Intel FGPA SmartNIC C5000X-PL virtio-net for vDPA
changes from V1:
remove version number string(Leon)
add new device ids and remove original device ids
in separate patches(Jason)
Zhu Lingshan (4):
vDPA/ifcvf: get_vendor_id returns a device specific vendor id
vDPA/ifcvf
In this commit, ifcvf_get_vendor_id() will return
a device specific vendor id of the probed pci device
than a hard code.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b
Hi Leon,
Thanks for point this out, will send a V2 patchset delete it.
Thanks
Zhu Lingshan
On 3/7/2021 5:01 PM, Leon Romanovsky wrote:
On Fri, Mar 05, 2021 at 10:20:00PM +0800, Zhu Lingshan wrote:
This commit bumps ifcvf driver version string to 1.0
Signed-off-by: Zhu Lingshan
This commit enabled Intel FPGA SmartNIC C5000X-PL virtio-net
for vDPA.
C5000X-PL vendor id 0x1AF4, device id 0x1000,
subvendor id 0x8086, sub device id 0x0001
To distinguish C5000X-PL from other ifcvf driven devices,
the original ifcvf device is named "N3000".
Signed-off-by: Zh
This commit bumps ifcvf driver version string to 1.0
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b/drivers/vdpa/ifcvf/ifcvf_main.c
index fd5befc5cbcc..56a0974cf93c 100644
In this commit, ifcvf_get_vendor_id() will return
a device specific vendor id of the probed pci device
than a hard code.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/ifcvf/ifcvf_main.c b
This series enabled Intel FGPA SmartNIC C5000X-PL virtio-net
for vDPA
Zhu Lingshan (3):
vDPA/ifcvf: get_vendor_id returns a device specific vendor id
vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA
vDPA/ifcvf: bump version string to 1.0
drivers/vdpa/ifcvf/ifcvf_base.h | 13
r producer
fail, in this case, vqs still remain functional.
Signed-off-by: Zhu Lingshan
Reported-by: kernel test robot
---
drivers/vhost/vdpa.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index 62a9bb0efc55..d6b2c3bd1b01 100644
--- a/dri
This commit removed unnecessary spin_locks in vhost_vring_call
and related operations. Because we manipulate irq offloading
contents in vhost_vdpa ioctl code path which is already
protected by dev mutex and vq mutex.
Signed-off-by: Zhu Lingshan
---
drivers/vhost/vdpa.c | 8 +---
drivers
wrap of vhost_set_backend_features() with
necessary mutex lockings.
Signed-off-by: Zhu Lingshan
---
drivers/vhost/net.c | 9 -
drivers/vhost/vdpa.c | 47 ++-
drivers/vhost/vhost.c | 2 --
3 files changed, 41 insertions(+), 17 deletions
This commit introduced a new function
vhost_net_set_backend_features() which is a wrap of
vhost_set_backend_features() with necessary mutex lockings.
Signed-off-by: Zhu Lingshan
---
drivers/vhost/net.c | 9 -
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/vhost
commit will add
needed mutex lock/unlock operations in a new function
vhost_net_set_backend_features() which is a wrap of
vhost_set_backend_features().
Signed-off-by: Zhu Lingshan
---
drivers/vhost/vhost.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/drivers/vhost/vhost.c b/drivers/vhost
,
a new function vhost_net_set_backend_features() in vhost_net
is introduced to do proper mutex locking and call
vhost_set_backend_features()
Please help review. Thanks!
Zhu Lingshan (2):
vhost: remove mutex ops in vhost_set_backend_features
vhost_net: introduce vhost_net_set_backend_features
get_vq_irq() should be optional, it's required when
we need to setup irq offloading, otherwise it‘s OK to be NULL.
Signed-off-by: Zhu Lingshan
---
include/linux/vdpa.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/include/linux/vdpa.h b/include/linux/vdpa.h
This commit merge vhost_vdpa_update_vq_irq() logics into
vhost_vdpa_setup_vq_irq(), so that code are unified.
In vhost_vdpa_setup_vq_irq(), added checks for the existence
for get_vq_irq().
Signed-off-by: Zhu Lingshan
---
drivers/vhost/vdpa.c | 28 ++--
1 file changed, 6
On 8/5/2020 4:06 PM, Jason Wang wrote:
On 2020/7/31 下午2:55, Zhu Lingshan wrote:
+static void vhost_vdpa_setup_vq_irq(struct vhost_vdpa *v, u16 qid)
+{
+ struct vhost_virtqueue *vq = &v->vqs[qid];
+ const struct vdpa_config_ops *ops = v->vdpa->config;
+ struct vdpa_dev
IRQ of a vq is not expected to be changed in a DRIVER_OK ~ !DRIVER_OK
period for irq offloading purposes. Place this comment at the side of
bus ops get_vq_irq than in set_status in vhost_vdpa.
Signed-off-by: Zhu Lingshan
---
drivers/vhost/vdpa.c | 1 -
include/linux/vdpa.h | 1 +
2 files
IRQ of a vq is not expected to be changed in a DRIVER_OK ~ !DRIVER_OK
period for irq offloading purposes. Place this comment at the side of
bus ops get_vq_irq than in set_status in vhost_vdpa.
Signed-off-by: Zhu Lingshan
---
drivers/vhost/vdpa.c | 1 -
include/linux/vdpa.h | 1 +
2 files
This commit adds a new function get_vq_irq() in struct
vdpa_config_ops, which will return the irq number of a
virtqueue.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
include/linux/vdpa.h | 6 ++
1 file changed, 6 insertions(+)
diff --git a/include/linux/vdpa.h b/include/linux
This commit implemented vdpa_config_ops.get_vq_irq() in ifcvf,
and initialized vq irq to -EINVAL. So that ifcvf can report
irq number of a vq, or -EINVAL if the vq is not assigned an
irq number.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_main.c | 18
If failed to connect, there is no need to start consumer nor
producer.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
virt/lib/irqbypass.c | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/virt/lib/irqbypass.c b/virt/lib/irqbypass.c
index
through SET_VRING_CALL.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
drivers/vhost/Kconfig | 1 +
drivers/vhost/vdpa.c | 79 ++-
2 files changed, 79 insertions(+), 1 deletion(-)
diff --git a/drivers/vhost/Kconfig b/drivers/vhost/Kconfig
index
detected in update_pi_irte()
We will increase/decrease the assigned device counter in kvm/x86.
Both vDPA and VFIO would go through this code path.
Only X86 uses these counters and kvm_arch_start/end_assignment(),
so this code path only affect x86 for now.
Signed-off-by: Zhu Lingshan
Suggested-by
ied vhost_vdpa_updat
Zhu Lingshan (6):
vhost: introduce vhost_vring_call
kvm: detect assigned device via irqbypass manager
vDPA: add get_vq_irq() in vdpa_config_ops
vhost_vdpa: implement IRQ offloading in vhost_vdpa
ifcvf: implement vdpa_config_ops.get_vq_irq()
irqbypass: do not start cons/prod w
This commit introduces struct vhost_vring_call which replaced
raw struct eventfd_ctx *call_ctx in struct vhost_virtqueue.
Besides eventfd_ctx, it contains a spin lock and an
irq_bypass_producer in its structure.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
drivers/vhost/vdpa.c
This commit introduces struct vhost_vring_call which replaced
raw struct eventfd_ctx *call_ctx in struct vhost_virtqueue.
Besides eventfd_ctx, it contains a spin lock and an
irq_bypass_producer in its structure.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
drivers/vhost/vdpa.c
If failed to connect, there is no need to start consumer nor
producer.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
virt/lib/irqbypass.c | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/virt/lib/irqbypass.c b/virt/lib/irqbypass.c
index
through SET_VRING_CALL.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
drivers/vhost/Kconfig | 1 +
drivers/vhost/vdpa.c | 79 ++-
2 files changed, 79 insertions(+), 1 deletion(-)
diff --git a/drivers/vhost/Kconfig b/drivers/vhost/Kconfig
index
This commit implemented vdpa_config_ops.get_vq_irq() in ifcvf,
and initialized vq irq to -EINVAL. So that ifcvf can report
irq number of a vq, or -EINVAL if the vq is not assigned an
irq number.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
drivers/vdpa/ifcvf/ifcvf_main.c | 18
vhost_vdpa_release(). This is safe
for control vq.
(7) minor improvements
changes from V1:
(1)dropped vfio changes.
(3)removed KVM_HVAE_IRQ_BYPASS checks
(4)locking fixes
(5)simplified vhost_vdpa_updat
Zhu Lingshan (6):
vhost: introduce vhost_vring_call
kvm: detect assigned device via irqbypass
detected in update_pi_irte()
We will increase/decrease the assigned device counter in kvm/x86.
Both vDPA and VFIO would go through this code path.
Only X86 uses these counters and kvm_arch_start/end_assignment(),
so this code path only affect x86 for now.
Signed-off-by: Zhu Lingshan
Suggested-by
This commit adds a new function get_vq_irq() in struct
vdpa_config_ops, which will return the irq number of a
virtqueue.
Signed-off-by: Zhu Lingshan
Suggested-by: Jason Wang
---
include/linux/vdpa.h | 6 ++
1 file changed, 6 insertions(+)
diff --git a/include/linux/vdpa.h b/include/linux
If failed to connect, there is no need to start consumer nor
producer.
Signed-off-by: Zhu Lingshan
---
virt/lib/irqbypass.c | 16 ++--
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/virt/lib/irqbypass.c b/virt/lib/irqbypass.c
index 28fda42e471b..c9bb3957f58a 100644
This commit replaced irq_request/free() with vDPA helpers
vdpa_devm_request/free_irq() so that it can request/free
irq and setup irq offloading on order.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/ifcvf/ifcvf_main.c | 14 +-
1 file changed, 9 insertions(+), 5 deletions(-)
diff
KVM_HVAE_IRQ_BYPASS checks
(4)locking fixes
(5)simplified vhost_vdpa_updat
Zhu Lingshan (6):
vhost: introduce vhost_vring_call
kvm: detect assigned device via irqbypass manager
vDPA: implement vq IRQ allocate/free helpers in vDPA core
vhost_vdpa: implement IRQ offloading in vhost_vdpa
ifcvf
This patch introduce a set of functions for setup/unsetup
and update irq offloading respectively by register/unregister
and re-register the irq_bypass_producer.
Signed-off-by: Zhu Lingshan
---
drivers/vhost/Kconfig | 1 +
drivers/vhost/vdpa.c | 66
detected in update_pi_irte()
We will increase/decrease the assigned device counter in kvm/x86.
Both vDPA and VFIO would go through this code path.
Only X86 uses these counters and kvm_arch_start/end_assignment(),
so this code path only affect x86 for now.
Signed-off-by: Zhu Lingshan
---
arch/x86
helpers.
Signed-off-by: Zhu Lingshan
---
drivers/vdpa/vdpa.c | 49
include/linux/vdpa.h | 13
2 files changed, 62 insertions(+)
diff --git a/drivers/vdpa/vdpa.c b/drivers/vdpa/vdpa.c
index de211ef3738c..4dfc86eba0f6 100644
--- a/drivers/vdpa
This commit introduces struct vhost_vring_call which replaced
raw struct eventfd_ctx *call_ctx in struct vhost_virtqueue.
Besides eventfd_ctx, it contains a spin lock and an
irq_bypass_producer in its structure.
Signed-off-by: Zhu Lingshan
---
drivers/vhost/vdpa.c | 4 ++--
drivers/vhost
Please ignore this patchset incorrect metadata, will resend soon. Thanks!
On 7/22/2020 5:49 PM, Zhu Lingshan wrote:
From: Zhu Lingshan
This commit introduces struct vhost_vring_call which replaced
raw struct eventfd_ctx *call_ctx in struct vhost_virtqueue.
Besides eventfd_ctx, it contains a
1 - 100 of 123 matches
Mail list logo