[PATCH] hv_netvsc: Mark VF as slave before exposing it to user-mode

2023-10-25 Thread longli
From: Long Li When a VF is being exposed form the kernel, it should be marked as "slave" before exposing to the user-mode. The VF is not usable without netvsc running as master. The user-mode should never see a VF without the "slave" flag. This commit moves the code of setting the slave flag to

[Patch v2] hv_netvsc: Mark VF as slave before exposing it to user-mode

2023-10-27 Thread longli
From: Long Li When a VF is being exposed form the kernel, it should be marked as "slave" before exposing to the user-mode. The VF is not usable without netvsc running as master. The user-mode should never see a VF without the "slave" flag. This commit moves the code of setting the slave flag to

[PATCH net v3] hv_netvsc: Mark VF as slave before exposing it to user-mode

2023-11-08 Thread longli
From: Long Li When a VF is being exposed form the kernel, it should be marked as "slave" before exposing to the user-mode. The VF is not usable without netvsc running as master. The user-mode should never see a VF without the "slave" flag. An example of a user-mode program depending on this flag

[PATCH net-next v4] hv_netvsc: Mark VF as slave before exposing it to user-mode

2023-11-08 Thread longli
From: Long Li When a VF is being exposed form the kernel, it should be marked as "slave" before exposing to the user-mode. The VF is not usable without netvsc running as master. The user-mode should never see a VF without the "slave" flag. An example of a user-mode program depending on this flag

[Patch v1 0/4]

2023-11-22 Thread longli
From: Long Li This patchset add support for registering a RDMA device handle with SoC for support of upcoming RC queue pairs and CQ interrupts. This patchset is partially based on Ajay Sharma's work: https://lore.kernel.org/netdev/1697494322-26814-1-git-send-email-sharmaa...@linuxonhyperv.com L

[Patch v1 3/4] RDMA/mana_ib: create RDMA adapter handle

2023-11-22 Thread longli
From: Long Li Create the RDMA device handle with the SoC using the management EQ created earlier. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/device.c | 10 -- drivers/infiniband/hw/mana/main.c| 51 drivers/infiniband/hw/mana/mana_ib.h | 30 +

[Patch v1 2/4] RDMA/mana_ib: create and process EQ events

2023-11-22 Thread longli
From: Long Li Before the software can create an RDMA adapter handle with SoC, it needs to create EQs for processing SoC events from RDMA device. Because MSI-X vectors are shared between MANA Ethernet device and RDMA device, this patch adds support to share EQs on MSI-X vectors and creates managem

[Patch v1 1/4] RDMA/mana_ib: register RDMA device with GDMA

2023-11-22 Thread longli
From: Long Li MANA hardware supports RC queue pairs over RoCE. Software needs to register with the RDMA management interface on the SoC to access this feature. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/device.c | 25 --- drivers/infiniband/hw/mana/main.c

[Patch v1 4/4] RDMA/mana_ib: query device capabilities

2023-11-22 Thread longli
From: Long Li With RDMA device handle created, use it to query on hardware capabilities and cache this information for future query requests to the driver. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/cq.c | 2 +- drivers/infiniband/hw/mana/device.c | 6 +++ drivers/infiniband

[Patch v2 0/3] Register with RDMA SOC interface and support for CQ

2023-12-04 Thread longli
From: Long Li This patchset add support for registering a RDMA device with SoC for support of querying device capabilities, upcoming RC queue pairs and CQ interrupts. This patchset is partially based on Ajay Sharma's work: https://lore.kernel.org/netdev/1697494322-26814-1-git-send-email-sharmaa.

[Patch v2 1/3] RDMA/mana_ib: register RDMA device with GDMA

2023-12-04 Thread longli
From: Long Li Software client needs to register with the RDMA management interface on the SoC to access more features, including querying device capabilities and RC queue pair. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/device.c | 24 +++ drivers/infiniband

[Patch v2 2/3] RDMA/mana_ib: query device capabilities

2023-12-04 Thread longli
From: Long Li With RDMA device registered, use it to query on hardware capabilities and cache this information for future query requests to the driver. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/cq.c | 2 +- drivers/infiniband/hw/mana/device.c | 7 +++ drivers/infiniband/hw/

[Patch v2 3/3] RDMA/mana_ib: Add CQ interrupt support for RAW QP

