From b3f7d9ba6cd3f5ae650986239d875aff9fb61bda Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Fri, 3 Jan 2020 00:57:33 +0000 Subject: vcl: add feature.yaml Type: docs Signed-off-by: Florin Coras Change-Id: Ifda0404cfc6710d7ecf21da96eb1cb92750b495f --- src/vcl/FEATURE.yaml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/vcl/FEATURE.yaml (limited to 'src/vcl/FEATURE.yaml') diff --git a/src/vcl/FEATURE.yaml b/src/vcl/FEATURE.yaml new file mode 100644 index 00000000000..b2ab7ccfd99 --- /dev/null +++ b/src/vcl/FEATURE.yaml @@ -0,0 +1,22 @@ +--- +name: VPP Comms Library (VCL) +maintainer: Florin Coras +features: + - Abstracts vpp host stack sessions to integer session handles + - Exposes its own async communication functions, i.e., epoll, select, poll + - Supports multi-worker applications + - Sessions cannot be shared between multiple threads/processes + - VCL Locked Sessions (VLS): + - Ensure through locking that only one thread accesses a session at a + time + - Detects and registers forked processes as new VCL workers. It does not + register threads as new workers. + - LD_PRELOAD shim (LDP): + - Intercepts syscalls and injects them into VLS. + - Applications that are supported work with VCL and implicitly with VPP's + host stack without any code change + - It does not support all syscalls and syscall options +description: "VCL simplifies app interaction with session layer by exposing + APIs that are similar to but not POSIX-compliant." +state: production +properties: [API, CLI, MULTITHREAD] -- cgit 1.2.3-korg