Project

General

Profile

Bug #10215

Darktable lockup in a futex after a failed connetion to facebook account

Added by Carlos Maiolino about 5 years ago. Updated about 5 years ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
-
Target version:
-
Start date:
12/04/2014
Due date:
% Done:

0%

Estimated time:
Affected Version:
1.4.2
System:
Fedora/RHEL
bitness:
64-bit
hardware architecture:
amd64/x86

Description

I've been using darktable to upload pictures to my facebook account, and dartable locked up during the process.

I started darktable in debug mode and looks like it got stuck in a infinite look trying to acquire a futex lock after a connection problem to facebook:

From the debug console, started with:

#darktable -d all

Darktable locked up right after this message appeared:

  • (darktable:3851): CRITICAL **: fb_query_get: assertion 'ctx->token != NULL' failed

strace'ing the darktable process, I can see this:

#sudo strace -s255 -f -p 3851

------------------------------------------------------------------------
[pid 3863] nanosleep({2, 0}, <unfinished ...>
[pid 3862] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214161, NULL <unfinished ...>
[pid 3861] <... futex resumed> ) = 0
[pid 3860] <... futex resumed> ) = 0
[pid 3861] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3860] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3861] <... futex resumed> ) = 1
[pid 3861] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214162, NULL <unfinished ...>
[pid 3860] <... futex resumed> ) = 1
[pid 3860] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214163, NULL <unfinished ...>
[pid 3859] <... futex resumed> ) = 0
[pid 3857] <... futex resumed> ) = 0
[pid 3859] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3857] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3859] <... futex resumed> ) = 1
[pid 3857] <... futex resumed> ) = 1
[pid 3859] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214164, NULL) = 1 EAGAIN (Resource temporarily unavailable)
[pid 3859] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214165, NULL <unfinished ...>
[pid 3857] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214165, NULL <unfinished ...>
[pid 3856] <... futex resumed> ) = 0
[pid 3856] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1) = 0
[pid 3856] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214166, NULL <unfinished ...>
[pid 3855] <... futex resumed> ) = 0
[pid 3855] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1) = 0
[pid 3855] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214167, NULL <unfinished ...>
[pid 3863] <... nanosleep resumed> 0x7fadddffa960) = 0
[pid 3863] futex(0x1ed61a4, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x1ed6150, 214182 <unfinished ...>
[pid 3870] <... futex resumed> ) = 0
[pid 3870] futex(0x1ed6150, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid 3863] <... futex resumed> ) = 15
[pid 3863] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3871] <... futex resumed> ) = 0
[pid 3863] <... futex resumed> ) = 1
[pid 3871] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3863] rt_sigprocmask(SIG_BLOCK, [CHLD], <unfinished ...>
[pid 3871] <... futex resumed> ) = 1
[pid 3869] <... futex resumed> ) = 0
[pid 3871] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214183, NULL <unfinished ...>
[pid 3869] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3863] <... rt_sigprocmask resumed> [], 8) = 0
[pid 3869] <... futex resumed> ) = 1
[pid 3868] <... futex resumed> ) = 0
[pid 3869] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214184, NULL <unfinished ...>
[pid 3868] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3863] rt_sigaction(SIGCHLD, NULL, <unfinished ...>
[pid 3868] <... futex resumed> ) = 1
[pid 3868] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214185, NULL <unfinished ...>
[pid 3867] <... futex resumed> ) = 0
[pid 3863] <... rt_sigaction resumed> {SIG_DFL, [], 0}, 8) = 0
[pid 3867] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3863] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 3867] <... futex resumed> ) = 1
[pid 3866] <... futex resumed> ) = 0
[pid 3867] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214186, NULL <unfinished ...>
[pid 3866] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1) = 1
[pid 3866] futex(0x1ed61a4, FUTEX_WAIT_PRIVATE, 214187, NULL <unfinished ...>
[pid 3865] <... futex resumed> ) = 0
[pid 3863] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 3865] futex(0x1ed6150, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid 3863] nanosleep({2, 0}, <unfinished ...>
[pid 3865] <... futex resumed> ) = 1
-----------------------------------------------------------------------

These same calls loops infinitely.

Let me know if you guys needs more information

$ darktable --version
this is darktable 1.4.2
copyright (c) 2009-2014 johannes hanika

History

#1 Updated by Carlos Maiolino about 5 years ago

I started darktable in debug mode and looks like it got stuck in a infinite look trying to acquire a futex lock after a connection problem to facebook:

Infinite Loop, sorry the typo :)

Also available in: Atom PDF

Go to top