Bug 2333387 - IPU6 camera on Lenovo ThinkPad X1 Carbon Gen 12 not working - requires Lattice MIPI aggregator support
Summary: IPU6 camera on Lenovo ThinkPad X1 Carbon Gen 12 not working - requires Lattic...
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: rawhide
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Hans de Goede
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 2333299
Blocks:
TreeView+ depends on / blocked
 
Reported: 2024-12-19 18:34 UTC by Hans de Goede
Modified: 2025-06-11 09:57 UTC (History)
25 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Hans de Goede 2024-12-19 18:34:37 UTC
This bug is for tracking the enablement of the MIPI user facing camera on Lenovo ThinkPad X1 Carbon Gen 12 laptops.

The first issue to fix is to get support for the Lattice MIPI aggregator "glue" chip added to the kernel, see bug 2333299 .

Note fixing bug 2333299 is required, but may well not be sufficient to get the cameras to work.

Reproducible: Always

Comment 1 Mark Harfouche 2025-01-19 17:21:21 UTC
I have an x1 carbon gen 12 with their 2160p camera with “AI” that I believe that this would target. 

Let me know how I can help. I’m no kernel expert but I could get fedora on my system again and get you information about the hardware.

Comment 2 Hans de Goede 2025-01-19 19:00:55 UTC
(In reply to Mark Harfouche from comment #1)
> I have an x1 carbon gen 12 with their 2160p camera with “AI” that I believe
> that this would target. 
> 
> Let me know how I can help. I’m no kernel expert but I could get fedora on
> my system again and get you information about the hardware.

Thank you for offering to help. Lenovo has given me access to a X1 carbon gen 12 at the beginning of this year and last week I have gotten the camera to work.

So I know what needs to happen now. Specifically these out of tree drivers need to be mainlined:
https://github.com/intel/usbio-drivers.git

Once those are upstream the FOSS IPU6-CSI2-receiver + software-ISP camera stack in Fedora should work.

Comment 3 bill rushforth 2025-01-25 19:42:44 UTC
Hello, 

May I ask roughly what steps you took to get the camera to work?  I compiled your branch of the usbio drivers from here ( https://github.com/intel/usbio-drivers/pull/33 ).  My x1c12 has the sensor ov08x40

but still get:
[   21.054250] ov08x40 i2c-OVTI08F4:00: chip id mismatch: 560858!=0
[   21.054254] ov08x40 i2c-OVTI08F4:00: failed to find sensor: -6

But the usbio drivers load now, and in dmesg seem to find and detect more things than they were.  

[   20.299163] usbio-bridge 3-9:1.0: USB Bridge device init success
[   20.302145] usbcore: registered new interface driver usbio-bridge
[   20.538997] usbio-i2c usbio-i2c.29.auto: hid INTC1008 uid 0 new uid1

[   20.284679] intel-ipu6 0000:00:05.0: enabling device (0000 -> 0002)
[   20.284855] intel-ipu6 0000:00:05.0: IPU6 in secure mode touch 0x80000000 mask 0x0
[   20.312165] intel-ipu6 0000:00:05.0: FW version: 20230925
[   20.314922] intel-ipu6 0000:00:05.0: Found supported sensor OVTI08F4:00
[   20.314986] intel-ipu6 0000:00:05.0: Connected 1 cameras
[   20.319427] intel-ipu6 0000:00:05.0: Sending BOOT_LOAD to CSE
[   20.364953] intel-ipu6 0000:00:05.0: Sending AUTHENTICATE_RUN to CSE
[   20.417673] intel-ipu6 0000:00:05.0: CSE authenticate_run done
[   20.417680] intel-ipu6 0000:00:05.0: IPU6-v4[7d19] hardware version 6


Thanks for all your work on this subsystem!
- bill

Comment 4 Matthias Nagel 2025-01-27 18:10:46 UTC
> May I ask roughly what steps you took to get the camera to work? I compiled your branch of the usbio drivers [...]. My x1c12 has the sensor ov08x40

I have the same question and eager to learn the answer. I don't mind to compile an out-of-tree driver using DKMS. I am using a self-compiled kernel anyway. I would appreciate a short write-up what branch of usbio-drivers needs to be compiled and what mainline kernel options must be enabled or must not be enabled (in case there are some conflicts). That way we could already start using that camera without waiting for the drivers to be included into the mainline kernel.

For example, I had to disable the kernel option `CONFIG_WERROR` to be able to compile usbio at all due to https://github.com/intel/usbio-drivers/issues/32. However, I still got the same error as Bill "failed to find sensor: -6".

Comment 5 Hans de Goede 2025-02-06 13:52:53 UTC
> May I ask roughly what steps you took to get the camera to work? I compiled your branch of the usbio drivers [...]. My x1c12 has the sensor ov08x40

Besides the usbio drivers, the ov08x40 driver also need(ed) some patches, specifically the following patch-set is necessary:

https://lore.kernel.org/linux-media/20241220144130.66765-1-hdegoede@redhat.com/

I've submitted pull-requests to get these included as downstream patches into the Fedora kernels for now:

https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3671
https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3672
https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3673

These changes have landed in the Fedora 6.13.x builds now, specifically if you grab kernel-6.13.1-200.fc41 from:
https://koji.fedoraproject.org/koji/buildinfo?buildID=2650186

then you will have the necessary changes. See here for how to install a kernel from koji:

https://docs.fedoraproject.org/en-US/quick-docs/kernel-installing-from-koji/#_download_using_the_browser_and_install

note since you will also need to build the usbio drivers you need to also download 'kernel-devel-<version>.<release>.<arch>.rpm' on top of the other 4 rpms.

I also needed to do some bugfixes to the usbio drivers, you already found:

https://github.com/intel/usbio-drivers/pull/33

but in the mean time I found and fixed another issue:

https://github.com/intel/usbio-drivers/pull/34

Note I've also integrated the usbio drivers into the rpmfusion akmod-intel-ipu6 package now, so it is probably easiest to just download and install that from:

https://koji.rpmfusion.org/koji/taskinfo?taskID=668267

Note this depends on the proprietary stack since it also includes the out of tree IPU6 ISP driver. Currently the proprietary stack is not working. I've updated the entire proprietary stack and the updated version is working nicely on the X1 carbon gen 12 now too. ATM I've only build it for rawhide/f42, I will build it for F41 also as soon as I've completed running some more tests on some other laptop models.

Comment 6 bill rushforth 2025-02-06 16:47:53 UTC
Thanks for the detailed reply!  Happy to help in any way I can, I applied all your changes, including the kernel from koji, but get:

uname -a
Linux ret 6.13.1-200.fc41.x86_64 #1 SMP PREEMPT_DYNAMIC Sat Feb  1 17:36:21 UTC 2025 x86_64 GNU/Linux

dmesg | grep -i -E "ov08|ipu6|usbio"
[   13.261315] intel-ipu6 0000:00:05.0: enabling device (0000 -> 0002)
[   13.261557] intel-ipu6 0000:00:05.0: IPU6 in secure mode touch 0x80000000 mask 0x0
[   13.292737] intel-ipu6 0000:00:05.0: FW version: 20230925
[   13.296385] intel-ipu6 0000:00:05.0: Found supported sensor OVTI08F4:00
[   13.296482] intel-ipu6 0000:00:05.0: Connected 1 cameras
[   13.298883] intel-ipu6 0000:00:05.0: Sending BOOT_LOAD to CSE
[   13.335759] intel-ipu6 0000:00:05.0: Sending AUTHENTICATE_RUN to CSE
[   13.385806] intel-ipu6 0000:00:05.0: CSE authenticate_run done
[   13.385815] intel-ipu6 0000:00:05.0: IPU6-v4[7d19] hardware version 6
[   13.578220] intel_ipu6_psys.psys intel_ipu6.psys.40: pkg_dir entry count:8
[   13.578790] intel_ipu6_psys.psys intel_ipu6.psys.40: psys probe minor: 0
[   14.491536] usbio-bridge 3-9:1.0: bank:0 map:0x0000001f
[   14.491541] usbio-bridge 3-9:1.0: bank:1 map:0x0000001f
[   14.491543] usbio-bridge 3-9:1.0: bank:2 map:0x0000001f
[   14.491544] usbio-bridge 3-9:1.0: bank:3 map:0x00000001
[   14.492631] usbio-bridge 3-9:1.0: USB Bridge device init success
[   14.492674] usbcore: registered new interface driver usbio-bridge
[   14.507443] usbio-i2c usbio-i2c.29.auto: hid INTC1008 uid 0 new uid1
[   14.511698] ov08x40 i2c-OVTI08F4:00: supply dovdd not found, using dummy regulator
[   14.511747] ov08x40 i2c-OVTI08F4:00: supply avdd not found, using dummy regulator
[   14.511762] ov08x40 i2c-OVTI08F4:00: supply dvdd not found, using dummy regulator
[   14.518731] ov08x40 i2c-OVTI08F4:00: chip id mismatch: 560858!=0

lsmod | grep -i -E "usbio|ipu6"
gpio_usbio             12288  2
i2c_usbio              16384  0
usbio                  40960  2 gpio_usbio,i2c_usbio
intel_ipu6_psys       126976  0
intel_ipu6_isys       151552  0
videobuf2_dma_sg       24576  1 intel_ipu6_isys
videobuf2_v4l2         40960  1 intel_ipu6_isys
videobuf2_common      102400  4 videobuf2_v4l2,intel_ipu6_isys,videobuf2_dma_sg,videobuf2_memops
intel_ipu6             90112  2 intel_ipu6_isys,intel_ipu6_psys
ipu_bridge             24576  2 intel_ipu6,intel_ipu6_isys
v4l2_fwnode            36864  2 intel_ipu6_isys,ov08x40
v4l2_async             32768  3 v4l2_fwnode,intel_ipu6_isys,ov08x40
videodev              417792  7 v4l2_async,v4l2_fwnode,videobuf2_v4l2,v4l2loopback,intel_ipu6_isys,ov08x40
mc                     90112  6 v4l2_async,videodev,videobuf2_v4l2,intel_ipu6_isys,videobuf2_common,ov08x40

seems like its just not getting the chip id from the sensor, and not initializing.  the "failed to find sensor" line is gone in the log - and i noticed one of your diffs removed that, which leads me to believe I am running at least that.  On the last one, it says "merge blocked" ( https://gitlab.com/cki-project/kernel-ark/-/merge_requests/3673 ) perhaps that is why, not super familiar with the fedora kernel process.

appreciate the reply and all the looking at this, would love to help in any way I can, happy to build another kernel tree and test.

Comment 7 Hans de Goede 2025-02-24 15:59:00 UTC
A quick status update on X1 Carbon Gen 12 support, Fedora users can now get this to work using the rpmfusion out of tree drivers for the USBIO bits. Intel made some  changes to the out of tree IPU6 psys/ISP driver so that can now co-exist with the mainline CSI driver. As a result of this after installing the rpmfusion bits both stacks now work and users can switch stack by selecting a different camera in Firefox. See the blog post which I just wrote about this:

https://hansdegoede.dreamwidth.org/29477.html

@bill-rushforth I'm not sure what is going on in your case, can you retry using the rpmfusion pkgs please?

Comment 8 bill rushforth 2025-02-24 20:44:27 UTC
Hi there,

Yup, reinstalled everything, same result for me:
root@ret:/lib/modules/6.12.15-200.fc41.x86_64# uname -a
Linux ret 6.12.15-200.fc41.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Feb 18 15:24:05 UTC 2025 x86_64 GNU/Linux

root@ret:/home/rushforth# sudo akmods --force
Checking kmods exist for 6.12.15-200.fc41.x86_64           [  OK  ]
Building and installing intel-ipu6-kmod                    [  OK  ]
Building and installing v4l2loopback-kmod                  [  OK  ]

root@ret:/lib/modules/6.12.15-200.fc41.x86_64# sudo lsmod | grep -i -E "usbio|ipu6|ov"
i2c_usbio              16384  0
gpio_usbio             12288  2
usbio                  40960  2 gpio_usbio,i2c_usbio
intel_ipu6_isys       151552  0
videobuf2_dma_sg       24576  1 intel_ipu6_isys
videobuf2_v4l2         40960  1 intel_ipu6_isys
videobuf2_common      102400  4 videobuf2_v4l2,intel_ipu6_isys,videobuf2_dma_sg,videobuf2_memops
intel_ipu6             94208  1 intel_ipu6_isys
ipu_bridge             24576  2 intel_ipu6,intel_ipu6_isys
ov08x40                28672  0
v4l2_fwnode            36864  2 intel_ipu6_isys,ov08x40
v4l2_async             32768  3 v4l2_fwnode,intel_ipu6_isys,ov08x40
videodev              417792  6 v4l2_async,v4l2_fwnode,videobuf2_v4l2,v4l2loopback,intel_ipu6_isys,ov08x40
mc                     90112  6 v4l2_async,videodev,videobuf2_v4l2,intel_ipu6_isys,videobuf2_common,ov08x40


[  151.111585] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[  151.111639] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[  151.113157] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[  151.248897] usb 3-7: reset full-speed USB device number 2 using xhci_hcd
[  151.375651] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[  151.375723] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[  151.377198] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[  532.674561] usbio: loading out-of-tree module taints kernel.
[  532.674571] usbio: module verification failed: signature and/or required key missing - tainting kernel
[  532.784276] usbio-bridge 3-9:1.0: bank:0 map:0x0000001f
[  532.784289] usbio-bridge 3-9:1.0: bank:1 map:0x0000001f
[  532.784291] usbio-bridge 3-9:1.0: bank:2 map:0x0000001f
[  532.784293] usbio-bridge 3-9:1.0: bank:3 map:0x00000001
[  532.785987] usbio-bridge 3-9:1.0: USB Bridge device init success
[  532.786095] usbcore: registered new interface driver usbio-bridge
[  532.787619] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[  532.787687] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[  532.789065] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[  532.793013] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[  532.810658] usbio-i2c usbio-i2c.29.auto: hid INTC1008 uid 0 new uid1
[  532.816538] ov08x40 i2c-OVTI08F4:00: supply dovdd not found, using dummy regulator
[  532.816603] ov08x40 i2c-OVTI08F4:00: supply avdd not found, using dummy regulator
[  532.816618] ov08x40 i2c-OVTI08F4:00: supply dvdd not found, using dummy regulator
[  532.823567] ov08x40 i2c-OVTI08F4:00: chip id mismatch: 560858!=0

Is it possible that my camera is slightly different?  

happy to try anything else, thanks for all the work put into this!

- bill

Comment 9 Hans de Goede 2025-03-06 14:36:57 UTC
For those of you where things still do not work with the following error:

[  532.823567] ov08x40 i2c-OVTI08F4:00: chip id mismatch: 560858!=0

I have prepared a Fedora test kernel build with some ov08x40 patches which attempt to fix this:

https://koji.fedoraproject.org/koji/taskinfo?taskID=129900499

Note this is still building at the moment, it should be finished in a couple of hours.

For instructions for installing a kernel directly from koji see:

https://fedorapeople.org/~jwrdegoede/kernel-test-instructions.txt
https://docs.fedoraproject.org/en-US/quick-docs/kernel-installing-from-koji/

Please give this kernel a try and let me know if this helps.

Comment 10 Hans de Goede 2025-03-06 18:17:17 UTC
Note the test kernel is done building now.

Comment 11 bill rushforth 2025-03-06 18:44:14 UTC
Thanks for the update!

Major improvement I can now access the webcam using "qcam"

For some reason firefox doesnt like it yet, but I will debug this more later.

Awesome progress - let me know if any more logs are useful.

dmesg looks the same except the "chip id mistmatch" is missing from the logs now.

Comment 12 bill rushforth 2025-03-06 19:32:32 UTC
One other comment, in reviewing your blog, i believe just the open source stack is working for me.  I do not get the "Intel MIPI Camera (V4L2)" listed as a thing to select.

In previous configurations this one did seem to show up however.  But was just a black screen.

The foss stack is working, but the picture flashes like a strobe light after some time, making it unusable unfortunately.   (it starts off normal, then after 10 seconds it is like the white balance is being set to max then min then max then min very rapidly)

regardless, great progress!

Comment 13 bill rushforth 2025-03-06 21:33:48 UTC
sorry for so many comments.  i have not rebooted or anything but the intel mipi started to show up and works. no flashing.  not sure why it started to show up later, but it is now.  thanks!

Comment 14 Xrn 2025-03-09 18:29:04 UTC
Thanks for all details, downgraded Fedora from 42 to 41 and then installed kernel 

uname -a
Linux fedora 6.13.5-200.ipu6.fc41.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Mar  6 16:16:33 UTC 2025 x86_64 GNU/Linux

I can start camera from my "Camera" app which is great! Because this is first time when I see on X1 gen 12 camera in use at Fedora, but when I want to use camera in browser like https://mozilla.github.io/webrtc-landing/gum_test.html oraz zoom, or in zoom itself it seems that that there are some issues with pipewire (there was a crash report). 

So

Name            : pipewire
Epoch           : 0
Version         : 1.2.7
Release         : 5.fc41
Architecture    : x86_64
Installed size  : 401.8 KiB
Source          : pipewire-1.2.7-5.fc41.src.rpm

systemctl --user status pipewire
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.298924391] [11786] ERROR V4L2 v4l2_subdevice.cpp:1085 'ov08x40 19-0010': Unable to get rectangle 1 on pad 0/0: Inappropriate ioctl for device
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.298931386] [11786]  WARN CameraSensor camera_sensor.cpp:315 'ov08x40 19-0010': The PixelArrayActiveAreas property has been defaulted to (0, 0)/3856x2416
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.298940096] [11786] ERROR V4L2 v4l2_subdevice.cpp:1085 'ov08x40 19-0010': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.298945236] [11786]  WARN CameraSensor camera_sensor.cpp:323 'ov08x40 19-0010': Failed to retrieve the sensor crop rectangle
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.298950242] [11786]  WARN CameraSensor camera_sensor.cpp:329 'ov08x40 19-0010': The sensor kernel driver needs to be fixed
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.298955442] [11786]  WARN CameraSensor camera_sensor.cpp:331 'ov08x40 19-0010': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.299188668] [11786]  WARN CameraSensorProperties camera_sensor_properties.cpp:293 No static properties available for 'ov08x40'
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.299195614] [11786]  WARN CameraSensorProperties camera_sensor_properties.cpp:295 Please consider updating the camera sensor properties database
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.300649335] [11786]  WARN IPAProxy ipa_proxy.cpp:160 Configuration file 'ov08x40.yaml' not found for IPA module 'simple', falling back to 'uncalibrated.yaml'
Mar 09 19:22:32 fedora pipewire[11754]: [0:14:55.300669691] [11786]  WARN IPASoft soft_simple.cpp:114 Failed to create camera sensor helper for ov08x40

