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