This patch adds IO port region check to skip region map
when doing IO port map for legacy device in secondary process.
Fixes: 33604c31354a ("vfio: refactor PCI BAR mapping")
Cc: sta...@dpdk.org
Signed-off-by: Miao Li
---
drivers/bus/pci/linux/pci_vfio.c | 9 +
1 file
: 512e27eeb743 ("net/virtio: move PCI specific dev init to PCI ethdev
init")
Cc: sta...@dpdk.org
Signed-off-by: Miao Li
---
drivers/net/virtio/virtio_pci_ethdev.c | 34 +-
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/drivers/net/virtio/virtio_pci_e
This patch adds IO port region check to skip region map
when doing IO port map for legacy device in sencondary process.
Fixes: 33604c31354a ("vfio: refactor PCI BAR mapping")
Cc: sta...@dpdk.org
Signed-off-by: Miao Li
---
drivers/bus/pci/linux/pci_vfio.c | 9 +
1 file
: 512e27eeb743 ("net/virtio: move PCI specific dev init to PCI ethdev
init")
Cc: sta...@dpdk.org
Signed-off-by: Miao Li
---
drivers/net/virtio/virtio_pci_ethdev.c | 34 +-
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/drivers/net/virtio/virtio_pci_e
access all mapped sparse mmap regions by using
'bar_base_address + bar_offset'.
Signed-off-by: Miao Li
Signed-off-by: Chenbo Xia
Acked-by: Sunil Kumar Kori
Acked-by: Yahui Cao
---
drivers/bus/pci/linux/pci_vfio.c | 138 +++
drivers/bus/pci/private.h
From: Chenbo Xia
The MMIO regions may not be mmap-able for VFIO-PCI devices.
In this case, the driver should explicitly do read and write
to access these regions.
Signed-off-by: Chenbo Xia
Acked-by: Sunil Kumar Kori
Acked-by: Yahui Cao
---
doc/guides/rel_notes/release_23_07.rst | 5 +++
dri
From: Chenbo Xia
The value 40 used in VFIO_GET_REGION_ADDR() is a private value
(VFIO_PCI_OFFSET_SHIFT) defined in Linux kernel source [1]. It
is not part of VFIO API, and we should not depend on it.
[1] https://github.com/torvalds/linux/blob/v6.2/include/linux/vfio_pci_core.h
Signed-off-by: Ch
From: Chenbo Xia
This patch introduces an internal representation of the PCI device
which will be used to store the internal information that don't have
to be exposed to drivers, e.g., the VFIO region sizes/offsets.
In this patch, the internal structure is simply a wrapper of the
rte_pci_device
:
bus/pci: introduce an internal representation of PCI device
bus/pci: avoid depending on private value in kernel source
bus/pci: introduce helper for MMIO read and write
Miao Li (1):
bus/pci: add VFIO sparse mmap support
doc/guides/rel_notes/release_23_07.rst | 5 +
drivers/bus/pci/bsd
access all mapped sparse mmap regions by using
'bar_base_address + bar_offset'.
Signed-off-by: Miao Li
Signed-off-by: Chenbo Xia
---
drivers/bus/pci/linux/pci_vfio.c | 104 +++
drivers/bus/pci/private.h| 2 +
2 files changed, 94 insertions(+), 12
From: Chenbo Xia
The MMIO regions may not be mmap-able for VFIO-PCI devices.
In this case, the driver should explicitly do read and write
to access these regions.
Signed-off-by: Chenbo Xia
---
drivers/bus/pci/bsd/pci.c| 22 +++
drivers/bus/pci/linux/pci.c | 46
From: Chenbo Xia
The value 40 used in VFIO_GET_REGION_ADDR() is a private value
(VFIO_PCI_OFFSET_SHIFT) defined in Linux kernel source [1]. It
is not part of VFIO API, and we should not depend on it.
[1] https://github.com/torvalds/linux/blob/v6.2/include/linux/vfio_pci_core.h
Signed-off-by: Ch
From: Chenbo Xia
This patch introduces an internal representation of the PCI device
which will be used to store the internal information that don't have
to be exposed to drivers, e.g., the VFIO region sizes/offsets.
In this patch, the internal structure is simply a wrapper of the
rte_pci_device
te value in kernel source
bus/pci: introduce helper for MMIO read and write
Miao Li (1):
bus/pci: add VFIO sparse mmap support
drivers/bus/pci/bsd/pci.c| 35 +++-
drivers/bus/pci/linux/pci.c | 78 +--
drivers/bus/pci/linux/pci_init.h | 14 +-
drivers/bus/pci/linux/pci_uio.c
access all mapped sparse mmap regions by using
'bar_base_address + bar_offset'.
Signed-off-by: Miao Li
Signed-off-by: Chenbo Xia
---
drivers/bus/pci/linux/pci_vfio.c | 104 +++
drivers/bus/pci/private.h| 2 +
2 files changed, 94 insertions(+), 12
From: Chenbo Xia
The MMIO regions may not be mmap-able for VFIO-PCI devices.
In this case, the driver should explicitly do read and write
to access these regions.
Signed-off-by: Chenbo Xia
---
drivers/bus/pci/bsd/pci.c| 22 +++
drivers/bus/pci/linux/pci.c | 46
From: Chenbo Xia
The value 40 used in VFIO_GET_REGION_ADDR() is a private value
(VFIO_PCI_OFFSET_SHIFT) defined in Linux kernel source [1]. It
is not part of VFIO API, and we should not depend on it.
[1] https://github.com/torvalds/linux/blob/v6.2/include/linux/vfio_pci_core.h
Signed-off-by: Ch
From: Chenbo Xia
This patch introduces an internal representation of the PCI device
which will be used to store the internal information that don't have
to be exposed to drivers, e.g., the VFIO region sizes/offsets.
In this patch, the internal structure is simply a wrapper of the
rte_pci_device
pport finally.
v2:
1. add PCI device internal structure in bus/pci/windows/pci.c
2. fix parameter type error
Chenbo Xia (3):
bus/pci: introduce an internal representation of PCI device
bus/pci: avoid depending on private value in kernel source
bus/pci: introduce helper for MMIO read and write
access all mapped sparse mmap regions by using
'bar_base_address + bar_offset'.
Signed-off-by: Miao Li
Signed-off-by: Chenbo Xia
---
drivers/bus/pci/linux/pci_vfio.c | 104 +++
drivers/bus/pci/private.h| 2 +
2 files changed, 94 insertions(+), 12
From: Chenbo Xia
The MMIO regions may not be mmap-able for VFIO-PCI devices.
In this case, the driver should explicitly do read and write
to access these regions.
Signed-off-by: Chenbo Xia
---
drivers/bus/pci/bsd/pci.c| 22 +++
drivers/bus/pci/linux/pci.c | 46
From: Chenbo Xia
The value 40 used in VFIO_GET_REGION_ADDR() is a private value
(VFIO_PCI_OFFSET_SHIFT) defined in Linux kernel source [1]. It
is not part of VFIO API, and we should not depend on it.
[1] https://github.com/torvalds/linux/blob/v6.2/include/linux/vfio_pci_core.h
Signed-off-by: Ch
From: Chenbo Xia
This patch introduces an internal representation of the PCI device
which will be used to store the internal information that don't have
to be exposed to drivers, e.g., the VFIO region sizes/offsets.
In this patch, the internal structure is simply a wrapper of the
rte_pci_device
pport finally.
Chenbo Xia (3):
bus/pci: introduce an internal representation of PCI device
bus/pci: avoid depending on private value in kernel source
bus/pci: introduce helper for MMIO read and write
Miao Li (1):
bus/pci: add VFIO sparse mmap support
drivers/bus/pci/bsd/pci.c
This patch adds a log in rte_power_monitor to show the core has been
waked up.
Signed-off-by: Miao Li
---
lib/eal/x86/rte_power_intrinsics.c | 8
1 file changed, 8 insertions(+)
diff --git a/lib/eal/x86/rte_power_intrinsics.c
b/lib/eal/x86/rte_power_intrinsics.c
index f749da9b85
This patch adds a log in main telemetry loop to show the thread has
woken up and begun to send and receive packets.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index
This patch adds queue status check to make sure that vhost monitor
address will not be got until the link between backend and frontend
up and the packets are allowed to be queued.
Signed-off-by: Miao Li
---
drivers/net/vhost/rte_eth_vhost.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a
This patch adds a log in main telemetry loop to show the thread is
waked up and begins to send and receive packets.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index
support devices like virtio
and vhost.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
Acked-by: David Hunt
---
examples/l3fwd-power/main.c | 15 ++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 21c79567b1
return -ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Fixes: 209fd585456c ("power: make ethdev power management thread unsafe")
Cc: sta...@dpdk.org
Signed-off-by: Miao Li
Acked-by: Anatoly Burakov
Reviewed-by: Chenbo Xia
and the running core will sleep. Once
packets arrive, the value of address will be changed and the running
core will wakeup.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
Acked-by: David Hunt
---
doc/guides/rel_notes/release_21_11.rst | 4 +++
drivers/net/vhost/rte_eth_vhost.c | 40
nguish the
value used to match something or not match something. Vhost driver can use
these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
Acked-by: David Hunt
---
doc/guides/rel_notes/release_21_11.rst | 4 +++
lib/vhost/rte_vhost.h
and the running core will sleep. Once
packets arrive, the value of address will be changed and the running
core will wakeup.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
Acked-by: David Hunt
---
doc/guides/rel_notes/release_21_11.rst | 4 ++
drivers/net/virtio/virtio_ethdev.c | 56
ort configuration according to the device information and
remove adding command line arguments
-modify some titles
Miao Li (5):
net/virtio: support power monitor
vhost: add power monitor support API
net/vhost: support power monitor
power: modify return of queue_stopped
examples/l3fwd-power: supp
support devices like virtio
and vhost.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 15 ++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 73a3ab5bc0..5811908283 100644
--- a/examples/l3fwd-power
return -ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Signed-off-by: Miao Li
Acked-by: Anatoly Burakov
Reviewed-by: Chenbo Xia
---
lib/power/rte_power_pmd_mgmt.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff
vhost_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11
nguish the
value used to match something or not match something. Vhost driver can use
these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11.rst | 4 +++
lib/vhost/rte_vhost.h | 42 ++
lib/vhost/v
virtio_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
---
doc/guides
size in rte_vhost_power_monitor_cond
-modify power callback function
-add dev and queue id check and remove unnecessary check
-fix the assignment of pmc->size
-update port configuration according to the device information and
remove adding command line arguments
-modify some titles
Miao Li (5):
support devices like virtio
and vhost.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 15 ++-
1 file changed, 14 insertions(+), 1 deletion(-)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 73a3ab5bc0..dac946c18f 100644
--- a/examples/l3fwd-power
return -ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Signed-off-by: Miao Li
Acked-by: Anatoly Burakov
Reviewed-by: Chenbo Xia
---
lib/power/rte_power_pmd_mgmt.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff
vhost_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11
nguish the
value used to match something or not match something. Vhost driver can use
these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11.rst | 4 +++
lib/vhost/rte_vhost.h | 42 ++
lib/vhost/v
virtio_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
---
doc/guides
callback function
-add dev and queue id check and remove unnecessary check
-fix the assignment of pmc->size
-update port configuration according to the device information and
remove adding command line arguments
-modify some titles
Miao Li (5):
net/virtio: implement rte_power_monitor API
vh
support devices like virtio
and vhost.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 9 -
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 73a3ab5bc0..61c15e01d2 100644
--- a/examples/l3fwd-power/main.c
+++ b
return ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Signed-off-by: Miao Li
Acked-by: Anatoly Burakov
---
lib/power/rte_power_pmd_mgmt.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/lib/power
vhost_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11
nguish the
value used to match something or not match something. Vhost driver can use
these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11.rst | 4 +++
lib/vhost/rte_vhost.h | 44 ++
lib/vhost/v
virtio_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
---
doc/guides
check
-fix the assignment of pmc->size
-update port configuration according to the device information and
remove adding command line arguments
-modify some titles
Miao Li (5):
net/virtio: implement rte_power_monitor API
vhost: implement rte_power_monitor API
net/vhost: implem
support devices like virtio
and vhost.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 9 -
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 73a3ab5bc0..61c15e01d2 100644
--- a/examples/l3fwd-power/main.c
+++ b
return ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Signed-off-by: Miao Li
Acked-by: Anatoly Burakov
---
lib/power/rte_power_pmd_mgmt.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/lib/power
vhost_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11
nguish the
value used to match something or not match something. Vhost driver can use
these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
---
doc/guides/rel_notes/release_21_11.rst | 4 +++
lib/vhost/rte_vhost.h | 44 ++
lib/vhost/v
virtio_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
Reviewed-by: Chenbo Xia
---
doc/guides
pmc->size
-update port configuration according to the device information and
remove adding command line arguments
-modify some titles
Miao Li (5):
net/virtio: implement rte_power_monitor API
vhost: implement rte_power_monitor API
net/vhost: implement rte_power_monitor API
power: mod
support devices like virtio
and vhost.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index aa7b8db44a..14ae87a9d5 100644
--- a/examples/l3fwd-power/main.c
+++ b/examples/l3fwd
return ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Signed-off-by: Miao Li
---
lib/power/rte_power_pmd_mgmt.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/lib/power/rte_power_pmd_mgmt.c b/lib/power
vhost_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
drivers/net/vhost/rte_eth_vhost.c
nguish the
value used to match something or not match something. Vhost driver can use
these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
---
lib/vhost/rte_vhost.h | 41 +
lib/vhost/version.map | 3 +++
lib/vhost/vhost.
virtio_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
drivers/net/virtio/virtio_ethdev.c
ice information and
remove adding command line arguments
-modify some titles
Miao Li (5):
net/virtio: implement rte_power_monitor API
vhost: implement rte_power_monitor API
net/vhost: implement rte_power_monitor API
power: modify return of queue_stopped
examples/l3fwd-power: support virtio/vh
support devices like virtio
and vhost.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 5 +
1 file changed, 5 insertions(+)
diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index aa7b8db44a..14ae87a9d5 100644
--- a/examples/l3fwd-power/main.c
+++ b/examples/l3fwd
return ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Signed-off-by: Miao Li
---
lib/power/rte_power_pmd_mgmt.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/lib/power/rte_power_pmd_mgmt.c b/lib/power
vhost_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
drivers/net/vhost/rte_eth_vhost.c
nguish the
value used to match something or not match someting. Vhost driver can use
these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
---
lib/vhost/rte_vhost.h | 41 +
lib/vhost/version.map | 3 +++
lib/vhost/vhost.
virtio_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
drivers/net/virtio/virtio_ethdev.c
ify some titles
Miao Li (5):
net/virtio: implement rte_power_monitor API
vhost: implement rte_power_monitor API
net/vhost: implement rte_power_monitor API
power: modify return of queue_stopped
examples/l3fwd-power: support virtio/vhost
drivers/net/vhost/rte_eth_vhost.c |
This patch adds two command line arguments which will be needed when using
virtio/vhost vdev. One argument sets rx offloads capabilities
DEV_RX_OFFLOAD_VLAN_STRIP. The other argument sets DCB, PSS and VMDQ off
for RX side.
Signed-off-by: Miao Li
---
examples/l3fwd-power/main.c | 15
return ENOTSUP to support vdevs which cannot
provide rx queue information and rx queue state enable power management.
Signed-off-by: Miao Li
---
lib/power/rte_power_pmd_mgmt.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/lib/power/rte_power_pmd_mgmt.c b/lib/power
vhost_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
drivers/net/vhost/rte_eth_vhost.c
er can
use these information to fill rte_power_monitor_cond.
Signed-off-by: Miao Li
---
lib/vhost/rte_vhost.h | 33 +
lib/vhost/version.map | 3 +++
lib/vhost/vhost.c | 30 ++
3 files changed, 66 insertions(+)
diff --git a
virtio_get_monitor_addr to provide address to monitor. When no packet come
in, the value of address will not be changed and the running core will
sleep. Once packets arrive, the value of address will be changed and the
running core will wakeup.
Signed-off-by: Miao Li
---
drivers/net/virtio/virtio_ethdev.c
This patchset implements rte_power_monitor API in virtio and vhost PMD
to reduce power consumption when no packet come in. This API can be
called and tested in l3fwd-power after adding vhost and virtio support
in l3fwd-power and ignoring the rx queue information check in
queue_stopped().
Miao Li
76 matches
Mail list logo