Comment 15 Xrn 2025-03-09 19:21:23 UTC
reason: pipewire killed by SIGFPE

: No such file or directory.
Downloading 30.52 K separate debug info for /usr/bin/pipewire...
Downloading 535.19 K separate debug info for /home/xrn/.cache/debuginfod_client/3917c1c49b5fdf63ce345c03c3be3c275223ceb4/debuginfo...
warning: Can't open file /memfd:softIsp_stats (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:pipewire-memfd:flags=0x0000000f,type=2,size=192 (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:pipewire-memfd:flags=0x0000000f,type=2,size=4096 (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:pipewire-memfd:flags=0x0000000f,type=2,size=2312 (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:pipewire-memfd:flags=0x0000000f,type=2,size=65664 (deleted) during file-backed mapping note processing
warning: Can't open file /memfd:softIsp_params (deleted) during file-backed mapping note processing
[New LWP 10908]
[New LWP 4395]
[New LWP 4039]
[New LWP 4031]
[New LWP 4037]
[New LWP 4390]
[New LWP 4391]
[New LWP 10909]
Downloading 2.11 M separate debug info for /lib64/libpipewire-0.3.so.0...
Downloading 6.70 M separate debug info for /lib64/libc.so.6...
Downloading 652.29 K separate debug info for /lib64/libgcc_s.so.1...
Downloading 6.24 M separate debug info for /home/xrn/.cache/debuginfod_client/859e77bb6c60486470a09faf25a28a6e716f7dcb/debuginfo...
Downloading 484.90 K separate debug info for /usr/lib64/spa-0.2/support/libspa-support.so...
Downloading 3.58 M separate debug info for /lib64/libm.so.6...
Downloading 36.16 K separate debug info for /usr/lib64/spa-0.2/support/libspa-journal.so...
Downloading 3.78 M separate debug info for /lib64/libsystemd.so.0...
Downloading 3.96 M separate debug info for /home/xrn/.cache/debuginfod_client/88ab441d72ab6bb830391f1dfc361c00c8297217/debuginfo...
Downloading 101.80 K separate debug info for /lib64/libcap.so.2...
Downloading 16.85 K separate debug info for /home/xrn/.cache/debuginfod_client/aa72e534d37e64880d4f4fd95959c74735dc544e/debuginfo...
Downloading 68.12 K separate debug info for /usr/lib64/spa-0.2/support/libspa-dbus.so...
Downloading 1.04 M separate debug info for /lib64/libdbus-1.so.3...
Downloading 117.17 K separate debug info for /home/xrn/.cache/debuginfod_client/e0044c0f226d0ec9f9ab72263e533dbf70a2cacd/debuginfo...
Downloading 73.39 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-rt.so...
Downloading 730.37 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-protocol-native.so...
Downloading 540.78 K separate debug info for /lib64/libselinux.so.1...
Downloading 82.43 K separate debug info for /home/xrn/.cache/debuginfod_client/a77b40fbe465e7cfd1b53f220a51f41837976591/debuginfo...
Downloading 1.50 M separate debug info for /lib64/libpcre2-8.so.0...
Downloading 32.79 K separate debug info for /home/xrn/.cache/debuginfod_client/ecf3f9c874cd4aa76ed4bd9e4f4d87d2d2ab9373/debuginfo...
Downloading 164.58 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-profiler.so...
Downloading 170.84 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-metadata.so...
Downloading 42.71 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-spa-device-factory.so...
Downloading 107.29 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-spa-node-factory.so...
Downloading 696.45 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-client-node.so...
Downloading 199.45 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-client-device.so...
Downloading 41.45 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-portal.so...
Downloading separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-access.so...
Downloading 3.54 M separate debug info for /lib64/libglib-2.0.so.0...
Downloading 697.73 K separate debug info for /home/xrn/.cache/debuginfod_client/865a88f51bbf48869c7166397a8c69259849ea68/debuginfo...
Downloading 130.84 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-adapter.so...
Downloading 49.91 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-link-factory.so...
Downloading 560.84 K separate debug info for /usr/lib64/pipewire-0.3/libpipewire-module-session-manager.so...
Downloading 2.49 M separate debug info for /usr/lib64/spa-0.2/alsa/libspa-alsa.so...
Downloading 3.32 M separate debug info for /lib64/libasound.so.2...
Downloading 1.57 M separate debug info for /lib64/libudev.so.1...
Downloading 1.45 M separate debug info for /usr/lib64/spa-0.2/audioconvert/libspa-audioconvert.so...
Downloading 2.07 M separate debug info for /usr/lib64/spa-0.2/libcamera/libspa-libcamera.so...
Downloading 22.98 M separate debug info for /lib64/libcamera.so.0.3...
Downloading 3.20 M separate debug info for /home/xrn/.cache/debuginfod_client/eebb0b9577b7159826082ce4523240957535880c/debuginfo...
Downloading 1.79 M separate debug info for /lib64/libcamera-base.so.0.3...
Downloading 17.30 M separate debug info for /lib64/libstdc++.so.6...
Downloading 6.99 M separate debug info for /lib64/libgnutls.so.30...
Downloading 1.80 M separate debug info for /lib64/liblttng-ust.so.1...
Downloading 155.38 K separate debug info for /home/xrn/.cache/debuginfod_client/9246014f667f5179bd9d68aebd01d3a15c95639b/debuginfo...
Downloading 278.00 K separate debug info for /lib64/libyaml-0.so.2...
Downloading 2.06 M separate debug info for /lib64/libdw.so.1...
Downloading 327.80 K separate debug info for /home/xrn/.cache/debuginfod_client/c254e6a83534d5e6db4598b409b585fe5f484593/debuginfo...
Downloading 279.70 K separate debug info for /lib64/libunwind.so.8...
Downloading 53.62 K separate debug info for /home/xrn/.cache/debuginfod_client/f01e8069c63240aab98d439d08a30f165c0a0422/debuginfo...
Downloading 6.11 M separate debug info for /lib64/libp11-kit.so.0...
Downloading 865.46 K separate debug info for /home/xrn/.cache/debuginfod_client/3a9c200ec43f1e921995accfa700c62b3c0536a6/debuginfo...
Downloading 119.80 K separate debug info for /lib64/libidn2.so.0...
Downloading separate debug info for /home/xrn/.cache/debuginfod_client/db0d85be2bc49ea65a650ae7d6c0be379dd2c916/debuginfo...
Downloading 1.35 M separate debug info for /lib64/libunistring.so.5...
Downloading 243.96 K separate debug info for /lib64/libtasn1.so.6...
Downloading separate debug info for /home/xrn/.cache/debuginfod_client/36c5620da8eda87c9a26e39e88bb09e39b7c9912/debuginfo...
Downloading 775.88 K separate debug info for /lib64/libhogweed.so.6...
Downloading separate debug info for /home/xrn/.cache/debuginfod_client/3f392e2ccdc5c0a952d15e4beceee89b8d35cac5/debuginfo...
Downloading 1.22 M separate debug info for /lib64/libnettle.so.8...
Downloading 1.75 M separate debug info for /lib64/libgmp.so.10...
Downloading 143.28 K separate debug info for /lib64/libnuma.so.1...
Downloading separate debug info for /home/xrn/.cache/debuginfod_client/98fff858904c40323b5bd2499fd5a81a274e92de/debuginfo...
Downloading 148.83 K separate debug info for /lib64/liblttng-ust-tracepoint.so.1...
Downloading 153.96 K separate debug info for /lib64/liblttng-ust-common.so.1...
Downloading 452.04 K separate debug info for /lib64/libelf.so.1...
Downloading 528.52 K separate debug info for /lib64/libz.so.1...
Downloading 76.69 K separate debug info for /home/xrn/.cache/debuginfod_client/e8aae3ecf645d66dff0162559d6b4659768bb4d4/debuginfo...
Downloading 4.74 M separate debug info for /lib64/libzstd.so.1...
Downloading 318.25 K separate debug info for /home/xrn/.cache/debuginfod_client/fa1a2118b7876d244721a6937565acdea1c42418/debuginfo...
Downloading 805.32 K separate debug info for /lib64/liblzma.so.5...
Downloading 163.20 K separate debug info for /lib64/libbz2.so.1...
Downloading separate debug info for /home/xrn/.cache/debuginfod_client/e55f754492a153b4068a131340d25bf80918f8cf/debuginfo...
Downloading 135.55 K separate debug info for /lib64/libffi.so.8...
Downloading 647.63 K separate debug info for /usr/lib64/libcamera/ipa_soft_simple.so...
Downloading 330.22 K separate debug info for /usr/lib64/spa-0.2/audiomixer/libspa-audiomixer.so...
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/usr/bin/pipewire'.
Program terminated with signal SIGFPE, Arithmetic exception.
#0  0x00007fea7c1b6884 in std::basic_ostream<char, std::char_traits<char> >::operator<< (this=0x7fea777fd380, __n=<optimized out>) at /usr/include/c++/14/ostream:204
warning: Source file is more recent than executable.
204		return _M_insert(static_cast<unsigned long>(__n));
[Current thread is 1 (Thread 0x7fea777fe6c0 (LWP 10908))]

