You are not logged in.

#1 2021-03-09 00:18:00

riveravaldez
Member
Registered: 2016-11-18
Posts: 27

[SOLVED] Dell XPS 15 L502X (Sandy Bridge) webcam gets randomly blocked

Hi, I'm having kind of a random webcam unavailability on a Dell XPS L502X (Sandy Bridge) with webcam:

$ lsusb
Bus 001 Device 003: ID 0408:2fb1 Quanta Computer, Inc.
Laptop_Integrated_Webcam_2HDM

I already checked [1] but couldn't find no hint in how to diagnose this.

Sometimes webcam works fine. There's sort of a permanent static-noise with MJPG format in qv4l2 no matter which frame size I use (sometimes it even crashes), and with guvcview using MJPG makes the image unstable if I activate the 'mirror' filter; rest of the time I get a lot of:

V4L2_CORE: Error - Couldn't decode frame
V4L2_CORE: (jpeg decoder) error while decoding frame
V4L2_CORE: (jpeg decoder) error while decoding frame
V4L2_CORE: (jpeg decoder) Ignoring empty buffer

But using YUYV in guvcview, thou slower, the video seems OK (in qv4l2 it starts with a green screen and then the proper image appears).
In the other hand, when the webcam doesn't responds, YUYV in qv4l2 only shows the green screen.

The hardware lights indicate that webcam is being activated, but I have no image.

When webcam is not working, qv4l2 only says:

Hue error: connection time expired

, I don't see any other console output.

With xawtv I get:

$ xawtv
This is xawtv-3.107, running on Linux/x86_64 (5.11.2-arch1-1)
xinerama 0: 1366x768+0+0
vid-open-auto: using grabber/webcam device /dev/video0
v4l2: oops: select timeout

And with guvcview (YUYV) I have:

$ guvcview
GUVCVIEW: version 2.0.6
V4L2_CORE: (UVCIOC_CTRL_MAP) Error: The file or directory does not exist
...
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:877:(find_matching_chmap) Found no matching channel map
...
connect(2) call to /dev/shm/jack-1000/default/jack_0 failed (err=The
file or directory does not exist)
attempt to connect to server failed
...
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
...
ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
...
V4L2_CORE: Could not grab image (select timeout): Resource temporarily
unavailable
...

The only related message I found on `sudo dmesg` says:

[33511.458233] uvcvideo: Failed to query (GET_CUR) UVC control 6 on unit 2: -110 (exp. 2).

`sudo journalctl -ex` doesn't seems to show nothing about.

System is updated.

Any idea on how to pinpoint/diagnose the source of this issue?

Thanks a lot in advance!

[1] https://wiki.archlinux.org/index.php/Webcam_setup

Last edited by riveravaldez (2021-03-21 20:06:30)

Offline

#2 2021-03-09 05:23:38

riveravaldez
Member
Registered: 2016-11-18
Posts: 27

Re: [SOLVED] Dell XPS 15 L502X (Sandy Bridge) webcam gets randomly blocked

I have just tried qv4l2 activating the RAW button and starting capture, with the result of a crash:

