US 12,292,845 B2
Methods and systems for establishing direct communications between a server computer and a smart network interface controller
Chengjian Wen, Beijing (CN); Qin Li, Beijing (CN); Hao Huang, Beijing (CN); and Shu Wu, Beijing (CN)
Assigned to VMWare LLC, Palo Alto, CA (US)
Filed by VMware LLC, Palo Alto, CA (US)
Filed on Feb. 10, 2022, as Appl. No. 17/669,272.
Claims priority of application No. PCT/CN2022/070472 (WO), filed on Jan. 6, 2022.
Prior Publication US 2023/0214337 A1, Jul. 6, 2023
Int. Cl. G06F 13/28 (2006.01)
CPC G06F 13/28 (2013.01) [G06F 2213/28 (2013.01)] 17 Claims
OG exemplary drawing
 
1. Apparatus for performing direct memory access (“DMA”) between memory of a host and memory of a smart network interface controller (“SNIC”) connected to a bus of the host, the apparatus comprising:
a host thread running in a processor of the host for fetching data directly from and writing data directly to the memory of the SNIC over the bus using a first memory address of the memory of the SNIC, the host thread being configured to send a DMA command to the SNIC, the DMA command including a command ID that requests resource allocation for a virtual device function stored in a memory of the SNIC; and
a SNIC thread running in a processor of the SNIC for fetching data directly from and writing data directly to the memory of the host over the bus using a second memory address of the memory of the host, the SNIC thread being configured to, upon completing a data transfer operation, write a completion flag to the memory location or status register with the virtual device function, and to interrupt the host processor to signal completion of the operation.