Thread 1 (Thread 0x7fea777fe6c0 (LWP 10908)):
#0  0x00007fea7c1b6884 in std::basic_ostream<char, std::char_traits<char> >::operator<< (this=0x7fea777fd380, __n=<optimized out>) at /usr/include/c++/14/ostream:204
No locals.
#1  libcamera::BlackLevel::update (this=this@entry=0x7fea640057c0, yHistogram=...) at ../src/ipa/simple/black_level.cpp:82
        i = 0
        seen = <optimized out>
        total = 0
        pixelThreshold = <optimized out>
        histogramRatio = 4
        currentBlackIdx = 0
#2  0x00007fea7c1b4f9b in libcamera::ipa::soft::IPASoftSimple::processStats (this=0x7fea64005730, sensorControls=...) at ../src/ipa/simple/soft_simple.cpp:252
        histogram = {_M_elems = {0 <repeats 64 times>}}
        blackLevel = <optimized out>
        nPixels = <optimized out>
        offset = <optimized out>
        sumR = <optimized out>
        sumG = <optimized out>
        sumB = <optimized out>
        gainR = <optimized out>
        gainB = <optimized out>
        gainG = <optimized out>
        blackLevelHistIdx = <optimized out>
        histogramSize = <optimized out>
        yHistValsPerBin = <optimized out>
        yHistValsPerBinMod = <optimized out>
        exposureBins = {663, 872, 2697, 392, 16}
        denom = <optimized out>
        num = <optimized out>
        exposureMSV = <optimized out>
        again = <optimized out>
        ctrls = {validator_ = 0x0, idmap_ = 0x7fea640040a8, infoMap_ = 0x7fea64005780, controls_ = std::unordered_map with 0 elements}
#3  0x00007fea7de27a24 in libcamera::Object::message (this=<optimized out>, msg=<optimized out>) at ../src/libcamera/base/object.cpp:211
        iMsg = <optimized out>
        semaphore = 0x0
#4  libcamera::Object::message (this=<optimized out>, msg=<optimized out>) at ../src/libcamera/base/object.cpp:201
        iMsg = <optimized out>
        semaphore = <optimized out>
#5  0x00007fea7de35f56 in libcamera::Thread::dispatchMessages (this=0x7fea64053e80, type=libcamera::Message::None) at ../src/libcamera/base/thread.cpp:602
        message = std::unique_ptr<libcamera::Message> = {get() = 0x7fea5c001540}
        receiver = 0x7fea64053eb0
        msg = <optimized out>
        __for_range = std::__cxx11::list = {[0] = std::unique_ptr<libcamera::Message> = {get() = 0x0}}
        __for_begin = <optimized out>
        __for_end = <optimized out>
        __func__ = "dispatchMessages"
        locker = {lock_ = {_M_device = 0x7fea6401c930, _M_owns = false}}
        messages = std::__cxx11::list = {[0] = std::unique_ptr<libcamera::Message> = {get() = 0x0}}
#6  0x00007fea7de2c2c7 in libcamera::EventDispatcherPoll::processEvents (this=0x7fea68000bd0) at ../src/libcamera/base/event_dispatcher_poll.cpp:146
        ret = <optimized out>
        pollfds = std::vector of length 0, capacity 1
#7  0x00007fea7de35d09 in libcamera::Thread::exec (this=0x7fea64053e80) at ../src/libcamera/base/thread.cpp:306
        locker = {lock_ = {_M_device = 0x7fea6401c8b0, _M_owns = false}}
        dispatcher = 0x7fea68000bd0
#8  0x00007fea7da4b524 in std::execute_native_thread_routine (__p=0x7fea5c000e30) at ../../../../../libstdc++-v3/src/c++11/thread.cc:104
        __t = <optimized out>
#9  0x00007fea8d7a8168 in start_thread (arg=<optimized out>) at pthread_create.c:448
        ret = <optimized out>
        pd = <optimized out>
        out = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140645003945664, -4115833547929430667, 140645003945664, -120, 22, 140645012333232, -4115833547908459147, -4116172159896922763}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#10 0x00007fea8d82bf54 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
No locals.

Thread 2 (Thread 0x7fea77fff6c0 (LWP 4395)):
#0  0x00007fea7de84982 in libcamera::BoundMethodArgs<void>::invokePack<, void>(libcamera::BoundMethodPackBase*, std::integer_sequence<unsigned long>) (this=0x55c17d4b1890, pack=0x7fea5c000f00) at ../include/libcamera/base/bound_method.h:111
        args = 0x7fea5c000f00
#1  libcamera::BoundMethodArgs<void>::invokePack (this=0x55c17d4b1890, pack=0x7fea5c000f00) at ../include/libcamera/base/bound_method.h:124
No locals.
#2  0x00007fea7de2709f in libcamera::BoundMethodBase::activatePack (this=this@entry=0x55c17d4b1890, pack=std::shared_ptr<libcamera::BoundMethodPackBase> (use count 2, weak count 0) = {...}, deleteMethod=false) at ../src/libcamera/base/bound_method.cpp:85
        type = <optimized out>
#3  0x00007fea7dece73f in libcamera::BoundMethodMember<libcamera::PipelineHandler, void>::activate (this=0x55c17d4b1890, deleteMethod=<optimized out>) at ../include/libcamera/base/bound_method.h:184
        pack = <optimized out>
        sync = <optimized out>
        obj = <optimized out>
#4  0x00007fea7dea59fc in libcamera::Signal<>::emit() (this=<optimized out>) at ../include/libcamera/base/signal.h:153
        slot = <optimized out>
        __for_range = @0x7fea77ffe730: std::__cxx11::list = {[0] = 0x55c17d4b1890}
        __for_begin = <optimized out>
        __for_end = <optimized out>
#5  libcamera::Request::Private::emitPrepareCompleted (this=<optimized out>) at ../src/libcamera/request.cpp:190
No locals.
#6  0x00007fea7de27a24 in libcamera::Object::message (this=<optimized out>, msg=<optimized out>) at ../src/libcamera/base/object.cpp:211
        iMsg = <optimized out>
        semaphore = 0x0
#7  libcamera::Object::message (this=<optimized out>, msg=<optimized out>) at ../src/libcamera/base/object.cpp:201
        iMsg = <optimized out>
        semaphore = <optimized out>
#8  0x00007fea7de35f56 in libcamera::Thread::dispatchMessages (this=0x55c17ce63c40, type=libcamera::Message::None) at ../src/libcamera/base/thread.cpp:602
        message = std::unique_ptr<libcamera::Message> = {get() = 0x7fea60001350}
        receiver = 0x7fea64005560
        msg = <optimized out>
        __for_range = std::__cxx11::list = {[0] = std::unique_ptr<libcamera::Message> = {get() = 0x0}, [1] = std::unique_ptr<libcamera::Message> = {get() = 0x0}}
        __for_begin = <optimized out>
        __for_end = <optimized out>
        __func__ = "dispatchMessages"
        locker = {lock_ = {_M_device = 0x55c17d1bc450, _M_owns = false}}
        messages = std::__cxx11::list = {[0] = std::unique_ptr<libcamera::Message> = {get() = 0x0}, [1] = std::unique_ptr<libcamera::Message> = {get() = 0x0}}
#9  0x00007fea7de2c2c7 in libcamera::EventDispatcherPoll::processEvents (this=0x7fea6406a560) at ../src/libcamera/base/event_dispatcher_poll.cpp:146
        ret = <optimized out>
        pollfds = std::vector of length 2, capacity 3 = {{fd = 114, events = 1344, revents = 72}, {fd = 0, events = 0, revents = 0}}
#10 0x00007fea7de35d09 in libcamera::Thread::exec (this=this@entry=0x55c17ce63c40) at ../src/libcamera/base/thread.cpp:306
        locker = {lock_ = {_M_device = 0x55c17d1bc3d0, _M_owns = false}}
        dispatcher = 0x7fea6406a560
#11 0x00007fea7de98375 in libcamera::CameraManager::Private::run (this=0x55c17ce63c30) at ../src/libcamera/camera_manager.cpp:87
        ret = 0
#12 0x00007fea7da4b524 in std::execute_native_thread_routine (__p=0x55c17d1bc700) at ../../../../../libstdc++-v3/src/c++11/thread.cc:104
        __t = <optimized out>
#13 0x00007fea8d7a8168 in start_thread (arg=<optimized out>) at pthread_create.c:448
        ret = <optimized out>
        pd = <optimized out>
        out = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140645012338368, -4115834647977929355, 140645012338368, -120, 2, 140722920804304, -4115834647956957835, -4116172159896922763}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#14 0x00007fea8d82bf54 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
No locals.

Thread 3 (Thread 0x7fea7ed7f6c0 (LWP 4039)):
#0  0x00007fea8d82c572 in epoll_wait (epfd=9, events=events@entry=0x7fea7ed7ea80, maxevents=32, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30
        sc_ret = -4
        sc_cancel_oldtype = 0
        sc_ret = <optimized out>
#1  0x00007fea8d6f9c06 in impl_pollfd_wait (object=<optimized out>, pfd=<optimized out>, ev=0x7fea7ed7ec50, n_ev=<optimized out>, timeout=<optimized out>) at ../spa/plugins/support/system.c:138
        ep = <optimized out>
        i = <optimized out>
        nfds = <optimized out>
#2  0x00007fea8d6ea939 in loop_iterate (object=0x55c17cdc2368, timeout=-1) at ../spa/plugins/support/loop.c:587
        _f = <optimized out>
        _res = -95
        _o = <optimized out>
        impl = 0x55c17cdc2368
        ep = {{events = 1, data = 0x55c17d1bd278}, {events = 1, data = 0x55c17d1bd278}, {events = 1, data = 0x55c17cdc24b0}, {events = 0, data = 0x7fea7ed7ecc0}, {events = 2119696384, data = 0x7fea7ed7ee70}, {events = 0, data = 0x7ffc9bb4c1a0}, {events = 2128080256, data = 0x7fea8d79c56e <__vsnprintf_internal+142>}, {events = 2128080496, data = 0x7fea7ed7ee8b}, {events = 2128080531, data = 0x0}, {events = 2, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x7dad309c7657b400}, {events = 0, data = 0x800000}, {events = 2128080480, data = 0x7fea8d772d26 <__GI___snprintf+150>}, {events = 32, data = 0x7fea7ed7ee70}, {events = 2128080304, data = 0x7dad309c7657b400}, {events = 0, data = 0x0}, {events = 0, data = 0xfc7}, {events = 2128082624, data = 0x7fea7ed7f6c0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x7dad309c7657b400}, {events = 0, data = 0x800000}}
        e = <optimized out>
        i = <optimized out>
        nfds = <optimized out>
#3  0x00007fea8d941f53 in do_loop (user_data=0x55c17cdc21d0) at ../src/pipewire/data-loop.c:67
        __clframe = <optimized out>
        this = 0x55c17cdc21d0
        res = <optimized out>
        cb = <optimized out>
        m = <optimized out>
        data = 0x55c17cdc2368
        iterate = 0x7fea8d6ea8a0 <loop_iterate>
        __func__ = "do_loop"
#4  0x00007fea8d7a8168 in start_thread (arg=<optimized out>) at pthread_create.c:448
        ret = <optimized out>
        pd = <optimized out>
        out = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140645127157440, -4115854233028799115, 140645127157440, -120, 0, 140722920800672, -4115854233007827595, -4116172159896922763}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5  0x00007fea8d82bf54 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
No locals.

Thread 4 (Thread 0x7fea8d705740 (LWP 4031)):
#0  0x00007fea8d82c572 in epoll_wait (epfd=5, events=events@entry=0x7ffc9bb4d8f0, maxevents=32, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30
        sc_ret = -4
        sc_cancel_oldtype = 0
        sc_ret = <optimized out>
#1  0x00007fea8d6f9c06 in impl_pollfd_wait (object=<optimized out>, pfd=<optimized out>, ev=0x7ffc9bb4dac0, n_ev=<optimized out>, timeout=<optimized out>) at ../spa/plugins/support/system.c:138
        ep = <optimized out>
        i = <optimized out>
        nfds = <optimized out>