$ qv4l2 
Segmentation fault (`core' dumped)
$ sudo dmesg
[101338.207216] qv4l2[33686]: segfault at 7f189c1eb000 ip 00007f189f50558f sp 00007ffdf967ff50 error 4 in i965_dri.so[7f189f2f5000+8fa000]
$ sudo journalctl -ex
mar 09 01:45:14 arch systemd[1]: Started Process Core Dump (PID 33740/UID 0).
░░ Subject: A start job for unit systemd-coredump@1-33740-0.service has finished successfully
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ A start job for unit systemd-coredump@1-33740-0.service has finished successfully.
░░ 
░░ The job identifier is 4281.
mar 09 01:45:14 arch kernel: audit: type=1334 audit(1615265114.667:373): prog-id=40 op=LOAD
mar 09 01:45:14 arch kernel: audit: type=1334 audit(1615265114.667:374): prog-id=41 op=LOAD
mar 09 01:45:14 arch kernel: audit: type=1130 audit(1615265114.667:375): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@1-33740-0 comm="system>
mar 09 01:45:14 arch audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@1-33740-0 comm="systemd" exe="/usr/lib/systemd/sys>
mar 09 01:45:16 arch systemd-coredump[33741]: Process 33686 (qv4l2) of user 1000 dumped core.
                                              
                                              Stack trace of thread 33686:
                                              #0  0x00007f189f50558f n/a (i965_dri.so + 0x2f258f)
                                              #1  0x00007f189f4ecdb7 n/a (i965_dri.so + 0x2d9db7)
                                              #2  0x00007f189f5b0d28 n/a (i965_dri.so + 0x39dd28)
                                              #3  0x00007f189f5b15ec n/a (i965_dri.so + 0x39e5ec)
                                              #4  0x00007f189f5921b7 n/a (i965_dri.so + 0x37f1b7)
                                              #5  0x00007f189f592d4c n/a (i965_dri.so + 0x37fd4c)
                                              #6  0x00007f189f592e35 n/a (i965_dri.so + 0x37fe35)
                                              #7  0x000055ad1c3fc4b1 n/a (qv4l2 + 0x574b1)
                                              #8  0x000055ad1c3ffb99 n/a (qv4l2 + 0x5ab99)
                                              #9  0x00007f18ab64b6c5 _ZN9QGLWidget6glDrawEv (libQt5OpenGL.so.5 + 0x236c5)
                                              #10 0x000055ad1c3fa6b5 n/a (qv4l2 + 0x556b5)
                                              #11 0x000055ad1c3ced89 n/a (qv4l2 + 0x29d89)
                                              #12 0x00007f18aa65ddc0 n/a (libQt5Core.so.5 + 0x2ecdc0)
                                              #13 0x00007f18aa661365 _ZN15QSocketNotifier9activatedEiNS_14QPrivateSignalE (libQt5Core.so.5 + 0x2f0365)
                                              #14 0x00007f18aa661b18 _ZN15QSocketNotifier5eventEP6QEvent (libQt5Core.so.5 + 0x2f0b18)
                                              #15 0x00007f18ab0ee752 _ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent (libQt5Widgets.so.5 + 0x15a752)
                                              #16 0x00007f18aa626a2a _ZN16QCoreApplication15notifyInternal2EP7QObjectP6QEvent (libQt5Core.so.5 + 0x2b5a2a)
                                              #17 0x00007f18aa6802a6 n/a (libQt5Core.so.5 + 0x30f2a6)
                                              #18 0x00007f18a92ebb84 g_main_context_dispatch (libglib-2.0.so.0 + 0x53b84)
                                              #19 0x00007f18a933fc21 n/a (libglib-2.0.so.0 + 0xa7c21)
                                              #20 0x00007f18a92ea3b1 g_main_context_iteration (libglib-2.0.so.0 + 0x523b1)
                                              #21 0x00007f18aa67f691 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.>
                                              #22 0x00007f18aa6253ac _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5 + 0x2b43ac)
                                              #23 0x00007f18aa62d844 _ZN16QCoreApplication4execEv (libQt5Core.so.5 + 0x2bc844)
                                              #24 0x000055ad1c3c3f84 n/a (qv4l2 + 0x1ef84)
                                              #25 0x00007f18a9c7ab25 __libc_start_main (libc.so.6 + 0x27b25)
                                              #26 0x000055ad1c3c43ee n/a (qv4l2 + 0x1f3ee)
                                              
                                              Stack trace of thread 33690:
                                              #0  0x00007f18a9e379ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                              #1  0x00007f18a9e31260 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf260)
                                              #2  0x00007f189f76a62c n/a (i965_dri.so + 0x55762c)
                                              #3  0x00007f189f769eb8 n/a (i965_dri.so + 0x556eb8)
                                              #4  0x00007f18a9e2b299 start_thread (libpthread.so.0 + 0x9299)
                                              #5  0x00007f18a9d52053 __clone (libc.so.6 + 0xff053)
                                              
                                              Stack trace of thread 33691:
                                              #0  0x00007f18a9e379ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                              #1  0x00007f18a9e31260 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf260)
                                              #2  0x00007f189f76a62c n/a (i965_dri.so + 0x55762c)
                                              #3  0x00007f189f769eb8 n/a (i965_dri.so + 0x556eb8)
                                              #4  0x00007f18a9e2b299 start_thread (libpthread.so.0 + 0x9299)
                                              #5  0x00007f18a9d52053 __clone (libc.so.6 + 0xff053)
                                              
                                              Stack trace of thread 33688:
                                              #0  0x00007f18a9d4737f __poll (libc.so.6 + 0xf437f)
                                              #1  0x00007f18a933fbaf n/a (libglib-2.0.so.0 + 0xa7baf)
                                              #2  0x00007f18a92ea3b1 g_main_context_iteration (libglib-2.0.so.0 + 0x523b1)
                                              #3  0x00007f18aa67f691 _ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE (libQt5Core.>
                                              #4  0x00007f18aa6253ac _ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE (libQt5Core.so.5 + 0x2b43ac)
                                              #5  0x00007f18aa43dd12 _ZN7QThread4execEv (libQt5Core.so.5 + 0xccd12)
                                              #6  0x00007f18a69c4098 n/a (libQt5DBus.so.5 + 0x17098)
                                              #7  0x00007f18aa43eeff n/a (libQt5Core.so.5 + 0xcdeff)
                                              #8  0x00007f18a9e2b299 start_thread (libpthread.so.0 + 0x9299)
                                              #9  0x00007f18a9d52053 __clone (libc.so.6 + 0xff053)
                                              
                                              Stack trace of thread 33689:
                                              #0  0x00007f18a9e379ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                              #1  0x00007f18a9e31260 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf260)
                                              #2  0x00007f189f76a62c n/a (i965_dri.so + 0x55762c)
                                              #3  0x00007f189f769eb8 n/a (i965_dri.so + 0x556eb8)
                                              #4  0x00007f18a9e2b299 start_thread (libpthread.so.0 + 0x9299)
                                              #5  0x00007f18a9d52053 __clone (libc.so.6 + 0xff053)
                                              
                                              Stack trace of thread 33692:
                                              #0  0x00007f18a9e379ba __futex_abstimed_wait_common64 (libpthread.so.0 + 0x159ba)
                                              #1  0x00007f18a9e31260 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf260)
                                              #2  0x00007f189f76a62c n/a (i965_dri.so + 0x55762c)
                                              #3  0x00007f189f769eb8 n/a (i965_dri.so + 0x556eb8)
                                              #4  0x00007f18a9e2b299 start_thread (libpthread.so.0 + 0x9299)
                                              #5  0x00007f18a9d52053 __clone (libc.so.6 + 0xff053)
                                              
                                              Stack trace of thread 33687:
                                              #0  0x00007f18a9d4737f __poll (libc.so.6 + 0xf437f)
                                              #1  0x00007f18a715963b n/a (libxcb.so.1 + 0xc63b)
                                              #2  0x00007f18a715b37b xcb_wait_for_event (libxcb.so.1 + 0xe37b)
                                              #3  0x00007f18a6adc131 n/a (libQt5XcbQpa.so.5 + 0x5e131)
                                              #4  0x00007f18aa43eeff n/a (libQt5Core.so.5 + 0xcdeff)
                                              #5  0x00007f18a9e2b299 start_thread (libpthread.so.0 + 0x9299)
                                              #6  0x00007f18a9d52053 __clone (libc.so.6 + 0xff053)
░░ Subject: Process 33686 (qv4l2) dumped core
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ Documentation: man:core(5)
░░ 
░░ Process 33686 (qv4l2) crashed and dumped core.
░░ 
░░ This usually indicates a programming error in the crashing program and
░░ should be reported to its vendor as a bug.
mar 09 01:45:16 arch systemd[1]: systemd-coredump@1-33740-0.service: Succeeded.
░░ Subject: Unit succeeded
░░ Defined-By: systemd
░░ Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
░░ 
░░ The unit systemd-coredump@1-33740-0.service has successfully entered the 'dead' state.

I'm adding this just in case has some useful/relevant information.

AFAIK, I'm using the Intel GPU:

$ pacman -Ss xf86-video | grep inst
extra/xf86-video-intel 1:2.99.917+916+g31486f40-1 (xorg-drivers) [installed]

Now, if I activate the 'Trace IOCTLs' option, I get this when capturing:

$ qv4l2 
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_G_SELECTION returned -1 (Argumento inválido)
		VIDIOC_SUBSCRIBE_EVENT returned -1 (Argumento inválido)
		VIDIOC_ENUMINPUT returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMESIZES returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMESIZES returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_G_SELECTION returned -1 (Argumento inválido)
		VIDIOC_SUBSCRIBE_EVENT returned -1 (Argumento inválido)
		VIDIOC_ENUMINPUT returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMESIZES returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMESIZES returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_ENUM_FRAMEINTERVALS returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_G_SELECTION returned -1 (Argumento inválido)
		VIDIOC_SUBSCRIBE_EVENT returned -1 (Argumento inválido)
		VIDIOC_ENUMINPUT returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)
		VIDIOC_QUERYMENU returned -1 (Argumento inválido)

Thanks for any advice!

Last edited by riveravaldez (2021-03-09 05:36:48)

Offline

#3 2021-03-21 19:06:03

riveravaldez
Member
Registered: 2016-11-18
Posts: 27

Re: [SOLVED] Dell XPS 15 L502X (Sandy Bridge) webcam gets randomly blocked

Quick temporal solution (kindly provided by Björn Seifert at [0]): briefly shine an intense light (mobile phones flashlights will do) to the webcam at the moment of need (when it's trying to start but shows nothing or says it's blocked/unavailable/etc.).
If anyone can add any fix, details or possible explanations they will be most welcomed.

[0] https://lists.archlinux.org/pipermail/a … 48704.html

Last edited by riveravaldez (2021-03-21 20:17:59)

Offline

Board footer

Powered by FluxBB