2023-12-04 Thread longli
From: Long Li At probing time, the MANA core code allocates EQs for supporting interrupts on Ethernet queues. The same interrupt mechanisum is used by RAW QP. Use the same EQs for delivering interrupts on the CQ for the RAW QP. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/cq.c |

[Patch v2 0/3] Register with RDMA SOC interface and support for CQ

2023-12-13 Thread longli
From: Long Li This patchset add support for registering a RDMA device with SoC for support of querying device capabilities, upcoming RC queue pairs and CQ interrupts. This patchset is partially based on Ajay Sharma's work: https://lore.kernel.org/netdev/1697494322-26814-1-git-send-email-sharmaa.

[Patch v3 1/3] RDMA/mana_ib: register RDMA device with GDMA

2023-12-13 Thread longli
From: Long Li Software client needs to register with the RDMA management interface on the SoC to access more features, including querying device capabilities and RC queue pair. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/device.c | 24 +++ drivers/infiniband

[Patch v3 2/3] RDMA/mana_ib: query device capabilities

2023-12-13 Thread longli
From: Long Li With RDMA device registered, use it to query on hardware capabilities and cache this information for future query requests to the driver. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/cq.c | 2 +- drivers/infiniband/hw/mana/device.c | 7 +++ drivers/infiniband/hw/

[Patch v3 3/3] RDMA/mana_ib: Add CQ interrupt support for RAW QP

2023-12-13 Thread longli
From: Long Li At probing time, the MANA core code allocates EQs for supporting interrupts on Ethernet queues. The same interrupt mechanisum is used by RAW QP. Use the same EQs for delivering interrupts on the CQ for the RAW QP. Signed-off-by: Long Li --- Change in v3: Removed unused varaible m

[Patch v4 0/3] Register with RDMA SOC interface and support for CQ

2023-12-15 Thread longli
From: Long Li This patchset add support for registering a RDMA device with SoC for support of querying device capabilities, upcoming RC queue pairs and CQ interrupts. This patchset is partially based on Ajay Sharma's work: https://lore.kernel.org/netdev/1697494322-26814-1-git-send-email-sharmaa.

[Patch v4 1/3] RDMA/mana_ib: register RDMA device with GDMA

2023-12-15 Thread longli
From: Long Li Software client needs to register with the RDMA management interface on the SoC to access more features, including querying device capabilities and RC queue pair. Signed-off-by: Long Li --- drivers/infiniband/hw/mana/device.c | 24 +++ drivers/infiniband

[Patch v4 2/3] RDMA/mana_ib: query device capabilities

2023-12-15 Thread longli
From: Long Li With RDMA device registered, use it to query on hardware capabilities and cache this information for future query requests to the driver. Signed-off-by: Long Li --- Change in v4: On query device failure, goto deregister_device, not ib_free_device Change function name mana_ib_quer

[Patch v4 3/3] RDMA/mana_ib: Add CQ interrupt support for RAW QP

2023-12-15 Thread longli
From: Long Li At probing time, the MANA core code allocates EQs for supporting interrupts on Ethernet queues. The same interrupt mechanisum is used by RAW QP. Use the same EQs for delivering interrupts on the CQ for the RAW QP. Signed-off-by: Long Li --- Change in v3: Removed unused varaible

[PATCH net] net: mana: Fix doorbell out of order violation and avoid unnecessary doorbell rings

2024-08-05 Thread longli
From: Long Li After napi_complete_done() is called, another NAPI may be running on another CPU and ring the doorbell before the current CPU does. When combined with unnecessary rings when there is no need to ARM the CQ, this triggers error paths in the hardware. Fix this by always ring the doorb

[PATCH v2 net] net: mana: Fix doorbell out of order violation and avoid unnecessary doorbell rings

2024-08-07 Thread longli
From: Long Li After napi_complete_done() is called when NAPI is polling in the current process context, another NAPI may be scheduled and start running in softirq on another CPU and may ring the doorbell before the current CPU does. When combined with unnecessary rings when there is no need to ar

[PATCH v3 net] net: mana: Fix doorbell out of order violation and avoid unnecessary doorbell rings

2024-08-09 Thread longli
From: Long Li After napi_complete_done() is called when NAPI is polling in the current process context, another NAPI may be scheduled and start running in softirq on another CPU and may ring the doorbell before the current CPU does. When combined with unnecessary rings when there is no need to ar

[PATCH] hv_netvsc: Set device flags for properly indicating bonding

