[libcamera-devel] [RFC PATCH 00/10] Add IPA process isolation
Paul Elder
paul.elder at ideasonboard.com
Thu Jun 6 00:18:07 CEST 2019
We need to be able to isolate untrusted IPA implementations into a
separate process. To achieve this, we use an IPA shim, that acts like a
regular IPAInterface to the pipeline handler, but will initialize and
communicate with the real IPA module in a separate, isolated process.
Paul Elder (10):
libcamera: ipa_module_info: remove cplusplus guards
libcamera: ipa_module: add path getter
libcamera: ipa_module: add loading error messages
libcamera: ipa_interface: add init for shims
libcamera: ipa_module_info: add field for isolation
libcamera: ipa_manager: add shims
libcamera: ipa: shim: add dummy shim
libcamera: ipa: add dummy IPA that needs to be isolated
libcamera: ipa: meson: build dummy IPA and shim
libcamera: ipa: shim: load IPA module into an IPAInterface
include/libcamera/ipa/ipa_interface.h | 1 +
include/libcamera/ipa/ipa_module_info.h | 11 +-
src/ipa/ipa_dummy.cpp | 1 +
src/ipa/ipa_dummy_isolate.cpp | 46 +++++++++
src/ipa/meson.build | 22 ++--
src/ipa/shim_dummy.cpp | 128 ++++++++++++++++++++++++
src/libcamera/include/ipa_manager.h | 1 +
src/libcamera/include/ipa_module.h | 1 +
src/libcamera/ipa_manager.cpp | 34 ++++++-
src/libcamera/ipa_module.cpp | 25 +++++
test/ipa/ipa_test.cpp | 1 +
11 files changed, 251 insertions(+), 20 deletions(-)
create mode 100644 src/ipa/ipa_dummy_isolate.cpp
create mode 100644 src/ipa/shim_dummy.cpp
--
2.20.1
More information about the libcamera-devel
mailing list