[SPDK] Re: Shared memory allocated spdk_dma_malloc from among process

Cao, Gang <gang.cao at intel.com> Fri, 21 Oct 2022 00:26:52 +0000
Newsgroups dev.linux.lists.spdk
Message-ID <PH0PR11MB5014A7E810168C5EC4E488BD832D9@PH0PR11MB5014.namprd11.prod.outlook.com>
--===============7516141197328459345==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

SPDK underlying layer also supports the multi process mode based on DPDK's =
capability.

You may take a look at https://spdk.io/doc/nvme.html#nvme_multi_process

Also for the usage of spdk_dma_malloc, you may take a look at the multi pro=
cess related APIs like spdk_memzone... and spdk_mempool... which will also =
call the rte_memzone... and rte_mempool... APIs.

Thanks.

-----Original Message-----
From: Lego Lin <lego.lin(a)gmail.com> =

Sent: Thursday, October 20, 2022 23:32
To: Storage Performance Development Kit <spdk(a)lists.01.org>
Subject: [SPDK] Shared memory allocated spdk_dma_malloc from among process

Hi, all:

Can anyone give me some guidelines that how to share memory from spdk_dma_m=
alloc among 2 processes?

I know how to use shm_open / mmap to create and share memory among processe=
s.
It looks like DPDK memzone can be shared among processes through it's inter=
nal API (rte_memzone_lookup / dump_memzone) But I didn't find obvious clues=
 about sharing memory from spdk_dma_malloc to another process.
My idea is Process A get the physical address of memory from spdk_dma_mallo=
c.
Process A put these physical address to a shared memory.
Process B get physical address from shared memory and map them to virtual s=
pace of process B.

Is there other ways to do this?

Thanks
_______________________________________________
SPDK mailing list -- spdk(a)lists.01.org
To unsubscribe send an email to spdk-leave(a)lists.01.org
--===============7516141197328459345==--