[Devel] [PATCH VZ9 0/4] fs/fuse kio: introduce pcs_krpc for merging userspace RPC in vstorage-mount with kernel RPC.

2024-06-28 Thread Liu Kui
Implement pcs_krpc in kio module to support using kernel RPC directly from userspace. https://pmc.acronis.work/browse/VSTOR-82613 Resend in proper way. * Fix issues found from review * Fix bugs found in test due to improper connection state transition. Liu Kui (4): fs/fuse kio: implement mem

[Devel] [PATCH VZ9 3/4] fs/fuse kio: adapt pcs_rpc to support pcs_krpc.

2024-06-28 Thread Liu Kui
Previously pcs_cs is the only client of pcs_rpc, so they are tightly bound together. However this needs to be changed with addition of pcs_krpc. So now: - pcs_rpc will be created on first creation of either pcs_krpc or pcs_cs. and destroyed on last destruction of both pcs_krpc and pcs_cs. - pcs_r

[Devel] [PATCH VZ9 1/4] fs/fuse kio: implement memory region to support zero-copy between userspace and kernel.

2024-06-28 Thread Liu Kui
The memory region(MR) is very similar to RDMA memory region, however much simpler. It allows userspace to register a bulky memory to kernel, which would pin all pages from that memory and returns a reference back to userspace. Userspace can then just pass the descriptor(start address, length) of a

[Devel] [PATCH VZ9 2/4] fs/fuse kio: implement pcs_krpc - export kernel RPC to userspace

2024-06-28 Thread Liu Kui
Currently there are 2 connections for every RPC, one in userspace, one in kernel. This wastes a lot of resources on client hosts from a huge cluster. It's therefore desirable to eliminate the connection in userspace by using kernel RPC directly from userspace. The newly implemented pcs_krpc serves

[Devel] [PATCH VZ9 4/4] fs/fuse kio: integrate pcs_krpc to kio module

2024-06-28 Thread Liu Kui
Enable pcs_krpc in kio module: - add module parameter 'pcs_krpc_support' to indicate whether pcs_krpc is supported. - export APIs to userspace as sub-commands of the FUSE_IOC_KIO_CALL ioctl command on the /dev/fuse device. https://pmc.acronis.work/browse/VSTOR-82613 Signed-off-by: Liu Kui --