[libcamera-devel] Failed to commit atomic request: Invalid argument

Eric Curtin ecurtin at redhat.com
Fri Oct 29 15:36:08 CEST 2021


On Fri, 29 Oct 2021 at 13:21, Kieran Bingham
<kieran.bingham at ideasonboard.com> wrote:
>
> Quoting Eric Curtin (2021-10-29 12:38:46)
> > Hi Guys,
> >
> > Still struggling to get the display working on 2 different fedora 34 laptops.
> > The first problem I run into is:
>
> Just ... checking... By on 'laptops' you mean - without running a
> GUI/Wayland/X ?

I have GUI/Wayland/X installed but not started. One machine started in
multi-user.target node with text-console:

sudo systemctl set-default multi-user.target

And the other machine I just switch out of X server via Ctrl-Alt-F4.

>
> This cam drm support is for direct render when a GUI isn't available.
> If a graphical environment is running, it will have ownership of the
> screen.

The screen does go blank, the console disappears but it's completely black, no
camera output.

>
> > "Failed to commit atomic request: Invalid argument"
> >
> > This occurs when drmModeAtomicCommit is called with  these flags set:
> >
> > DRM_MODE_ATOMIC_ALLOW_MODESET | DRM_MODE_PAGE_FLIP_EVENT |
> > DRM_MODE_ATOMIC_NONBLOCK
> >
> > in the drmFlags.
> >
> > Then we go from:
> >
> > drmModeAtomicCommit -> DRM_IOCTL -> drmIoctl -> ioctl
> >
> > and return EINVAL. Anybody have an idea what could be going wrong here?
> > Are the flags ok in this case etc.?
> >
> > Some version info and other info on how I am running this:
> >
> > $ rpm -qa | grep libdrm
> > libdrm-2.4.107-1.fc34.x86_64
> > libdrm-devel-2.4.107-1.fc34.x86_64
> > libdrm-debugsource-2.4.107-1.fc34.x86_64
> > libdrm-debuginfo-2.4.107-1.fc34.x86_64
> >
> > $ uname -a
> > Linux fedora 5.14.13-200.fc34.x86_64 #1 SMP Mon Oct 18 12:39:31 UTC
> > 2021 x86_64 x86_64 x86_64 GNU/Linux
> >
> > sudo LD_LIBRARY_PATH=./build/src/ipa/ipu3:./build/src/ipa/raspberrypi:./build/src/ipa/rkisp1:./build/src/ipa/vimc:./build/src/libcamera:./build/src/libcamera/base:./build/src/libcamera/base/libcamera-base.so.0.0.0.p:./build/src/libcamera/libcamera.so.0.0.0.p
> > ./build/src/cam/cam -c 1 -C16 -DeDP-1 -s
>
> You shouldn't need to set LD_LIBRARY_PATH for this. Meson links the
> binaries to the built location, and updates them when installing.
>
> Have you set LD_LIBRARY_PATH due to an issue you faced?

I tend to do this to make builds quicker, skip the install step and
just run. And to avoid
potentially overwriting stuff in /usr (and to not cause any issues
with the wrong library being
loaded system vs built one) the case where I want. I can just install
and see what happens.

>
>
> > pixelformat=YUYV,height=1080,width=1920
> > [24:13:06.877580453] [12783]  INFO IPAManager ipa_manager.cpp:138
> > libcamera is not installed. Adding
> > '/home/ecurtin/git/libcamera/build/src/ipa' to the IPA search path
> > [24:13:06.878456861] [12783]  INFO Camera camera_manager.cpp:293
> > libcamera v0.0.0+3205-8bba804b
> > Using camera \_SB_.PCI0.XHC_.RHUB.HS01-1:1.0-046d:0843 as cam0
> > [24:13:07.080928044] [12783]  INFO Camera camera.cpp:945 configuring
> > streams: (0) 1920x1080-YUYV
> > Using KMS plane 169, CRTC 236, connector eDP-1 (239)
>
> Seeing this though makes me think it probably got far enough so it must
> be expected to work.

The screen does go black on both laptops but that's it, I can only see
this output if
I'm connected via ssh or redirect the output to file, but the tty does
get replaced if that
makes sense.

>
> > cam0: Capture 16 frames
> > Failed to commit atomic request: Invalid argument
>
> But without further debug, I'm not sure I can help on this one yet I'm
> afraid.
>
> > 87188.356981 (0.00 fps) cam0-stream0 seq: 000000 bytesused: 4147200
> > 87188.581003 (4.46 fps) cam0-stream0 seq: 000001 bytesused: 4147200
> > 87188.781009 (5.00 fps) cam0-stream0 seq: 000002 bytesused: 4147200
> > 87188.981007 (5.00 fps) cam0-stream0 seq: 000003 bytesused: 4147200
> > 87189.181009 (5.00 fps) cam0-stream0 seq: 000004 bytesused: 4147200
> > 87189.381002 (5.00 fps) cam0-stream0 seq: 000005 bytesused: 4147200
> > 87189.577004 (5.10 fps) cam0-stream0 seq: 000006 bytesused: 4147200
> > 87189.776999 (5.00 fps) cam0-stream0 seq: 000007 bytesused: 4147200
> > 87189.977034 (5.00 fps) cam0-stream0 seq: 000008 bytesused: 4147200
> > 87190.177013 (5.00 fps) cam0-stream0 seq: 000009 bytesused: 4147200
> > 87190.377072 (5.00 fps) cam0-stream0 seq: 000010 bytesused: 4147200
> > 87190.577016 (5.00 fps) cam0-stream0 seq: 000011 bytesused: 4147200
> > 87190.777031 (5.00 fps) cam0-stream0 seq: 000012 bytesused: 4147200
> > 87190.973012 (5.10 fps) cam0-stream0 seq: 000013 bytesused: 4147200
> > 87191.173030 (5.00 fps) cam0-stream0 seq: 000014 bytesused: 4147200
> > 87191.373034 (5.00 fps) cam0-stream0 seq: 000015 bytesused: 4147200
> > Failed to stop display pipeline: Invalid argument
> > Failed to stop frame sink
> >
> > Is mise le meas/Regards,
> >
> > Eric Curtin
> >
>



More information about the libcamera-devel mailing list