2024-11-27 Thread longli
From: Long Li hv_netvsc uses a subset of bonding features in that the master always has only one active slave. But it never properly setup those flags. Other kernel APIs (e.g those in "include/linux/netdevice.h") check for IFF_MASTER, IFF_SLAVE and IFF_BONDING for determing if those are used in

[PATCH] RDMA/mana_ib: Use the correct net device for IB

2024-11-27 Thread longli
From: Long Li mana_ib should not set the net device on its master device when it's bonded. The main purpose of doing this is to get the correct GID, however it makes it impossible to unload the master device from kernel, and move to user-space (e.g. DPDK usage). Fix this by using its VF device a

[PATCH 2/3] RDMA/core: Use upper_device_filter() to add upper IPs

2024-11-27 Thread longli
From: Long Li add_cmd_upper_ips() is used to add upper IPs on a bonded slave. Its filter function should be set to the same as upper_ips_del_cmd() in that it looks for upper netdevs for GIDs. Signed-off-by: Long Li --- drivers/infiniband/core/roce_gid_mgmt.c | 2 +- 1 file changed, 1 insertion

[PATCH 3/3] RDMA/core: Add default IP when a bonded slave is unlinked

2024-11-27 Thread longli
From: Long Li When a bonded slave is unlikned, the current code doesn't add a default GID for the new unlinked netdev. Add a default GID for the netdev. Signed-off-by: Long Li --- drivers/infiniband/core/roce_gid_mgmt.c | 13 +++-- 1 file changed, 7 insertions(+), 6 deletions(-) diff

[PATCH 1/3] RDMA/core: Do not use netdev if it is a bonded slave

2024-11-27 Thread longli
From: Long Li Filter function is_eth_port_of_netdev_filter() is used to determine if a netdev should be used for assigning its IP to GID cache. This function should filter out bonded slave netdevs. For bonded slaves, their master netdevs should be used to cache GIDs. Signed-off-by: Long Li ---

[Patch v2 3/3] IB/core: Add default IP when a slave is unlinked

2025-02-07 Thread longli
From: Long Li When a bonded slave is unlinked, the current code doesn't add a default GID for the new unlinked netdev. Add a default GID for the netdev. Signed-off-by: Long Li --- drivers/infiniband/core/roce_gid_mgmt.c | 13 +++-- 1 file changed, 7 insertions(+), 6 deletions(-) diff

[Patch v2 0/3] IB/core: Fix GID cache for bonded net devices

2025-02-07 Thread longli
From: Long Li When populating GID cache for net devices in a bonded setup, it should use the master device's address whenever applicable. The current code has some incorrect behaviors when dealing with bonded devices: 1. It adds IP of bonded slave to the GID cache when the device is already bon

[Patch v2 2/3] IB/core: Use upper_device_filter to add upper ips

2025-02-07 Thread longli
From: Long Li add_cmd_upper_ips() in ndev_event_link() is used to add upper IPs on a bonded slave. Its filter function should be set to the same as upper_ips_del_cmd() in ndev_event_unlink, in that they both look for upper netdevs for GIDs. Signed-off-by: Long Li --- drivers/infiniband/core/ro

[Patch v2 1/3] IB/core: Do not use netdev IP if it is a bonded slave

2025-02-07 Thread longli
From: Long Li Filter function is_eth_port_of_netdev_filter() is used to determine if a netdev should be used for assigning its IP to GID cache. This function should filter out bonded slave netdevs. For bonded slaves, their master netdevs should be used to cache GIDs. Signed-off-by: Long Li ---

[PATCH rdma-next] MAINTAINERS: update maintainer for Microsoft MANA RDMA driver

2025-02-07 Thread longli
From: Long Li Ajay is no longer working on the MANA RDMA driver. Konstantin Taranov has made significant contributions to implementing RC QP in both kernel and user-mode. He will take the responsibility of fixing bugs, reviewing patches and developing new features for MANA RDMA driver. Signed-

[PATCH net-next v3] hv_netvsc: Set device flags for properly indicating bonding in Hyper-V

2025-02-07 Thread longli
From: Long Li On Hyper-V platforms, a slave VF netdev always bonds to Netvsc and remains as Netvsc's only active slave as long as the slave device is present. This behavior is the same as a bonded device, but it's not user-configurable. Some kernel APIs (e.g those in "include/linux/netdevice.h")