#2  0x00007fea8d6ea939 in loop_iterate (object=0x55c17cdb9e08, timeout=-1) at ../spa/plugins/support/loop.c:587
        _f = <optimized out>
        _res = -95
        _o = <optimized out>
        impl = 0x55c17cdb9e08
        ep = {{events = 1, data = 0x55c17dbdcea0}, {events = 1, data = 0x55c17d3bfe20}, {events = 1, data = 0x55c17d292cb0}, {events = 1, data = 0x55c17d299e30}, {events = 1, data = 0x55c17d30e360}, {events = 1, data = 0x55c17d319020}, {events = 5, data = 0x55c17d319020}, {events = 5, data = 0x55c17d3a2340}, {events = 5, data = 0x55c17d3bfe20}, {events = 5, data = 0x55c17d4a9d80}, {events = 5, data = 0x55c17d6fc230}, {events = 5, data = 0x55c17dbdcea0}, {events = 4, data = 0x55c17ce31060}, {events = 4, data = 0x55c17ce4f560}, {events = 4, data = 0x55c17d118fa0}, {events = 4, data = 0x55c17d3c1290}, {events = 4, data = 0x55c17ce31060}, {events = 1, data = 0x55c17cdc26b0}, {events = 4, data = 0x55c17d249910}, {events = 1, data = 0x55c17cdc26b0}, {events = 0, data = 0x0}, {events = 2375930968, data = 0x7dad309c7657b400}, {events = 2094768320, data = 0x55c17ce04670}, {events = 2094768320, data = 0x7fea8d9ac871}, {events = 2375731282, data = 0x55c17cdba0c0}, {events = 2612321392, data = 0x7fea8d978953 <pw_impl_metadata_register+243>}, {events = 2095072736, data = 0x55c17cdba598}, {events = 2612321568, data = 0x7fea8d946f8b <pw_context_new+4203>}, {events = 2612321488, data = 0x7ffc9bb4dcdf}, {events = 2094769128, data = 0x369464bc0}, {events = 2375730755, data = 0x55c17cdba0e0}, {events = 2094767312, data = 0x55c169465060 <pw_log_level>}}
        e = <optimized out>
        i = <optimized out>
        nfds = <optimized out>
#3  0x00007fea8d9604e0 in pw_main_loop_run (loop=loop@entry=0x55c17cdb9ca0) at ../src/pipewire/main-loop.c:130
        _f = <optimized out>
        _res = <optimized out>
        _o = <optimized out>
        res = 0
        __func__ = "pw_main_loop_run"
#4  0x000055c1694618ec in main (argc=<optimized out>, argv=<optimized out>) at ../src/daemon/pipewire.c:130
        context = 0x55c17cdba0c0
        loop = 0x55c17cdb9ca0
        properties = 0x0
        c = <optimized out>
        res = <optimized out>
        path = "/usr/bin/pipewire.conf\000\000\240\003\000\000\000\000\000\000D\000\000\000\000\000\000\000D\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\a\000\000\000\004\000\000\000X[\036\000\000\000\000\000X[\036\000\000\000\000\000X[\036\000\000\000\000\000\020\000\000\000\000\000\000\000\210\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000S\345td\004\000\000\000P\003\000\000\000\000\000\000P\003\000\000\000\000\000\000P\003\000\000\000\000\000\000P\000\000\000\000\000\000\000P\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\025\000\000\000\000\000\000\000\200\032\236\215\352\177\000\000\024\000\000\000\000\000\000\000\020\337\264\233\374\177\000\000"...
        config_name = <optimized out>
        level = SPA_LOG_LEVEL_WARN
        loc = {line = 2, col = 6, len = 2001184, location = 0x1e8920 <error: Cannot access memory at address 0x1e8920>, reason = 0x1e8920 <error: Cannot access memory at address 0x1e8920>}
        long_options = {{name = 0x55c169462c42 "help", has_arg = 0, flag = 0x0, val = 104}, {name = 0x55c169462c47 "version", has_arg = 0, flag = 0x0, val = 86}, {name = 0x55c169462c4f "config", has_arg = 1, flag = 0x0, val = 99}, {name = 0x55c169462c56 "verbose", has_arg = 0, flag = 0x0, val = 118}, {name = 0x55c169462c5e "properties", has_arg = 1, flag = 0x0, val = 80}, {name = 0x0, has_arg = 0, flag = 0x0, val = 0}}
        __func__ = "main"

Thread 5 (Thread 0x7fea7f6b86c0 (LWP 4037)):
#0  0x00007fea8d82c572 in epoll_wait (epfd=13, events=events@entry=0x7fea7f6b7a90, maxevents=32, timeout=-1) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30
        sc_ret = -4
        sc_cancel_oldtype = 0
        sc_ret = <optimized out>
#1  0x00007fea8d6f9c06 in impl_pollfd_wait (object=<optimized out>, pfd=<optimized out>, ev=0x7fea7f6b7c60, n_ev=<optimized out>, timeout=<optimized out>) at ../spa/plugins/support/system.c:138
        ep = <optimized out>
        i = <optimized out>
        nfds = <optimized out>
#2  0x00007fea8d6ea939 in loop_iterate (object=0x55c17cdd0be8, timeout=-1) at ../spa/plugins/support/loop.c:587
        _f = <optimized out>
        _res = -95
        _o = <optimized out>
        impl = 0x55c17cdd0be8
        ep = {{events = 1, data = 0x55c17cdcf510}, {events = 0, data = 0x7dad309c7657b400}, {events = 0, data = 0x7fea7f6b7cc0}, {events = 2129367040, data = 0x7fea7f6b7e70}, {events = 0, data = 0x7ffc9bb4c290}, {events = 2137750912, data = 0x7fea8d79c56e <__vsnprintf_internal+142>}, {events = 2137751152, data = 0x7fea7f6b7e8b}, {events = 2137751187, data = 0x0}, {events = 2, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x7dad309c7657b400}, {events = 0, data = 0x800000}, {events = 2137751136, data = 0x7fea8d772d26 <__GI___snprintf+150>}, {events = 32, data = 0x7fea7f6b7e70}, {events = 2137750960, data = 0x7dad309c7657b400}, {events = 0, data = 0x0}, {events = 0, data = 0xfc5}, {events = 2137753280, data = 0x7fea7f6b86c0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x0}, {events = 0, data = 0x55c17cdcf38c}, {events = 0, data = 0x55c17cdcf320}, {events = 0, data = 0xffffffffffffff88}}
        e = <optimized out>
        i = <optimized out>
        nfds = <optimized out>
#3  0x00007fea8d98db67 in do_loop (user_data=0x55c17cdcf320) at ../src/pipewire/thread-loop.c:294
        _f = <optimized out>
        _res = <optimized out>
        _o = <optimized out>
        this = 0x55c17cdcf320
        res = <optimized out>
        __func__ = "do_loop"
#4  0x00007fea8d7a8168 in start_thread (arg=<optimized out>) at pthread_create.c:448
        ret = <optimized out>
        pd = <optimized out>
        out = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140645136828096, -4115851248563399307, 140645136828096, -120, 0, 140722920800912, -4115851248542427787, -4116172159896922763}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#5  0x00007fea8d82bf54 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
No locals.

Thread 6 (Thread 0x7fea7d1cf6c0 (LWP 4390)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
No locals.
#1  0x00007fea7ddb969f in lttng_ust_futex (uaddr=0x7fea7e311000, op=0, val=0, timeout=0x0, uaddr2=0x0, val3=0) at ../../../src/lib/lttng-ust/futex.h:83
No locals.
#2  lttng_ust_futex_async (op=0, val=0, timeout=0x0, uaddr2=0x0, val3=0, uaddr=0x7fea7e311000) at ../../../src/lib/lttng-ust/futex.h:88
        ret = <optimized out>
        ret = <optimized out>
#3  wait_for_sessiond (sock_info=<optimized out>) at /usr/src/debug/lttng-ust-2.13.8-3.fc41.x86_64/src/lib/lttng-ust/lttng-ust-comm.c:1761
        error = <optimized out>
        quit = <optimized out>
        error = <optimized out>
        __PRETTY_FUNCTION__ = <optimized out>
        __func__ = <optimized out>
        end_wait = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
        perror_buf = <optimized out>
        perror_tmp = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
#4  ust_listener_thread (arg=0x7fea7de15560 <global_apps>) at /usr/src/debug/lttng-ust-2.13.8-3.fc41.x86_64/src/lib/lttng-ust/lttng-ust-comm.c:1832
        sock_info = 0x7fea7de15560 <global_apps>
        sock = <optimized out>
        ret = <optimized out>
        prev_connect_failed = <optimized out>
        has_waited = <optimized out>
        fd = <optimized out>
        timeout = <optimized out>
        restart = <optimized out>
        __func__ = "ust_listener_thread"
        __PRETTY_FUNCTION__ = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
#5  0x00007fea8d7a8168 in start_thread (arg=<optimized out>) at pthread_create.c:448
        ret = <optimized out>
        pd = <optimized out>
        out = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140645098124992, -4115854688295332491, 140645098124992, -120, 22, 140722920798336, -4115854688274360971, -4116172159896922763}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#6  0x00007fea8d82bf54 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
No locals.

Thread 7 (Thread 0x7fea7c9ce6c0 (LWP 4391)):
#0  syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38
No locals.
#1  0x00007fea7ddb969f in lttng_ust_futex (uaddr=0x7fea7e310000, op=0, val=0, timeout=0x0, uaddr2=0x0, val3=0) at ../../../src/lib/lttng-ust/futex.h:83
No locals.
#2  lttng_ust_futex_async (op=0, val=0, timeout=0x0, uaddr2=0x0, val3=0, uaddr=0x7fea7e310000) at ../../../src/lib/lttng-ust/futex.h:88
        ret = <optimized out>
        ret = <optimized out>
#3  wait_for_sessiond (sock_info=<optimized out>) at /usr/src/debug/lttng-ust-2.13.8-3.fc41.x86_64/src/lib/lttng-ust/lttng-ust-comm.c:1761
        error = <optimized out>
        quit = <optimized out>
        error = <optimized out>
        __PRETTY_FUNCTION__ = <optimized out>
        __func__ = <optimized out>
        end_wait = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
        perror_buf = <optimized out>
        perror_tmp = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
#4  ust_listener_thread (arg=0x7fea7de13500 <local_apps>) at /usr/src/debug/lttng-ust-2.13.8-3.fc41.x86_64/src/lib/lttng-ust/lttng-ust-comm.c:1832
        sock_info = 0x7fea7de13500 <local_apps>
        sock = <optimized out>
        ret = <optimized out>
        prev_connect_failed = <optimized out>
        has_waited = <optimized out>
        fd = <optimized out>
        timeout = <optimized out>
        restart = <optimized out>
        __func__ = "ust_listener_thread"
        __PRETTY_FUNCTION__ = <optimized out>
        ____buf = <optimized out>
        ____saved_errno = <optimized out>
#5  0x00007fea8d7a8168 in start_thread (arg=<optimized out>) at pthread_create.c:448
        ret = <optimized out>
        pd = <optimized out>
        out = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140645089732288, -4115857986293344907, 140645089732288, -120, 22, 140722920798336, -4115857986272373387, -4116172159896922763}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#6  0x00007fea8d82bf54 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
No locals.

Thread 8 (Thread 0x7fea76ffd6c0 (LWP 10909)):
#0  0x00007fea8d8289eb in __GI_munmap () at ../sysdeps/unix/syscall-template.S:117
No locals.
#1  0x00007fea7dec65e0 in libcamera::MappedBuffer::~MappedBuffer (this=0x7fea76ffc0d0, __in_chrg=<optimized out>) at ../src/libcamera/mapped_framebuffer.cpp:95
        map = @0x7fea5c001620: {data_ = 0x7fea7633b000 <error: Cannot access memory at address 0x7fea7633b000>, size_ = 4719936}
        __for_range = std::vector of length 1, capacity 1 = {{data_ = 0x7fea7633b000 <error: Cannot access memory at address 0x7fea7633b000>, size_ = 4719936}}
        __for_begin = <optimized out>
        __for_end = <optimized out>
        map = <optimized out>
        __for_range = <optimized out>
        __for_begin = <optimized out>
        __for_end = <optimized out>
#2  0x00007fea7df3634d in libcamera::MappedFrameBuffer::~MappedFrameBuffer (this=0x7fea76ffc0d0, __in_chrg=<optimized out>) at ../include/libcamera/internal/mapped_framebuffer.h:46
No locals.
#3  libcamera::DebayerCpu::process (this=0x7fea64029330, input=<optimized out>, output=<optimized out>, params=...) at ../src/libcamera/software_isp/debayer_cpu.cpp:813
        frameStartTime = {tv_sec = 587, tv_nsec = 420391875}
        metadata = <optimized out>
        in = {<libcamera::MappedBuffer> = {error_ = 0, planes_ = std::vector of length 1, capacity 1 = {{data_ = 0x7fea7633b000 <error: Cannot access memory at address 0x7fea7633b000>, size_ = 4719936}}, maps_ = std::vector of length 1, capacity 1 = {{data_ = 0x7fea7633b000 <error: Cannot access memory at address 0x7fea7633b000>, size_ = 4719936}}}, <No data fields>}
        out = {<libcamera::MappedBuffer> = {error_ = 0, planes_ = std::vector of length 1, capacity 1 = {{data_ = 0x7feda2a5cdc1 <error: Cannot access memory at address 0x7feda2a5cdc1>, size_ = 7564002000197927175}}, maps_ = std::vector of length 1, capacity 1 = {{data_ = 0x7feda2a5ce00 <error: Cannot access memory at address 0x7feda2a5ce00>, size_ = 7564002000197927175}}}, <No data fields>}
#4  0x00007fea7df3c429 in libcamera::BoundMethodMember<libcamera::DebayerCpu, void, libcamera::FrameBuffer*, libcamera::FrameBuffer*, libcamera::DebayerParams>::invoke (this=<optimized out>, args#0=<optimized out>, args#1=<optimized out>, args#2=...) at ../include/libcamera/base/bound_method.h:188
        obj = <optimized out>
        obj = <optimized out>
