[libcamera-devel] [PATCH 7/7] ipa: raspberrypi: Remove atomic variable from Algorithm class
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Sun Feb 7 15:21:57 CET 2021
Hi David,
Thank you for the patch.
On Thu, Feb 04, 2021 at 09:34:57AM +0000, David Plowman wrote:
> Pause() and Resume() are only called synchronously so paused_ does not
> need to be atomic.
>
> With this commit, libatomic can finally be removed as a build
> dependency.
>
> Signed-off-by: David Plowman <david.plowman at raspberrypi.com>
> ---
> src/ipa/raspberrypi/controller/algorithm.hpp | 3 +--
> src/ipa/raspberrypi/meson.build | 1 -
> 2 files changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/src/ipa/raspberrypi/controller/algorithm.hpp b/src/ipa/raspberrypi/controller/algorithm.hpp
> index e9b040c7..5123c87b 100644
> --- a/src/ipa/raspberrypi/controller/algorithm.hpp
> +++ b/src/ipa/raspberrypi/controller/algorithm.hpp
> @@ -12,7 +12,6 @@
> #include <string>
> #include <memory>
> #include <map>
> -#include <atomic>
>
> #include "controller.hpp"
>
> @@ -46,7 +45,7 @@ public:
>
> private:
> Controller *controller_;
> - std::atomic<bool> paused_;
> + bool paused_;
> };
>
> // This code is for automatic registration of Front End algorithms with the
This part is fine.
> diff --git a/src/ipa/raspberrypi/meson.build b/src/ipa/raspberrypi/meson.build
> index 9445cd09..4cdd0434 100644
> --- a/src/ipa/raspberrypi/meson.build
> +++ b/src/ipa/raspberrypi/meson.build
> @@ -5,7 +5,6 @@ ipa_name = 'ipa_rpi'
> rpi_ipa_deps = [
> libcamera_dep,
> dependency('boost'),
> - libatomic,
> ]
>
> rpi_ipa_includes = [
But here, I wonder if we may need to keep libatomic. It provides C
functions that are used under the hood by the compiler to implement
atomic operations. Those are used by the C++ std::atomic implementation,
but they could also be used internally by std::thread or related locking
classes.
I'm not an expert on this topic, so I don't know what the right solution
is. Should we split this patch in two to merge the removal of
std::atomic from algorithm.hpp while we try to figure out whether we
should still keep linking with libatomic ?
--
Regards,
Laurent Pinchart
More information about the libcamera-devel
mailing list