net/bnxt: support IOVA VA mode

Message ID a8073ccaa9cf1c7454bdc061e3a0a95a2f4ac541.1549995965.git.dcaratti@redhat.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series net/bnxt: support IOVA VA mode |

Checks

Context Check Description
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/intel-Performance-Testing success Performance Testing PASS
ci/Intel-compilation success Compilation OK

Commit Message

Davide Caratti Feb. 12, 2019, 6:30 p.m. UTC
  Set RTE_PCI_DRV_IOVA_AS_VA in drv_flags: this allows initializing bnxt
PMD as non-root also on Linux v4.x, where /proc/self/pagemap can't be
acccessed without CAP_SYS_ADMIN privileges.

Cc: stable@dpdk.org
Signed-off-by: Davide Caratti <dcaratti@redhat.com>
---
 drivers/net/bnxt/bnxt_ethdev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Ajit Khaparde Feb. 12, 2019, 7:01 p.m. UTC | #1
On Tue, Feb 12, 2019 at 10:30 AM Davide Caratti <dcaratti@redhat.com> wrote:

> Set RTE_PCI_DRV_IOVA_AS_VA in drv_flags: this allows initializing bnxt
> PMD as non-root also on Linux v4.x, where /proc/self/pagemap can't be
> acccessed without CAP_SYS_ADMIN privileges.
>
> Cc: stable@dpdk.org
> Signed-off-by: Davide Caratti <dcaratti@redhat.com>
>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>


> ---
>  drivers/net/bnxt/bnxt_ethdev.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/bnxt/bnxt_ethdev.c
> b/drivers/net/bnxt/bnxt_ethdev.c
> index 801c6ffad..189527207 100644
> --- a/drivers/net/bnxt/bnxt_ethdev.c
> +++ b/drivers/net/bnxt/bnxt_ethdev.c
> @@ -3548,7 +3548,7 @@ static int bnxt_pci_remove(struct rte_pci_device
> *pci_dev)
>  static struct rte_pci_driver bnxt_rte_pmd = {
>         .id_table = bnxt_pci_id_map,
>         .drv_flags = RTE_PCI_DRV_NEED_MAPPING |
> -               RTE_PCI_DRV_INTR_LSC,
> +               RTE_PCI_DRV_INTR_LSC | RTE_PCI_DRV_IOVA_AS_VA,
>         .probe = bnxt_pci_probe,
>         .remove = bnxt_pci_remove,
>  };
> --
> 2.20.1
>
>
  
Ferruh Yigit Feb. 13, 2019, 1:29 p.m. UTC | #2
On 2/12/2019 7:01 PM, Ajit Khaparde wrote:
> On Tue, Feb 12, 2019 at 10:30 AM Davide Caratti <dcaratti@redhat.com> wrote:
> 
>> Set RTE_PCI_DRV_IOVA_AS_VA in drv_flags: this allows initializing bnxt
>> PMD as non-root also on Linux v4.x, where /proc/self/pagemap can't be
>> acccessed without CAP_SYS_ADMIN privileges.
>>
>> Cc: stable@dpdk.org
>> Signed-off-by: Davide Caratti <dcaratti@redhat.com>
>>
> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>

Applied to dpdk-next-net/master, thanks.
  

Patch

diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index 801c6ffad..189527207 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -3548,7 +3548,7 @@  static int bnxt_pci_remove(struct rte_pci_device *pci_dev)
 static struct rte_pci_driver bnxt_rte_pmd = {
 	.id_table = bnxt_pci_id_map,
 	.drv_flags = RTE_PCI_DRV_NEED_MAPPING |
-		RTE_PCI_DRV_INTR_LSC,
+		RTE_PCI_DRV_INTR_LSC | RTE_PCI_DRV_IOVA_AS_VA,
 	.probe = bnxt_pci_probe,
 	.remove = bnxt_pci_remove,
 };