#5  libcamera::BoundMethodArgs<void, libcamera::FrameBuffer*, libcamera::FrameBuffer*, libcamera::DebayerParams>::invokePack<0ul, 1ul, 2ul, void> (this=<optimized out>, pack=<optimized out>) at ../include/libcamera/base/bound_method.h:115
        args = <optimized out>
        args = <optimized out>
#6  libcamera::BoundMethodArgs<void, libcamera::FrameBuffer*, libcamera::FrameBuffer*, libcamera::DebayerParams>::invokePack (this=<optimized out>, pack=<optimized out>) at ../include/libcamera/base/bound_method.h:124
No locals.
#7  0x00007fea7de27a24 in libcamera::Object::message (this=<optimized out>, msg=<optimized out>) at ../src/libcamera/base/object.cpp:211
        iMsg = <optimized out>
        semaphore = 0x0
#8  libcamera::Object::message (this=<optimized out>, msg=<optimized out>) at ../src/libcamera/base/object.cpp:201
        iMsg = <optimized out>
        semaphore = <optimized out>
#9  0x00007fea7de35f56 in libcamera::Thread::dispatchMessages (this=0x7fea64032208, type=libcamera::Message::None) at ../src/libcamera/base/thread.cpp:602
        message = std::unique_ptr<libcamera::Message> = {get() = 0x55c17d3c0bd0}
        receiver = 0x7fea64029368
        msg = <optimized out>
        __for_range = std::__cxx11::list = {[0] = std::unique_ptr<libcamera::Message> = {get() = 0x0}}
        __for_begin = <optimized out>
        __for_end = <optimized out>
        __func__ = "dispatchMessages"
        locker = {lock_ = {_M_device = 0x7fea6401f5c0, _M_owns = false}}
        messages = std::__cxx11::list = {[0] = std::unique_ptr<libcamera::Message> = {get() = 0x0}}
#10 0x00007fea7de2c2c7 in libcamera::EventDispatcherPoll::processEvents (this=0x7fea5c000bd0) at ../src/libcamera/base/event_dispatcher_poll.cpp:146
        ret = <optimized out>
        pollfds = std::vector of length 0, capacity 1
#11 0x00007fea7de35d09 in libcamera::Thread::exec (this=0x7fea64032208) at ../src/libcamera/base/thread.cpp:306
        locker = {lock_ = {_M_device = 0x7fea6401f540, _M_owns = false}}
        dispatcher = 0x7fea5c000bd0
#12 0x00007fea7da4b524 in std::execute_native_thread_routine (__p=0x7fea68000b70) at ../../../../../libstdc++-v3/src/c++11/thread.cc:104
        __t = <optimized out>
#13 0x00007fea8d7a8168 in start_thread (arg=<optimized out>) at pthread_create.c:448
        ret = <optimized out>
        pd = <optimized out>
        out = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140644995552960, -4115836845927443083, 140644995552960, -120, 22, 140645012333264, -4115836845906471563, -4116172159896922763}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <optimized out>