[Patch net-next v2] hv_netvsc: Set device flags for properly indicating bonding in Hyper-V

2024-12-13 Thread longli
From: Long Li On Hyper-V platforms, a slave VF netdev always bonds to Netvsc and remains as Netvsc's only active slave as long as the slave device is present. This behavior is not user-configurable. Other kernel APIs (e.g those in "include/linux/netdevice.h") check for IFF_MASTER, IFF_SLAVE and

[PATCH v2] scsi: storvsc: Set correct data length for sending SCSI command without payload

2025-01-22 Thread longli
From: Long Li In StorVSC, payload->range.len is used to indicate if this SCSI command carries payload. This data is allocated as part of the private driver data by the upper layer and may get passed to lower driver uninitialized. For example, the SCSI error handling mid layer may send TEST_UNIT_

[PATCH] scsi: storvsc: Set correct data length for sending SCSI command without payload

2025-01-16 Thread longli
From: Long Li In StorVSC, payload->range.len is used to indicate if this SCSI command carries payload. This data is allocated as part of the private driver data by the upper layer and may get passed to lower driver uninitialized. If a SCSI command doesn't carry payload, the driver may use this v

[PATCH 2/2] uio_hv_generic: Use correct size for interrupt and monitor pages

2025-04-17 Thread longli
From: Long Li Interrupt and monitor pages should be in Hyper-V page size (4k bytes). This can be different to the system page size. Cc: sta...@vger.kernel.org Fixes: 95096f2fbd10 ("uio-hv-generic: new userspace i/o driver for VMBus") Signed-off-by: Long Li --- drivers/uio/uio_hv_generic.c | 4

[PATCH 1/2] Drivers: hv: Allocate interrupt and monitor pages aligned to system page boundary

2025-04-17 Thread longli
From: Long Li There are use cases that interrupt and monitor pages are mapped to user-mode through UIO, they need to be system page aligned. Some Hyper-V allocation APIs introduced earlier broke those requirements. Fix those APIs by always allocating Hyper-V page at system page boundaries. Cc:

[Patch v2 0/4] Fix uio_hv_generic on systems with >4k page sizes

2025-04-30 Thread longli
From: Long Li UIO framework requires the device memory aligned to page boundary. Hyper-V may allocate some memory that is Hyper-V page aligned (4k) but not system page aligned. Fix this by having Hyper-V always allocate those pages on system page boundary and expose them to user-mode. Change in

[Patch v2 2/4] uio_hv_generic: Use correct size for interrupt and monitor pages

2025-04-30 Thread longli
From: Long Li Interrupt and monitor pages should be in Hyper-V page size (4k bytes). This can be different to the system page size. This size is read and used by the user-mode program to determine the mapped data region. An example of such user-mode program is the VMBUS driver in DPDK. Cc: sta.

[Patch v2 3/4] uio_hv_generic: Adjust ring size according to system page alignment

2025-04-30 Thread longli
From: Long Li Following the ring header, the ring data should align to system page boundary. Adjust the size if necessary. Cc: sta...@vger.kernel.org Fixes: 95096f2fbd10 ("uio-hv-generic: new userspace i/o driver for VMBus") Signed-off-by: Long Li --- drivers/uio/uio_hv_generic.c | 6 ++ 1

[Patch v2 1/4] Drivers: hv: Allocate interrupt and monitor pages aligned to system page boundary

2025-04-30 Thread longli
From: Long Li There are use cases that interrupt and monitor pages are mapped to user-mode through UIO, they need to be system page aligned. Some Hyper-V allocation APIs introduced earlier broke those requirements. Fix those APIs by always allocating Hyper-V page at system page boundaries. Cc:

[Patch v2 4/4] Drivers: hv: Remove hv_free/alloc_* helpers

