libcamerify causes motion daemon to create zombie processes

Dale Magee antisol at antisol.org
Tue Apr 16 10:49:13 CEST 2024


Aah, thanks for clarifying Dave

On 16/4/24 02:16, Dave Stevenson wrote:
> Hi Dale
> 
> On Mon, 15 Apr 2024 at 11:51, Dale Magee <antisol at antisol.org> wrote:
>>
>> Maybe I'm missing something, but I also happen to have a v1 camera
>> running on an older pi. I bought these v3 cameras that I'm having
>> trouble with because my v1 camera is so stable and reliable. It's got
>> motion running it, it records video all the time, and it's definitely
>> not got libcamera installed.
> 
> The old (legacy) Pi camera stack built into the firmware supported v1
> (ov5647), v2 (imx219), and HQ (imx477) camera modules only. It is
> deprecated.
> Motion has code that can get images via MMAL (the old proprietary API
> for multimedia on the Pi) or via bcm2835-camera as a V4L2 driver.
> 
> The v3 camera module is not supported by the old stack, with libcamera
> being the only option.
> libcamera also supports the v1 camera, and it sounds like Andrei is
> using that support via libcamerify.
> 
>   Dave
> 
>> Perhaps that's a different model or something? IIRC it's a 5MP, v1 pi
>> camera. The image quality isn't great compared to the v3 cameras I'm
>> trying to use, but the stability is top-notch, has been running for years.
>>
>> Cheers,
>> Dale
>>
>> On 14/4/24 19:49, Andrei Konovalov wrote:
>>> Hi Dale,
>>>
>>> No, the ov5647 camera modules is also accessed through libcamera. And
>>> without libcamerify
>>> motion isn't able to capture the video.
>>>
>>> I doubt this is specific to the pi4 or the camera3 board.
>>> IIRC, there are other differences between my setup and yours:
>>> - I capture videos, not still frames
>>> - 32-bit vs 64-bit OS
>>> - do you use motion (like me) or motioneye?
>>>
>>> Thanks,
>>> Andrei
>>>
>>> On 14.04.2024 06:54, Dale Magee wrote:
>>>> Hi Andrei,
>>>>
>>>> That is indeed interesting, but I'm using a pi4 and a camera v3
>>>> module. IIUC the older camera modules don't need to use libcamerify at
>>>> all - are you accessing the camera as a v4l device, or perhaps using
>>>> the older MMAL interface? i.e maybe you're loading libcamerify but not
>>>> actually using it?
>>>>
>>>> I'd be interested to know, maybe it's something specific to the pi4 or
>>>> the camera3 board.
>>>>
>>>> Thanks,
>>>> Dale
>>>>
>>>> On 13/4/24 23:39, Andrei Konovalov wrote:
>>>>> Hi Dale,
>>>>>
>>>>> I don't have the answers to your questions. Just some information
>>>>> which might help you (or not).
>>>>>
>>>>> I have motion running for almost 4 weeks now, 711 videos have been
>>>>> captured (motion detection is configured to
>>>>> record short videos, not to capture still images). And there are no
>>>>> zombie processes so far.
>>>>>
>>>>> Hardware:
>>>>>     RaspberryPi 3B board + RPi camera v1 (ov5647)
>>>>> OS:
>>>>>     Raspberry Pi OS Lite (32 bit, bookworm)
>>>>> kernel:
>>>>>     Linux version 6.6.20+rpt-rpi-v7 (debian-kernel at lists.debian.org)
>>>>> (gcc-12 (Raspbian 12.2.0-14+rpi1) 12.2.0, GNU ld (GNU Binutils for
>>>>> Raspbian) 2.40) #1 SMP Raspbian 1:6.6.20-1+rpt1 (2024-03-07)
>>>>> motion:
>>>>>     Version 4.5.1
>>>>> the ExecStart line from the motion.service:
>>>>>     ExecStart=/usr/bin/libcamerify /usr/bin/motion
>>>>> the version of the installed libcamera0.2 and libcamera-tools packages:
>>>>>     0.2.0+rpt20240215-1
>>>>>
>>>>>
>>>>> Thanks,
>>>>> Andrei
>>>>>
>>>>> On 13.04.2024 12:27, Dale Magee wrote:
>>>>>> Hello,
>>>>>>
>>>>>> I was advised to take this issue to the mailing list.
>>>>>>
>>>>>> Please see the issue I raised at
>>>>>> https://github.com/raspberrypi/libcamera/issues/129 and the other
>>>>>> issues I linked to from there, which descrive the issue I'm having
>>>>>> with a bunch of detail.
>>>>>>
>>>>>> I'm keen to get this resolved as it's causing major system
>>>>>> instability for me, the entire system becomes unusable when it runs
>>>>>> out of memory due to this issue.
>>>>>>
>>>>>> kbingham commented on the ticket that "Not many people use
>>>>>> libcamerify - and the more correct route is to use libcamera API's
>>>>>> directly, not go through libcamerify".
>>>>>>
>>>>>> The software I'm trying to use does not support libcamera, so that's
>>>>>> not an option for me, unfortunately.
>>>>>>
>>>>>> Is there some other preferred method to make a raspberry pi camera 3
>>>>>> show up as a v4l device, and thus able to be used with all the v4l
>>>>>> software released over the last couple of decades? I've tried
>>>>>> searching for something like that and all I've come up with is
>>>>>> libcamerify, but maybe I've missed something?
>>>>>>
>>>>>> I see the patch kbingham points me to, but I'm not sure how I'd
>>>>>> compile and install that on raspbian without causing
>>>>>> issues/conflicts with the packaged version (e.g if I uninstall
>>>>>> libcamera0 with apt, it's going to uninstall everything that depends
>>>>>> on it, too, right?). Some guidance/resources on how to achieve that
>>>>>> would be super helpful.
>>>>>>
>>>>>> Thanks!


More information about the libcamera-devel mailing list