#14 0x00007fea8d82bf54 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
No locals.
From                To                  Syms Read   Shared Object Library
0x00007fea8d92dd40  0x00007fea8d9a0159  Yes         /lib64/libpipewire-0.3.so.0
0x00007fea8d738840  0x00007fea8d8a685d  Yes         /lib64/libc.so.6
0x00007fea8d709740  0x00007fea8d72c3c5  Yes         /lib64/libgcc_s.so.1
0x00007fea8da01000  0x00007fea8da29875  Yes         /lib64/ld-linux-x86-64.so.2
0x00007fea8d6e5880  0x00007fea8d6fb9c9  Yes         /usr/lib64/spa-0.2/support/libspa-support.so
0x00007fea8d5e8440  0x00007fea8d660936  Yes         /lib64/libm.so.6
0x00007fea8d9f31f0  0x00007fea8d9f41fc  Yes         /usr/lib64/spa-0.2/support/libspa-journal.so
0x00007fea7f7119c0  0x00007fea7f7acfd0  Yes         /lib64/libsystemd.so.0
0x00007fea8d9e8980  0x00007fea8d9ed7a0  Yes         /lib64/libcap.so.2
0x00007fea8d6dd450  0x00007fea8d6df5bc  Yes         /usr/lib64/spa-0.2/support/libspa-dbus.so
0x00007fea7f6c9d00  0x00007fea7f6f8ab3  Yes         /lib64/libdbus-1.so.3
0x00007fea8d5de8c0  0x00007fea8d5e1b76  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-rt.so
0x00007fea8d59d0a0  0x00007fea8d5bd7a3  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-protocol-native.so
0x00007fea7ee7a140  0x00007fea7ee9514c  Yes         /lib64/libselinux.so.1
0x00007fea7edd4500  0x00007fea7ee4667c  Yes         /lib64/libpcre2-8.so.0
0x00007fea7eead580  0x00007fea7eeb3ebc  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-profiler.so
0x00007fea7edc59c0  0x00007fea7edccda2  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-metadata.so
0x00007fea8d6cf5f0  0x00007fea8d6d0233  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-spa-device-factory.so
0x00007fea7eea28a0  0x00007fea7eea4c03  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-spa-node-factory.so
0x00007fea7ed97f80  0x00007fea7edb866d  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-client-node.so
0x00007fea7ed88780  0x00007fea7ed90c38  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-client-device.so
0x00007fea7ed81590  0x00007fea7ed8241f  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-portal.so
0x00007fea7e578580  0x00007fea7e57a748  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-access.so
0x00007fea7e414080  0x00007fea7e4b6242  Yes         /lib64/libglib-2.0.so.0
0x00007fea7e569840  0x00007fea7e56d683  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-adapter.so
0x00007fea7e562830  0x00007fea7e563b24  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-link-factory.so
0x00007fea7e3eba00  0x00007fea7e407073  Yes         /usr/lib64/pipewire-0.3/libpipewire-module-session-manager.so
0x00007fea7e32a480  0x00007fea7e3ad0b3  Yes         /usr/lib64/spa-0.2/alsa/libspa-alsa.so
0x00007fea7e20c340  0x00007fea7e2ac228  Yes         /lib64/libasound.so.2
0x00007fea7e1c0200  0x00007fea7e1e6fa0  Yes         /lib64/libudev.so.1
0x00007fea7e04d600  0x00007fea7e098a7c  Yes         /usr/lib64/spa-0.2/audioconvert/libspa-audioconvert.so
0x00007fea7e009b40  0x00007fea7e0208b0  Yes         /usr/lib64/spa-0.2/libcamera/libspa-libcamera.so
0x00007fea7de5bac0  0x00007fea7df416c5  Yes         /lib64/libcamera.so.0.3
0x00007fea7de250c0  0x00007fea7de39231  Yes         /lib64/libcamera-base.so.0.3
0x00007fea7da09580  0x00007fea7db37e82  Yes         /lib64/libstdc++.so.6
0x00007fea7d604f40  0x00007fea7d792932  Yes         /lib64/libgnutls.so.30
0x00007fea7ddac380  0x00007fea7ddf5615  Yes         /lib64/liblttng-ust.so.1
0x00007fea7dd854c0  0x00007fea7dd9e218  Yes         /lib64/libyaml-0.so.2
0x00007fea7dcee780  0x00007fea7dd45124  Yes         /lib64/libdw.so.1
0x00007fea7dcd1380  0x00007fea7dcdb135  Yes         /lib64/libunwind.so.8
0x00007fea7d8a4240  0x00007fea7d96b370  Yes         /lib64/libp11-kit.so.0
0x00007fea7dcb0540  0x00007fea7dcb3c69  Yes         /lib64/libidn2.so.0
0x00007fea7d463100  0x00007fea7d49a82d  Yes         /lib64/libunistring.so.5
0x00007fea7dc98700  0x00007fea7dca68a5  Yes         /lib64/libtasn1.so.6
0x00007fea7d41af00  0x00007fea7d42dfcd  Yes         /lib64/libhogweed.so.6
0x00007fea7d3c7c80  0x00007fea7d3f68c5  Yes         /lib64/libnettle.so.8
0x00007fea7d3238c0  0x00007fea7d3a0bb9  Yes         /lib64/libgmp.so.10
0x00007fea7e314c20  0x00007fea7e31a4b4  Yes         /lib64/libnuma.so.1
0x00007fea7dc7c480  0x00007fea7dc82d9e  Yes         /lib64/liblttng-ust-tracepoint.so.1
0x00007fea7dc6e780  0x00007fea7dc7535b  Yes         /lib64/liblttng-ust-common.so.1
0x00007fea7d880800  0x00007fea7d892665  Yes         /lib64/libelf.so.1
0x00007fea7d2ee300  0x00007fea7d304399  Yes         /lib64/libz.so.1
0x00007fea7d22ae80  0x00007fea7d2d9ef2  Yes         /lib64/libzstd.so.1
0x00007fea7d1f8b40  0x00007fea7d21b1c1  Yes         /lib64/liblzma.so.5
0x00007fea7d1e3580  0x00007fea7d1f05e3  Yes         /lib64/libbz2.so.1
0x00007fea7d1d2000  0x00007fea7d1db19f  Yes         /lib64/libffi.so.8
0x00007fea7c1b29c0  0x00007fea7c1b8d34  Yes         /usr/lib64/libcamera/ipa_soft_simple.so
0x00007fea7c19d200  0x00007fea7c1abb5c  Yes         /usr/lib64/spa-0.2/audiomixer/libspa-audiomixer.so
$1 = 0x0
$2 = 0x0
rax            0x0                 0
rbx            0x0                 0
rcx            0x20                32
rdx            0x0                 0
rsi            0x2820              10272
rdi            0x7fea777fd380      140645003940736
rbp            0x7fea777fd590      0x7fea777fd590
rsp            0x7fea777fd370      0x7fea777fd370
r8             0x6                 6
r9             0x7fea777fd270      140645003940464
r10            0x1                 1
r11            0x1002              4098
r12            0x0                 0
r13            0x0                 0
r14            0x7fea777fd380      140645003940736
r15            0x7fea777fd670      140645003941488
rip            0x7fea7c1b6884      0x7fea7c1b6884 <libcamera::BlackLevel::update(std::array<unsigned int, 64ul>&)+372>
eflags         0x10246             [ PF ZF IF RF ]
cs             0x33                51
ss             0x2b                43
ds             0x0                 0
es             0x0                 0
fs             0x0                 0
gs             0x0                 0
st0            0                   (raw 0x00000000000000000000)
st1            0                   (raw 0x00000000000000000000)
st2            0                   (raw 0x00000000000000000000)
st3            0                   (raw 0x00000000000000000000)
st4            0                   (raw 0x00000000000000000000)
st5            0                   (raw 0x00000000000000000000)
st6            0                   (raw 0x00000000000000000000)
st7            0                   (raw 0x00000000000000000000)
fctrl          0x37f               895
fstat          0x0                 0
ftag           0xffff              65535
fiseg          0x0                 0
fioff          0x0                 0
foseg          0x0                 0
fooff          0x0                 0
fop            0x0                 0
mxcsr          0x1fa0              [ PE IM DM ZM OM UM PM ]
pkru           0x55555554          1431655764
fs_base        0x7fea777fe6c0      140645003945664
gs_base        0x0                 0
ymm0           {v16_bfloat16 = {0xc40, 0x6800, 0x7fea, 0x0, 0xc40, 0x6800, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0xc40, 0x6800, 0x7fea, 0x0, 0xc40, 0x6800, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0x68000c40, 0x7fea, 0x68000c40, 0x7fea, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x7fea68000c40, 0x7fea68000c40, 0x0, 0x0}, v32_int8 = {0x40, 0xc, 0x0, 0x68, 0xea, 0x7f, 0x0, 0x0, 0x40, 0xc, 0x0, 0x68, 0xea, 0x7f, 0x0 <repeats 18 times>}, v16_int16 = {0xc40, 0x6800, 0x7fea, 0x0, 0xc40, 0x6800, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0x68000c40, 0x7fea, 0x68000c40, 0x7fea, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x7fea68000c40, 0x7fea68000c40, 0x0, 0x0}, v2_int128 = {0x7fea68000c4000007fea68000c40, 0x0}}
ymm1           {v16_bfloat16 = {0x6361, 0x5f6b, 0x656c, 0x6576, 0x2e6c, 0x7063, 0x3a70, 0x3937, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0x6361, 0x5f6b, 0x656c, 0x6576, 0x2e6c, 0x7063, 0x3a70, 0x3937, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0x5f6b6361, 0x6576656c, 0x70632e6c, 0x39373a70, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x6576656c5f6b6361, 0x39373a7070632e6c, 0x0, 0x0}, v32_int8 = {0x61, 0x63, 0x6b, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x2e, 0x63, 0x70, 0x70, 0x3a, 0x37, 0x39, 0x0 <repeats 16 times>}, v16_int16 = {0x6361, 0x5f6b, 0x656c, 0x6576, 0x2e6c, 0x7063, 0x3a70, 0x3937, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0x5f6b6361, 0x6576656c, 0x70632e6c, 0x39373a70, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x6576656c5f6b6361, 0x39373a7070632e6c, 0x0, 0x0}, v2_int128 = {0x39373a7070632e6c6576656c5f6b6361, 0x0}}
ymm2           {v16_bfloat16 = {0x94d0, 0x7dc5, 0x7fea, 0x0, 0x9318, 0x7dc5, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0x94d0, 0x7dc5, 0x7fea, 0x0, 0x9318, 0x7dc5, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0x7dc594d0, 0x7fea, 0x7dc59318, 0x7fea, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x7fea7dc594d0, 0x7fea7dc59318, 0x0, 0x0}, v32_int8 = {0xd0, 0x94, 0xc5, 0x7d, 0xea, 0x7f, 0x0, 0x0, 0x18, 0x93, 0xc5, 0x7d, 0xea, 0x7f, 0x0 <repeats 18 times>}, v16_int16 = {0x94d0, 0x7dc5, 0x7fea, 0x0, 0x9318, 0x7dc5, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0x7dc594d0, 0x7fea, 0x7dc59318, 0x7fea, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x7fea7dc594d0, 0x7fea7dc59318, 0x0, 0x0}, v2_int128 = {0x7fea7dc5931800007fea7dc594d0, 0x0}}
ymm3           {v16_bfloat16 = {0x9af8, 0x7dc5, 0x7fea, 0x0 <repeats 13 times>}, v16_half = {0x9af8, 0x7dc5, 0x7fea, 0x0 <repeats 13 times>}, v8_float = {0x7dc59af8, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x7fea7dc59af8, 0x0, 0x0, 0x0}, v32_int8 = {0xf8, 0x9a, 0xc5, 0x7d, 0xea, 0x7f, 0x0 <repeats 26 times>}, v16_int16 = {0x9af8, 0x7dc5, 0x7fea, 0x0 <repeats 13 times>}, v8_int32 = {0x7dc59af8, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x7fea7dc59af8, 0x0, 0x0, 0x0}, v2_int128 = {0x7fea7dc59af8, 0x0}}
ymm4           {v16_bfloat16 = {0x90, 0x6800, 0x7fea, 0x0 <repeats 13 times>}, v16_half = {0x90, 0x6800, 0x7fea, 0x0 <repeats 13 times>}, v8_float = {0x68000090, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x7fea68000090, 0x0, 0x0, 0x0}, v32_int8 = {0x90, 0x0, 0x0, 0x68, 0xea, 0x7f, 0x0 <repeats 26 times>}, v16_int16 = {0x90, 0x6800, 0x7fea, 0x0 <repeats 13 times>}, v8_int32 = {0x68000090, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x7fea68000090, 0x0, 0x0, 0x0}, v2_int128 = {0x7fea68000090, 0x0}}
ymm5           {v16_bfloat16 = {0x94d0, 0x7dc5, 0x7fea, 0x0, 0x9318, 0x7dc5, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0x94d0, 0x7dc5, 0x7fea, 0x0, 0x9318, 0x7dc5, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0x7dc594d0, 0x7fea, 0x7dc59318, 0x7fea, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x7fea7dc594d0, 0x7fea7dc59318, 0x0, 0x0}, v32_int8 = {0xd0, 0x94, 0xc5, 0x7d, 0xea, 0x7f, 0x0, 0x0, 0x18, 0x93, 0xc5, 0x7d, 0xea, 0x7f, 0x0 <repeats 18 times>}, v16_int16 = {0x94d0, 0x7dc5, 0x7fea, 0x0, 0x9318, 0x7dc5, 0x7fea, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0x7dc594d0, 0x7fea, 0x7dc59318, 0x7fea, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x7fea7dc594d0, 0x7fea7dc59318, 0x0, 0x0}, v2_int128 = {0x7fea7dc5931800007fea7dc594d0, 0x0}}
ymm6           {v16_bfloat16 = {0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0xff0000, 0xff0000, 0xff0000, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0xff000000ff0000, 0xff0000, 0x0, 0x0}, v32_int8 = {0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0xff, 0x0 <repeats 21 times>}, v16_int16 = {0x0, 0xff, 0x0, 0xff, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0xff0000, 0xff0000, 0xff0000, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0xff000000ff0000, 0xff0000, 0x0, 0x0}, v2_int128 = {0xff000000ff000000ff0000, 0x0}}
ymm7           {v16_bfloat16 = {0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0x2f2f2f2f, 0x2f2f2f2f, 0x2f2f2f2f, 0x2f2f2f2f, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x2f2f2f2f2f2f2f2f, 0x2f2f2f2f2f2f2f2f, 0x0, 0x0}, v32_int8 = {0x2f <repeats 16 times>, 0x0 <repeats 16 times>}, v16_int16 = {0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x2f2f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0x2f2f2f2f, 0x2f2f2f2f, 0x2f2f2f2f, 0x2f2f2f2f, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x2f2f2f2f2f2f2f2f, 0x2f2f2f2f2f2f2f2f, 0x0, 0x0}, v2_int128 = {0x2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f, 0x0}}
ymm8           {v16_bfloat16 = {0x5120, 0x0, 0x0, 0x0, 0x5121, 0x0 <repeats 11 times>}, v16_half = {0x5120, 0x0, 0x0, 0x0, 0x5121, 0x0 <repeats 11 times>}, v8_float = {0x5120, 0x0, 0x5121, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x5120, 0x5121, 0x0, 0x0}, v32_int8 = {0x20, 0x51, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x21, 0x51, 0x0 <repeats 22 times>}, v16_int16 = {0x5120, 0x0, 0x0, 0x0, 0x5121, 0x0 <repeats 11 times>}, v8_int32 = {0x5120, 0x0, 0x5121, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x5120, 0x5121, 0x0, 0x0}, v2_int128 = {0x51210000000000005120, 0x0}}
ymm9           {v16_bfloat16 = {0x203, 0x1, 0x607, 0x405, 0xa0b, 0x809, 0xe0f, 0xc0d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0x203, 0x1, 0x607, 0x405, 0xa0b, 0x809, 0xe0f, 0xc0d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0x10203, 0x4050607, 0x8090a0b, 0xc0d0e0f, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x405060700010203, 0xc0d0e0f08090a0b, 0x0, 0x0}, v32_int8 = {0x3, 0x2, 0x1, 0x0, 0x7, 0x6, 0x5, 0x4, 0xb, 0xa, 0x9, 0x8, 0xf, 0xe, 0xd, 0xc, 0x0 <repeats 16 times>}, v16_int16 = {0x203, 0x1, 0x607, 0x405, 0xa0b, 0x809, 0xe0f, 0xc0d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0x10203, 0x4050607, 0x8090a0b, 0xc0d0e0f, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x405060700010203, 0xc0d0e0f08090a0b, 0x0, 0x0}, v2_int128 = {0xc0d0e0f08090a0b0405060700010203, 0x0}}
ymm10          {v16_bfloat16 = {0x319a, 0x494f, 0xb92f, 0x6ccf, 0x7056, 0xcfb1, 0x1d01, 0x9397, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v16_half = {0x319a, 0x494f, 0xb92f, 0x6ccf, 0x7056, 0xcfb1, 0x1d01, 0x9397, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_float = {0x494f319a, 0x6ccfb92f, 0xcfb17056, 0x93971d01, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x6ccfb92f494f319a, 0x93971d01cfb17056, 0x0, 0x0}, v32_int8 = {0x9a, 0x31, 0x4f, 0x49, 0x2f, 0xb9, 0xcf, 0x6c, 0x56, 0x70, 0xb1, 0xcf, 0x1, 0x1d, 0x97, 0x93, 0x0 <repeats 16 times>}, v16_int16 = {0x319a, 0x494f, 0xb92f, 0x6ccf, 0x7056, 0xcfb1, 0x1d01, 0x9397, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int32 = {0x494f319a, 0x6ccfb92f, 0xcfb17056, 0x93971d01, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x6ccfb92f494f319a, 0x93971d01cfb17056, 0x0, 0x0}, v2_int128 = {0x93971d01cfb170566ccfb92f494f319a, 0x0}}
ymm11          {v16_bfloat16 = {0x7ef2, 0xeeae, 0xaeee, 0x3fe9, 0x0 <repeats 12 times>}, v16_half = {0x7ef2, 0xeeae, 0xaeee, 0x3fe9, 0x0 <repeats 12 times>}, v8_float = {0xeeae7ef2, 0x3fe9aeee, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x3fe9aeeeeeae7ef2, 0x0, 0x0, 0x0}, v32_int8 = {0xf2, 0x7e, 0xae, 0xee, 0xee, 0xae, 0xe9, 0x3f, 0x0 <repeats 24 times>}, v16_int16 = {0x7ef2, 0xeeae, 0xaeee, 0x3fe9, 0x0 <repeats 12 times>}, v8_int32 = {0xeeae7ef2, 0x3fe9aeee, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x3fe9aeeeeeae7ef2, 0x0, 0x0, 0x0}, v2_int128 = {0x3fe9aeeeeeae7ef2, 0x0}}
ymm12          {v16_bfloat16 = {0x45e9, 0x9b48, 0x495b, 0xbff2, 0x0 <repeats 12 times>}, v16_half = {0x45e9, 0x9b48, 0x495b, 0xbff2, 0x0 <repeats 12 times>}, v8_float = {0x9b4845e9, 0xbff2495b, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0xbff2495b9b4845e9, 0x0, 0x0, 0x0}, v32_int8 = {0xe9, 0x45, 0x48, 0x9b, 0x5b, 0x49, 0xf2, 0xbf, 0x0 <repeats 24 times>}, v16_int16 = {0x45e9, 0x9b48, 0x495b, 0xbff2, 0x0 <repeats 12 times>}, v8_int32 = {0x9b4845e9, 0xbff2495b, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0xbff2495b9b4845e9, 0x0, 0x0, 0x0}, v2_int128 = {0xbff2495b9b4845e9, 0x0}}
ymm13          {v16_bfloat16 = {0x6, 0x0, 0x0, 0x0, 0x6, 0x0 <repeats 11 times>}, v16_half = {0x6, 0x0, 0x0, 0x0, 0x6, 0x0 <repeats 11 times>}, v8_float = {0x6, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x6, 0x6, 0x0, 0x0}, v32_int8 = {0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x6, 0x0 <repeats 23 times>}, v16_int16 = {0x6, 0x0, 0x0, 0x0, 0x6, 0x0 <repeats 11 times>}, v8_int32 = {0x6, 0x0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x6, 0x6, 0x0, 0x0}, v2_int128 = {0x60000000000000006, 0x0}}
ymm14          {v16_bfloat16 = {0x4, 0x0, 0x0, 0x0, 0x4, 0x0 <repeats 11 times>}, v16_half = {0x4, 0x0, 0x0, 0x0, 0x4, 0x0 <repeats 11 times>}, v8_float = {0x4, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x4, 0x4, 0x0, 0x0}, v32_int8 = {0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0 <repeats 23 times>}, v16_int16 = {0x4, 0x0, 0x0, 0x0, 0x4, 0x0 <repeats 11 times>}, v8_int32 = {0x4, 0x0, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x4, 0x4, 0x0, 0x0}, v2_int128 = {0x40000000000000004, 0x0}}
ymm15          {v16_bfloat16 = {0x0 <repeats 16 times>}, v16_half = {0x0 <repeats 16 times>}, v8_float = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_double = {0x0, 0x0, 0x0, 0x0}, v32_int8 = {0x0 <repeats 32 times>}, v16_int16 = {0x0 <repeats 16 times>}, v8_int32 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int64 = {0x0, 0x0, 0x0, 0x0}, v2_int128 = {0x0, 0x0}}
Dump of assembler code for function _ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE:
Address range 0x7fea7c1b6710 to 0x7fea7c1b6908:
   0x00007fea7c1b6710 <+0>:	endbr64
   0x00007fea7c1b6714 <+4>:	push   %rbp
   0x00007fea7c1b6715 <+5>:	pxor   %xmm0,%xmm0
   0x00007fea7c1b6719 <+9>:	mov    %rsp,%rbp
   0x00007fea7c1b671c <+12>:	push   %r15
   0x00007fea7c1b671e <+14>:	push   %r14
   0x00007fea7c1b6720 <+16>:	push   %r13
   0x00007fea7c1b6722 <+18>:	push   %r12
   0x00007fea7c1b6724 <+20>:	push   %rbx
   0x00007fea7c1b6725 <+21>:	sub    $0x1f8,%rsp
   0x00007fea7c1b672c <+28>:	mov    %fs:0x28,%r15
   0x00007fea7c1b6735 <+37>:	mov    %r15,-0x38(%rbp)
   0x00007fea7c1b6739 <+41>:	mov    %rsi,%r15
   0x00007fea7c1b673c <+44>:	mov    %r15,%rax
   0x00007fea7c1b673f <+47>:	lea    0x100(%r15),%rdx
   0x00007fea7c1b6746 <+54>:	data16 cs nopw 0x0(%rax,%rax,1)
   0x00007fea7c1b6751 <+65>:	data16 cs nopw 0x0(%rax,%rax,1)
   0x00007fea7c1b675c <+76>:	nopl   0x0(%rax)
   0x00007fea7c1b6760 <+80>:	movdqu (%rax),%xmm2
   0x00007fea7c1b6764 <+84>:	add    $0x10,%rax
   0x00007fea7c1b6768 <+88>:	paddd  %xmm2,%xmm0
   0x00007fea7c1b676c <+92>:	cmp    %rdx,%rax
   0x00007fea7c1b676f <+95>:	jne    0x7fea7c1b6760 <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE+80>
   0x00007fea7c1b6771 <+97>:	movdqa %xmm0,%xmm1
   0x00007fea7c1b6775 <+101>:	psrldq $0x8,%xmm1
   0x00007fea7c1b677a <+106>:	paddd  %xmm1,%xmm0
   0x00007fea7c1b677e <+110>:	movdqa %xmm0,%xmm1
   0x00007fea7c1b6782 <+114>:	psrldq $0x4,%xmm1
   0x00007fea7c1b6787 <+119>:	paddd  %xmm1,%xmm0
   0x00007fea7c1b678b <+123>:	movd   %xmm0,%eax
   0x00007fea7c1b678f <+127>:	pxor   %xmm0,%xmm0
   0x00007fea7c1b6793 <+131>:	cvtsi2ss %rax,%xmm0
   0x00007fea7c1b6798 <+136>:	mulss  0x10fe8(%rip),%xmm0        # 0x7fea7c1c7788
   0x00007fea7c1b67a0 <+144>:	mov    %rax,%r12
   0x00007fea7c1b67a3 <+147>:	movzbl (%rdi),%eax
   0x00007fea7c1b67a6 <+150>:	shr    $0x2,%eax
   0x00007fea7c1b67a9 <+153>:	cvttss2si %xmm0,%rcx
   0x00007fea7c1b67ae <+158>:	je     0x7fea7c1b68d6 <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE+454>
   0x00007fea7c1b67b4 <+164>:	mov    %eax,%eax
   0x00007fea7c1b67b6 <+166>:	xor    %ebx,%ebx
   0x00007fea7c1b67b8 <+168>:	xor    %edx,%edx
   0x00007fea7c1b67ba <+170>:	jmp    0x7fea7c1b67cd <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE+189>
   0x00007fea7c1b67bc <+172>:	nopl   0x0(%rax)
   0x00007fea7c1b67c0 <+176>:	add    $0x1,%rbx
   0x00007fea7c1b67c4 <+180>:	cmp    %rbx,%rax
   0x00007fea7c1b67c7 <+183>:	je     0x7fea7c1b68d6 <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE+454>
   0x00007fea7c1b67cd <+189>:	add    (%r15,%rbx,4),%edx
   0x00007fea7c1b67d1 <+193>:	mov    %edx,%r13d
   0x00007fea7c1b67d4 <+196>:	cmp    %ecx,%edx
   0x00007fea7c1b67d6 <+198>:	jb     0x7fea7c1b67c0 <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE+176>
   0x00007fea7c1b67d8 <+200>:	lea    0x0(,%rbx,4),%eax
   0x00007fea7c1b67df <+207>:	movb   $0x1,0x1(%rdi)
   0x00007fea7c1b67e3 <+211>:	lea    -0x210(%rbp),%r14
   0x00007fea7c1b67ea <+218>:	mov    %al,(%rdi)
   0x00007fea7c1b67ec <+220>:	call   0x7fea7c1b2970 <_ZN9libcamera20logCategoryIPASoftBLEv@plt>
   0x00007fea7c1b67f1 <+225>:	xor    %edx,%edx
   0x00007fea7c1b67f3 <+227>:	mov    %r14,%rdi
   0x00007fea7c1b67f6 <+230>:	mov    $0x4f,%r8d
   0x00007fea7c1b67fc <+236>:	mov    %rax,%rsi
   0x00007fea7c1b67ff <+239>:	lea    0x1085a(%rip),%rcx        # 0x7fea7c1c7060
   0x00007fea7c1b6806 <+246>:	call   0x7fea7c1b2720 <_ZN9libcamera4_logEPKNS_11LogCategoryENS_11LogSeverityEPKcj@plt>
   0x00007fea7c1b680b <+251>:	mov    $0x16,%edx
   0x00007fea7c1b6810 <+256>:	lea    0x10a7c(%rip),%rsi        # 0x7fea7c1c7293
   0x00007fea7c1b6817 <+263>:	mov    %r14,%rdi
   0x00007fea7c1b681a <+266>:	call   0x7fea7c1b2810 <_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@plt>
   0x00007fea7c1b681f <+271>:	mov    %rbx,%rsi
   0x00007fea7c1b6822 <+274>:	mov    %r14,%rdi
   0x00007fea7c1b6825 <+277>:	call   0x7fea7c1b26d0 <_ZNSo9_M_insertImEERSoT_@plt>
   0x00007fea7c1b682a <+282>:	mov    %rax,%rdi
   0x00007fea7c1b682d <+285>:	mov    $0x1,%edx
   0x00007fea7c1b6832 <+290>:	lea    0x10a29(%rip),%rsi        # 0x7fea7c1c7262
   0x00007fea7c1b6839 <+297>:	mov    %rax,-0x218(%rbp)
   0x00007fea7c1b6840 <+304>:	call   0x7fea7c1b2810 <_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@plt>
   0x00007fea7c1b6845 <+309>:	mov    -0x218(%rbp),%rdi
   0x00007fea7c1b684c <+316>:	mov    $0x40,%esi
   0x00007fea7c1b6851 <+321>:	call   0x7fea7c1b26d0 <_ZNSo9_M_insertImEERSoT_@plt>
   0x00007fea7c1b6856 <+326>:	mov    %rax,%rdi
   0x00007fea7c1b6859 <+329>:	mov    $0x2,%edx
   0x00007fea7c1b685e <+334>:	lea    0x10a21(%rip),%rsi        # 0x7fea7c1c7286
   0x00007fea7c1b6865 <+341>:	mov    %rax,-0x218(%rbp)
   0x00007fea7c1b686c <+348>:	call   0x7fea7c1b2810 <_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@plt>
   0x00007fea7c1b6871 <+353>:	mov    %r13d,%eax
   0x00007fea7c1b6874 <+356>:	sub    (%r15,%rbx,4),%eax
   0x00007fea7c1b6878 <+360>:	xor    %edx,%edx
   0x00007fea7c1b687a <+362>:	mov    -0x218(%rbp),%rdi
   0x00007fea7c1b6881 <+369>:	imul   $0x64,%eax,%eax
=> 0x00007fea7c1b6884 <+372>:	div    %r12d
   0x00007fea7c1b6887 <+375>:	mov    %rax,%rsi
   0x00007fea7c1b688a <+378>:	call   0x7fea7c1b26d0 <_ZNSo9_M_insertImEERSoT_@plt>
   0x00007fea7c1b688f <+383>:	mov    $0x9,%edx
   0x00007fea7c1b6894 <+388>:	lea    0x10a0f(%rip),%rsi        # 0x7fea7c1c72aa
   0x00007fea7c1b689b <+395>:	mov    %rax,%rdi
   0x00007fea7c1b689e <+398>:	mov    %rax,%rbx
   0x00007fea7c1b68a1 <+401>:	call   0x7fea7c1b2810 <_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@plt>
   0x00007fea7c1b68a6 <+406>:	imul   $0x64,%r13d,%eax
   0x00007fea7c1b68aa <+410>:	xor    %edx,%edx
   0x00007fea7c1b68ac <+412>:	mov    %rbx,%rdi
   0x00007fea7c1b68af <+415>:	div    %r12d
   0x00007fea7c1b68b2 <+418>:	mov    %rax,%rsi
   0x00007fea7c1b68b5 <+421>:	call   0x7fea7c1b26d0 <_ZNSo9_M_insertImEERSoT_@plt>
   0x00007fea7c1b68ba <+426>:	mov    %rax,%rdi
   0x00007fea7c1b68bd <+429>:	mov    $0xe,%edx
   0x00007fea7c1b68c2 <+434>:	lea    0x109eb(%rip),%rsi        # 0x7fea7c1c72b4
   0x00007fea7c1b68c9 <+441>:	call   0x7fea7c1b2810 <_ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@plt>
   0x00007fea7c1b68ce <+446>:	mov    %r14,%rdi
   0x00007fea7c1b68d1 <+449>:	call   0x7fea7c1b25d0 <_ZN9libcamera10LogMessageD1Ev@plt>
   0x00007fea7c1b68d6 <+454>:	mov    -0x38(%rbp),%rax
   0x00007fea7c1b68da <+458>:	sub    %fs:0x28,%rax
   0x00007fea7c1b68e3 <+467>:	jne    0x7fea7c1b68f7 <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE+487>
   0x00007fea7c1b68e5 <+469>:	add    $0x1f8,%rsp
   0x00007fea7c1b68ec <+476>:	pop    %rbx
   0x00007fea7c1b68ed <+477>:	pop    %r12
   0x00007fea7c1b68ef <+479>:	pop    %r13
   0x00007fea7c1b68f1 <+481>:	pop    %r14
   0x00007fea7c1b68f3 <+483>:	pop    %r15
   0x00007fea7c1b68f5 <+485>:	pop    %rbp
   0x00007fea7c1b68f6 <+486>:	ret
   0x00007fea7c1b68f7 <+487>:	call   0x7fea7c1b27f0 <__stack_chk_fail@plt>
   0x00007fea7c1b68fc <+492>:	endbr64
   0x00007fea7c1b6900 <+496>:	mov    %rax,%rbx
   0x00007fea7c1b6903 <+499>:	jmp    0x7fea7c1b2c7a <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE.cold>
Address range 0x7fea7c1b2c7a to 0x7fea7c1b2c9e:
   0x00007fea7c1b2c7a <-14998>:	mov    %r14,%rdi
   0x00007fea7c1b2c7d <-14995>:	call   0x7fea7c1b25d0 <_ZN9libcamera10LogMessageD1Ev@plt>
   0x00007fea7c1b2c82 <-14990>:	mov    -0x38(%rbp),%rax
   0x00007fea7c1b2c86 <-14986>:	sub    %fs:0x28,%rax
   0x00007fea7c1b2c8f <-14977>:	jne    0x7fea7c1b2c99 <_ZN9libcamera10BlackLevel6updateERSt5arrayIjLm64EE-14967>
   0x00007fea7c1b2c91 <-14975>:	mov    %rbx,%rdi
   0x00007fea7c1b2c94 <-14972>:	call   0x7fea7c1b2930 <_Unwind_Resume@plt>
   0x00007fea7c1b2c99 <-14967>:	call   0x7fea7c1b27f0 <__stack_chk_fail@plt>
End of assembler dump.

Crash function: std::basic_ostream<char, std::char_traits<char> >::operator<<

Comment 16 kja999 2025-03-10 10:05:22 UTC
Hi, 
I just tried with the koji kernel.
Gum test on firefox worked, but the video was very zoomed and flickery.
Using Teams triggered the pipewire SIGFPE, logged as https://bugzilla.redhat.com/show_bug.cgi?id=2351057

Comment 17 kja999 2025-03-10 10:53:45 UTC
As per others have mentioned before, another reboot and different results.

Found the flickering is when "Internal Front Camera" is picked up, which I assume are the foss drivers?
When switching to "Intel MIPI Camera" (used Kamodo) webcam now working perfectly.

Comment 18 Tom Sobczynski 2025-04-25 12:07:59 UTC
Thanks much for advancing the support for the IPU6 cameras in the X1 Carbon Gen 12! Running Fedora 42 Workstation, I used the directions here: https://hansdegoede.dreamwidth.org/29477.html to enable rpmfusion and install the latest drivers before rebooting.

The linked Mozilla gUM test page reports “NotFoundError: The object can not be found here.”

“cam -l” doesn’t report any available cameras:
[0:42:20.102961777] [26883]  INFO Camera camera_manager.cpp:327 libcamera v0.4.0
[0:42:20.113997455] [26887]  INFO SimplePipeline simple.cpp:1581 No sensor found for /dev/media0
Available cameras:

The Camera app shows only a black window.

Here are portions of the dmesg output:

[    0.000000] Linux version 6.14.3-300.fc42.x86_64 (mockbuild@f38d0f39c8424fc98f6be30363aa5e29) (gcc (GCC) 15.0.1 20250329 (Red Hat 15.0.1-0), GNU ld version 2.44-3.fc42) #1 SMP PREEMPT_DYNAMIC Sun Apr 20 16:08:39 UTC 2025
[    0.000000] Command line: BOOT_IMAGE=(hd0,gpt6)/vmlinuz-6.14.3-300.fc42.x86_64 root=UUID=b675c9d1-595f-4d6e-ab20-7dad4bf3f8d6 ro rootflags=subvol=root rd.luks.uuid=luks-f5de89b4-2409-438e-89c9-9c3c7020265c rhgb quiet i915.force_probe=!7d45 xe.force_probe=7d45
…
[    0.000000] efi: EFI v2.7 by Lenovo
[    0.000000] efi: ACPI=0x4bafe000 ACPI 2.0=0x4bafe014 SMBIOS=0x4e207000 SMBIOS 3.0=0x4e1fa000 TPMFinalLog=0x4b998000 MEMATTR=0x78712018 ESRT=0x78724018 MOKvar=0x4e1f9000 RNG=0x4bafc018 TPMEventLog=0x4baed018 
[    0.000000] random: crng init done
[    0.000000] efi: Remove mem88: MMIO range=[0xc0000000-0xcfffffff] (256MB) from e820 map
[    0.000000] e820: remove [mem 0xc0000000-0xcfffffff] reserved
[    0.000000] secureboot: Secure boot enabled
[    0.000000] Kernel is locked down from EFI Secure Boot mode; see man kernel_lockdown.7
[    0.000000] SMBIOS 3.6.0 present.
[    0.000000] DMI: LENOVO 21KCS0EG00/21KCS0EG00, BIOS N3YET74W (1.39 ) 12/18/2024
[    0.000000] DMI: Memory slots populated: 8/8
…
[   11.236406] systemd-journald[1067]: Rotating system journal.
[   11.246806] videodev: Linux video capture interface: v2.00
[   11.258912] Loading of unsigned module is rejected
[   11.261438] Loading of unsigned module is rejected
[   11.468609] zram0: detected capacity change from 0 to 16777216
[   11.513616] Adding 8388604k swap on /dev/zram0.  Priority:100 extents:1 across:8388604k SSDsc
[   11.587713] resource: resource sanity check: requesting [mem 0x00000000fedc0000-0x00000000fedcffff], which spans more than pnp 00:05 [mem 0xfedc0000-0xfedc7fff]
[   11.587721] caller igen6_register_mci+0x59/0x240 [igen6_edac] mapping multiple BARs
[   11.589180] EDAC MC0: Giving out device to module igen6_edac controller Intel_client_SoC MC#0: DEV 0000:00:00.0 (INTERRUPT)
[   11.589210] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.589239] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.589257] EDAC MC1: Giving out device to module igen6_edac controller Intel_client_SoC MC#1: DEV 0000:00:00.0 (INTERRUPT)
[   11.589310] EDAC igen6: v2.5.1
[   11.590491] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.590497] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.590521] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.603377] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.603900] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.603924] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.604438] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.609886] ACPI: bus type thunderbolt registered
[   11.612117] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.612143] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.612769] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.649454] idma64 idma64.0: Found Intel integrated DMA 64-bit
[   11.650120] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.650153] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.650750] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.654919] input: Intel HID events as /devices/platform/INTC1070:00/input/input21
[   11.655712] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.655736] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.656245] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.661633] idma64 idma64.1: Found Intel integrated DMA 64-bit
[   11.662146] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.662171] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.663533] Loading of module with unavailable key is rejected
[   11.663675] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.673716] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.673742] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.674047] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.690081] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.690547] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.692343] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.693502] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.693579] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.694458] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.694993] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.695017] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.717092] intel-ipu6 0000:00:05.0: enabling device (0000 -> 0002)
[   11.743680] intel-ipu6 0000:00:05.0: Found supported sensor OVTI08F4:00
[   11.743713] intel-ipu6 0000:00:05.0: Connected 1 cameras
[   11.744788] intel-ipu6 0000:00:05.0: Sending BOOT_LOAD to CSE
[   11.758376] pci 0000:00:08.0: Setting to D3hot
[   11.769439] pci 0000:00:14.2: enabling device (0000 -> 0002)
[   11.769681] intel_pmc_core INT33A1:00: Assuming a default substate order for this platform
[   11.769775] intel_pmc_core INT33A1:00:  initialized
[   11.770156] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.770751] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.770776] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.771211] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.773756] input: PC Speaker as /devices/platform/pcspkr/input/input22
[   11.774195] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.774212] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.774977] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.778788] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.778801] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.779148] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.781398] intel-ipu6 0000:00:05.0: Sending AUTHENTICATE_RUN to CSE
[   11.817774] Loading of unsigned module is rejected
[   11.819967] Loading of unsigned module is rejected
[   11.832590] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.832607] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.833169] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.840559] Bluetooth: Core ver 2.22
[   11.840574] NET: Registered PF_BLUETOOTH protocol family
[   11.840575] Bluetooth: HCI device and connection manager initialized
[   11.840578] Bluetooth: HCI socket layer initialized
[   11.840580] Bluetooth: L2CAP socket layer initialized
[   11.840583] Bluetooth: SCO socket layer initialized
[   11.848423] intel-ipu6 0000:00:05.0: CSE authenticate_run done
[   11.848436] intel-ipu6 0000:00:05.0: IPU6-v4[7d19] hardware version 6
[   11.848897] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.848918] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.849241] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.860487] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[   11.860866] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[   11.860937] Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
[   11.865519] i801_smbus 0000:00:1f.4: SPD Write Disable is set
[   11.865576] i801_smbus 0000:00:1f.4: SMBus using PCI interrupt
[   11.871173] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.871204] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.871847] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.873477] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.873492] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.873840] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.880372] iTCO_vendor_support: vendor-support=0
[   11.933251] mei_gsc_proxy 0000:00:16.0-0f73db04-97ab-4125-b893-e904ad0d5464: bound 0000:00:02.0 (ops xe_gsc_proxy_component_ops [xe])
[   11.935407] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.935821] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.937654] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.943060] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.943371] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.945435] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.975885] thinkpad_acpi: ThinkPad ACPI Extras v0.26
[   11.975887] thinkpad_acpi: http://ibm-acpi.sf.net/
[   11.975887] thinkpad_acpi: ThinkPad BIOS N3YET74W (1.39 ), EC N3YHT52W
[   11.975888] thinkpad_acpi: Lenovo ThinkPad X1 Carbon Gen 12, model 21KCS0EG00
[   11.979022] thinkpad_acpi: radio switch found; radios are enabled
[   11.979101] thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver
[   11.979102] thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...
[   11.989504] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   11.989896] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   11.992910] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   11.993214] Intel(R) Wireless WiFi driver for Linux
…
[   20.584049] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   20.584095] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   20.584870] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   23.241632] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   23.241672] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   23.242369] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   23.244015] platform INT3472:0b: deferred probe pending: int3472-discrete: Failed to get GPIO
[   23.244019] platform INT3472:0c: deferred probe pending: int3472-discrete: Failed to get GPIO
[   36.649317] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   36.649349] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   36.649933] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring
[   36.734986] int3472-discrete INT3472:0b: GPIO type 0x12 unknown; the sensor may not work
[   36.735020] int3472-discrete INT3472:0b: cannot find GPIO chip INTC1007:00, deferring
[   36.735453] int3472-discrete INT3472:0c: cannot find GPIO chip INTC1007:00, deferring

