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 --- MAINTAINERS | 1 + src/vcl/FEATURE.yaml | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 src/vcl/FEATURE.yaml diff --git a/MAINTAINERS b/MAINTAINERS index 8ae5333d4e3..22c38b381f8 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -581,6 +581,7 @@ F: extras/libmemif VPP Comms Library I: vcl +Y: src/vnet/vcl/FEATURE.yaml M: Florin Coras F: src/vcl 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