[PATCH v2 0/3] gstreamer: Fix a crash when memory outlives the pipeline

Laurent Pinchart laurent.pinchart at ideasonboard.com
Thu May 9 17:37:33 CEST 2024


On Thu, May 09, 2024 at 11:31:01AM -0400, Nicolas Dufresne wrote:
> Le jeudi 09 mai 2024 à 15:25 +0100, Kieran Bingham a écrit :
> > Quoting Nicolas Dufresne (2024-03-05 15:30:55)
> > > From: Nicolas Dufresne <nicolas.dufresne at collabora.com>
> > > 
> > > This set fixes a memory lifetime issue which in the end happens because the
> > > camera manager needs to outlive all of its object, including the
> > > FrameBufferAllocator. This is fixing a crash reported at:
> > > 
> > > https://bugs.libcamera.org/show_bug.cgi?id=211
> > > 
> > > Changes in v2:
> > >   - Fixed copyright and header comment
> > 
> > This series fully passes the CI:
> > 
> >  - https://gitlab.freedesktop.org/camera/libcamera/-/pipelines/1173595
> 
> Shall we have a process so this extra effort (even though nice) is not necessary
> ? The reason I'm saying that is that I already CI tested my changes before
> sending it, it was preceded by my serie fixing the CI for forks.

I think we should have such a process, yes. We focussed on implementing
the test infrastructure first. We'll get to the next step of improving
the process at some point.

> https://gitlab.freedesktop.org/ndufresne/libcamera/-/tree/gstreamer-lifetime
> 
> Nicolas
> 
> p.s. obvious this is a workaround to not using merge request ;-P
> 
> > > Nicolas Dufresne (3):
> > >   gstreamer: allocator: Ensure camera manager stay alive
> > >   test: gstreamer: Simplify single stream test
> > >   test: gstreamer: Test memory lifetime
> > > 
> > >  src/gstreamer/gstlibcameraallocator.cpp       | 16 +++-
> > >  .../gstreamer_memory_lifetime_test.cpp        | 75 +++++++++++++++++++
> > >  .../gstreamer_single_stream_test.cpp          | 27 +++----
> > >  test/gstreamer/meson.build                    |  4 +-
> > >  4 files changed, 102 insertions(+), 20 deletions(-)
> > >  create mode 100644 test/gstreamer/gstreamer_memory_lifetime_test.cpp

-- 
Regards,

Laurent Pinchart


More information about the libcamera-devel mailing list