Are there any additional diagnostic data I can provide that might be useful?

Comment 19 Matthias Nagel 2025-04-27 10:08:15 UTC
I tried to repeat the steps on Gentoo which @Hans described in comment #5. I applied the 10 patches from https://lore.kernel.org/linux-media/20241220144130.66765-1-hdegoede@redhat.com/ to the Gentoo kernel 6.13.12. Note, Gentoo uses a rather vanilla kernel. Surprisingly, the first patch had already been applied upstream. I also applied the two patches (https://github.com/intel/usbio-drivers/pull/33 and https://github.com/intel/usbio-drivers/pull/34) to the usbio driver (https://github.com/intel/usbio-drivers) and built the usbio drivers as an out-of-tree module with DKMS.

While a lot of errors vanished, I still get the same result as @Bill in comment #6. I believe the most interesting part is

ov08x40 i2c-OVTI08F4:00: supply dovdd not found, using dummy regulator
ov08x40 i2c-OVTI08F4:00: supply avdd not found, using dummy regulator
ov08x40 i2c-OVTI08F4:00: supply dvdd not found, using dummy regulator
ov08x40 i2c-OVTI08F4:00: chip id mismatch: 560858!=0

@Hans wrote in comment #9 that he prepared another (Fedora) Kernel for those who still experience "chip id mismatch: 560858!=0". @Hans, can you explain in more details what additional changes/patches need to be done for those how do not use a Fedora Kernel? What exactly have you changed additionally? As it seems, it worked for @Bill as he wrote in comment #11.