2025-04-30 Thread longli
From: Long Li Those helpers are simply wrappers for page allocations. Signed-off-by: Long Li --- drivers/hv/connection.c| 23 +-- drivers/hv/hv_common.c | 24 include/asm-generic/mshyperv.h | 4 3 files changed, 17 insertions(+

[Patch v3 1/5] Drivers: hv: Allocate interrupt and monitor pages aligned to system page boundary

2025-05-05 Thread longli
From: Long Li There are use cases that interrupt and monitor pages are mapped to user-mode through UIO, so they need to be system page aligned. Some Hyper-V allocation APIs introduced earlier broke those requirements. Fix this by using page allocation functions directly for interrupt and monitor

[Patch v3 0/5] Fix uio_hv_generic on systems with >4k page sizes

2025-05-05 Thread longli
From: Long Li UIO framework requires the device memory aligned to page boundary. Hyper-V may allocate some memory that is Hyper-V page aligned (4k) but not system page aligned. Fix this by having Hyper-V always allocate those pages on system page boundary and expose them to user-mode. Change in

[Patch v3 3/5] uio_hv_generic: Align ring size to system page

2025-05-05 Thread longli
From: Long Li Following the ring header, the ring data should align to system page boundary. Adjust the size if necessary. Cc: sta...@vger.kernel.org Fixes: 95096f2fbd10 ("uio-hv-generic: new userspace i/o driver for VMBus") Signed-off-by: Long Li --- drivers/uio/uio_hv_generic.c | 3 +++ 1 fi

[Patch v3 2/5] uio_hv_generic: Use correct size for interrupt and monitor pages

2025-05-05 Thread longli
From: Long Li Interrupt and monitor pages should be in Hyper-V page size (4k bytes). This can be different from the system page size. This size is read and used by the user-mode program to determine the mapped data region. An example of such user-mode program is the VMBus driver in DPDK. Cc: st

[Patch v3 5/5] Drivers: hv: Remove hv_alloc/free_* helpers

2025-05-05 Thread longli
From: Long Li There are no users for those functions, remove them. Signed-off-by: Long Li --- drivers/hv/hv_common.c | 39 -- include/asm-generic/mshyperv.h | 4 2 files changed, 43 deletions(-) diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_

[Patch v3 4/5] Drivers: hv: Use kzalloc for panic page allocation

2025-05-05 Thread longli
From: Long Li To prepare for removal of hv_alloc_* and hv_free* functions, use kzalloc/kfree directly for panic reporting page. Signed-off-by: Long Li --- drivers/hv/hv_common.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/hv/hv_common.c b/drivers/hv/hv_com

[PATCH 0/2] Fix uio_hv_generic on 64k page systems

2025-04-18 Thread longli
From: Long Li UIO framework requires the device memory aligned to page boundary. Hyper-V may allocate some memory that is Hyper-V page aligned (4k) but not system page aligned. Fix this by having Hyper-V always allocate those pages on system page boundary and expose them to user-mode. Long Li (

[PATCH] hv_netvsc: set device master/slave flags on bonding

2025-02-28 Thread longli
From: Long Li Currently netvsc only sets the SLAVE flag on VF netdev when it's bonded. It should also set the MASTER flag on itself and clear all those flags when the VF is unbonded. Signed-off-by: Long Li --- drivers/net/hyperv/netvsc_drv.c | 6 ++ 1 file changed, 6 insertions(+) diff --

[Patch v2] uio_hv_generic: Set event for all channels on the device

2025-02-28 Thread longli
From: Long Li Hyper-V may offer a non latency sensitive device with subchannels without monitor bit enabled. The decision is entirely on the Hyper-V host not configurable within guest. When a device has subchannels, also signal events for the subchannel if its monitor bit is disabled. Signed-of

[Patch rdma-next] RDMA/mana_ib: handle net event for pointing to the current netdev

2025-02-28 Thread longli
From: Long Li When running under Hyper-V, the master device to the RDMA device is always bonded to this RDMA device if it's present in the kernel. This is not user-configurable. The master device can be unbind/bind from the kernel. During those events, the RDMA device should set to the current n

[Patch rdma-next v2] RDMA/mana_ib: handle net event for pointing to the current netdev

2025-03-03 Thread longli
From: Long Li When running under Hyper-V, the master device to the RDMA device is always bonded to this RDMA device. This is not user-configurable. The master device can be unbind/bind from the kernel. During those events, the RDMA device should set to the current netdev to relect the change of

[patch rdma-next v3 1/2] net: mana: Change the function signature of mana_get_primary_netdev_rcu

2025-03-04 Thread longli
From: Long Li Change mana_get_primary_netdev_rcu() to mana_get_primary_netdev(), and return the ndev with refcount held. The caller is responsible for dropping the refcount by calling dev_put(). Signed-off-by: Long Li --- drivers/infiniband/hw/mana/device.c | 7 +++ drivers/net/

[patch rdma-next v3 2/2] RDMA/mana_ib: Handle net event for pointing to the current netdev

2025-03-04 Thread longli
From: Long Li When running under Hyper-V, the master device to the RDMA device is always bonded to this RDMA device. This is not user-configurable. The master device can be unbind/bind from the kernel. During those events, the RDMA device should set to the current netdev to relect the change of

[patch rdma-next v5 1/2] net: mana: Change the function signature of mana_get_primary_netdev_rcu

2025-03-06 Thread longli
From: Long Li Change mana_get_primary_netdev_rcu() to mana_get_primary_netdev(), and return the ndev with refcount held. The caller is responsible for dropping the refcount. Also drop the check for IFF_SLAVE as it is not necessary if the upper device is present. Signed-off-by: Long Li --- Chan

[patch rdma-next v5 2/2] RDMA/mana_ib: Handle net event for pointing to the current netdev

2025-03-06 Thread longli
From: Long Li When running under Hyper-V, the master device to the RDMA device is always bonded to this RDMA device. This is not user-configurable. The master device can be unbind/bind from the kernel. During those events, the RDMA device should set to the current netdev to reflect the change of

[Patch v3] uio_hv_generic: Set event for all channels on the device

2025-03-10 Thread longli
From: Long Li Hyper-V may offer a non latency sensitive device with subchannels without monitor bit enabled. The decision is entirely on the Hyper-V host not configurable within guest. When a device has subchannels, also signal events for the subchannel if its monitor bit is disabled. This patc

[patch rdma-next v4 1/2] net: mana: Change the function signature of mana_get_primary_netdev_rcu

2025-03-05 Thread longli
From: Long Li Change mana_get_primary_netdev_rcu() to mana_get_primary_netdev(), and return the ndev with refcount held. The caller is responsible for dropping the refcount. Also drop the check for IFF_SLAVE as it is not necessary if the upper device is present. Signed-off-by: Long Li --- Chan

[patch rdma-next v4 2/2] RDMA/mana_ib: Handle net event for pointing to the current netdev

2025-03-05 Thread longli
From: Long Li When running under Hyper-V, the master device to the RDMA device is always bonded to this RDMA device. This is not user-configurable. The master device can be unbind/bind from the kernel. During those events, the RDMA device should set to the current netdev to reflect the change of

[patch rdma-next v6 1/2] net: mana: Change the function signature of mana_get_primary_netdev_rcu

2025-03-12 Thread longli
From: Long Li Change mana_get_primary_netdev_rcu() to mana_get_primary_netdev(), and return the ndev with refcount held. The caller is responsible for dropping the refcount. Also drop the check for IFF_SLAVE as it is not necessary if the upper device is present. Signed-off-by: Long Li --- Chan

[patch rdma-next v6 2/2] RDMA/mana_ib: Handle net event for pointing to the current netdev

2025-03-12 Thread longli
From: Long Li When running under Hyper-V, the master device to the RDMA device is always bonded to this RDMA device. This is not user-configurable. The master device can be unbind/bind from the kernel. During those events, the RDMA device should set to the current netdev to reflect the change of

[PATCH] uio_hv_generic: Set event for all channels on the device

2025-02-26 Thread longli
From: Long Li Hyper-V may offer a non latency sensitive device with subchannels without monitor bit enabled. The decision is entirely on the Hyper-V host not configurable within guest. When a device has subchannels, also signal events for the subchannel if its monitor bit is disabled. Signed-of

[Patch net-next v2] net: mana: Record doorbell physical address in PF mode

2025-06-13 Thread longli
From: Long Li MANA supports RDMA in PF mode. The driver should record the doorbell physical address when in PF mode. The doorbell physical address is used by the RDMA driver to map doorbell pages of the device to user-mode applications through RDMA verbs interface. In the past, they have been ma

[Patch net-next v3] net: mana: Record doorbell physical address in PF mode

2025-06-17 Thread longli
From: Long Li MANA supports RDMA in PF mode. The driver should record the doorbell physical address when in PF mode. The doorbell physical address is used by the RDMA driver to map doorbell pages of the device to user-mode applications through RDMA verbs interface. In the past, they have been ma

[PATCH net-next] net: mana: Record doorbell physical address in PF mode

2025-06-09 Thread longli
From: Long Li MANA supports RDMA in PF mode. The driver should record the doorbell physical address when in PF mode. Signed-off-by: Long Li --- drivers/net/ethernet/microsoft/mana/gdma_main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/ethernet/microsoft/mana/gdma_main.c