On 12/7/2022 5:48 PM, Junxiao Shi wrote:
> Hi Ferruh
> 
>> On 12/7/2022 2:41 PM, Junxiao Shi wrote:
>> > This allows a DPDK application running with root privilege to create a
>> > memif socket listener with non-root owner uid and gid, which can be
>> > connected from client applications running without root privilege.
>> >
>>
>> Do you have an easy way to test unprivileged memif client?
> 
> This has been tested with NDN-DPDK software.
> https://github.com/usnistgov/ndn-dpdk
> <https://github.com/usnistgov/ndn-dpdk> revision
> 311de078aa4dc3ea28db5f8858e70a1bef7b9ccd
> 

Thanks for the info.

Do you want this project to be included in DPDK web page [1], if so you
can request this in web mail list (w...@dpdk.org).

[1]
https://www.dpdk.org/ecosystem/#projects


> The systemd service is running as root and it uses DPDK with the
> owner-uid and owner-gid args.
> The ndndpdk-godemo command is running as unprivileged process.
> Directory /run/ndn still needs to be created by root.
> 
> These commands can perform a full test:
> 
> git clone https://github.com/usnistgov/ndn-dpdk.git
> <https://github.com/usnistgov/ndn-dpdk.git>
> cd ndn-dpdk
> ./docs/ndndpdk-depends.sh --dpdk-patch=26031
> corepack pnpm install
> make
> sudo make install
> sudo dpdk-hugepages.py --setup 8G
> sudo ndndpdk-ctrl systemd start
> jq -n {} | ndndpdk-ctrl activate-forwarder
> sudo mkdir -p /run/ndn
> ndndpdk-godemo pingserver --name /A
> ndndpdk-godemo pingclient --name /A
> 
> You can see packets flowing through.
> Run `ls -l /run/ndn` and check the uid:gid of socket files too.
> 

It is good to record these steps, but for now I will rely on your
testing :), thanks.

> 
>>
>> > Signed-off-by: Junxiao Shi <g...@mail1.yoursunny.com
> <mailto:g...@mail1.yoursunny.com>>
>>
>> <...>
>>
>> > @@ -1827,47 +1859,58 @@ rte_pmd_memif_probe(struct rte_vdev_device
> *vdev)
>> >       flags |= ETH_MEMIF_FLAG_SOCKET_ABSTRACT;
>> >
>> >       kvlist = rte_kvargs_parse(rte_vdev_device_args(vdev),
> valid_arguments);
>> > +     if (kvlist == NULL) {
>> > +             MIF_LOG(ERR, "Invalid kvargs key");
>> > +             ret = -EINVAL;
>> > +             goto exit;
>> > +     }
>>
>> Thanks Junxiao for updating this, but since it is not really related to
>> this patch, can you please separate it to another patch?
> 
> These are reverted and will be submitted separately in the future.

ack

Reply via email to