Comment 20 Hans de Goede 2025-04-28 08:58:09 UTC
(In reply to Matthias Nagel from comment #19)
> @Hans wrote in comment #9 that he prepared another (Fedora) Kernel for those
> who still experience "chip id mismatch: 560858!=0". @Hans, can you explain
> in more details what additional changes/patches need to be done for those
> how do not use a Fedora Kernel? What exactly have you changed additionally?
> As it seems, it worked for @Bill as he wrote in comment #11.

On top of the series from:
https://lore.kernel.org/linux-media/20241220144130.66765-1-hdegoede@redhat.com/

You need 3 more fixes which are on their way to the upstream / mainline
kernels, you need the last 3 (top 3 in the log) commits here:

https://git.linuxtv.org/sailus/media_tree.git/log/drivers/media/i2c/ov08x40.c?h=devel

Comment 21 Matthias Nagel 2025-05-25 12:15:01 UTC
I was finally able to grab a video with QCam (part of libcamera project) from my X1C 12th IPU6 camera. Yippee!

> You need 3 more fixes which are on their way to the upstream / mainline kernels, you need the last 3 (top 3 in the log) commits here:
>
> https://git.linuxtv.org/sailus/media_tree.git/log/drivers/media/i2c/ov08x40.c?h=devel

They did the trick and I did somehow miss to also patch my kernel with
https://lore.kernel.org/platform-driver-x86/20231007021309.9332-1-hao.yao@intel.com/ and
https://lore.kernel.org/platform-driver-x86/20231007021225.9240-1-hao.yao@intel.com/

so that GPIO pin 0x12 drives the camera.

However, "usbio" breaks hibernation to disk for me. If the kernel modules "usbio", "gpio_usbio" and "i2c_usbio" are loaded, the system freezes when the devices are suspended. I checked with

```
# echo devices > /sys/power/pm_test
# echo disk > /sys/power/state
```

as explained in https://docs.kernel.org/power/basic-pm-debugging.html. If "usbio", "gpio_usbio" and "i2c_usbio" are not loaded, then hibernation just works fine. (But of course no working IPU6 camera.) If "usbio", "gpio_usbio" and "i2c_usbio" are loaded, the kernel freezes when I execute the commands above.

One other note, just for completeness, but not relevant here:

Unfortunately, no user application but QCam is able to grab a video (on Gentoo). But this is neither a kernel nor library problem. I followed https://jgrulich.cz/tag/pipewire/ to create a Wireplumber configuration to hide the dozens of v4l2 dummy cameras from userland. Also "wpctl status" looks fine. But none of the (Gentoo) KDE applications, Firefox, Chrome or IM clients see any camera. I will now check with the Gentoo folks what might be missing.

Comment 22 kja999 2025-06-02 10:45:16 UTC
I have been using these fixes successfully (fedora kernel with the intel ipu6 akmod) until today with kernel 6.14.9-300.fc42.
Going back to 6.14.8-300.fc42 resolves it, so some regression?

Comment 23 Hans de Goede 2025-06-02 14:14:34 UTC
@kja999 6.14.9-300.fc42 works for me on my X1c gen12.

Possibly some other update (pipewire / firefox) broke things ?

First of all try accessing the camera without going through pipewire:

sudo dnf install libcamera-qcam
qcam

If qcam works you likely have a pipewire / portal / firefox problem. Sometimes rebooting will clear this up.

If qcam does not work, sometimes (rarely) the camera sensor gets stuck in a state where even rebooting does not help. Try powering off the laptop, wait 15 seconds and then powering it back on again and then see if qcam works.

Comment 24 Alper Kanat 2025-06-11 09:54:17 UTC
I installed the drivers with the following commands on bluefin (Fedora Silverblue variant):

```
dnf -y install \
    https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-"${RELEASE}".noarch.rpm \
    https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-"${RELEASE}".noarch.rpm

dnf -y install \
    akmod-intel-ipu6 \
    libcamera-qcam

akmods --force --kernels "${KERNEL}" --kmod intel-ipu6

```

I see that modules are loaded:

```
❯ lsmod|grep ipu
intel_ipu6_isys       155648  0
videobuf2_dma_sg       24576  1 intel_ipu6_isys
videobuf2_v4l2         40960  2 intel_ipu6_isys,uvcvideo
videobuf2_common      102400  6 videobuf2_vmalloc,videobuf2_v4l2,intel_ipu6_isys,uvcvideo,videobuf2_dma_sg,videobuf2_memops
intel_ipu6             94208  1 intel_ipu6_isys
ipu_bridge             24576  2 intel_ipu6,intel_ipu6_isys
v4l2_fwnode            40960  2 intel_ipu6_isys,ov08x40
v4l2_async             32768  3 v4l2_fwnode,intel_ipu6_isys,ov08x40
videodev              421888  7 v4l2_async,v4l2_fwnode,videobuf2_v4l2,v4l2loopback,intel_ipu6_isys,uvcvideo,ov08x40
mc                     94208  8 v4l2_async,videodev,snd_usb_audio,videobuf2_v4l2,intel_ipu6_isys,uvcvideo,videobuf2_common,ov08x40
```

I tried with various different applications but unfortunetely none of them has identified the camera on the laptop.

Comment 25 Alper Kanat 2025-06-11 09:57:19 UTC
(In reply to Alper Kanat from comment #24)
> I installed the drivers with the following commands on bluefin (Fedora
> Silverblue variant):
> 
> ```
> dnf -y install \
>    
> https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-
> "${RELEASE}".noarch.rpm \
>    
> https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-
> "${RELEASE}".noarch.rpm
> 
> dnf -y install \
>     akmod-intel-ipu6 \
>     libcamera-qcam
> 
> akmods --force --kernels "${KERNEL}" --kmod intel-ipu6
> 
> ```
> 
> I see that modules are loaded:
> 
> ```
> ❯ lsmod|grep ipu
> intel_ipu6_isys       155648  0
> videobuf2_dma_sg       24576  1 intel_ipu6_isys
> videobuf2_v4l2         40960  2 intel_ipu6_isys,uvcvideo
> videobuf2_common      102400  6
> videobuf2_vmalloc,videobuf2_v4l2,intel_ipu6_isys,uvcvideo,videobuf2_dma_sg,
> videobuf2_memops
> intel_ipu6             94208  1 intel_ipu6_isys
> ipu_bridge             24576  2 intel_ipu6,intel_ipu6_isys
> v4l2_fwnode            40960  2 intel_ipu6_isys,ov08x40
> v4l2_async             32768  3 v4l2_fwnode,intel_ipu6_isys,ov08x40
> videodev              421888  7
> v4l2_async,v4l2_fwnode,videobuf2_v4l2,v4l2loopback,intel_ipu6_isys,uvcvideo,
> ov08x40
> mc                     94208  8
> v4l2_async,videodev,snd_usb_audio,videobuf2_v4l2,intel_ipu6_isys,uvcvideo,
> videobuf2_common,ov08x40
> ```
> 
> I tried with various different applications but unfortunetely none of them
> has identified the camera on the laptop.

I'm on kernel 6.14.5-300.fc42.x86_64


Note You need to log in before you can comment on or make changes to this bug.