Bug: thunderbird-115.10 freezes on exit
Status: RESOLVED
Priority: --
Resolution: DUPLICATE
Created: 2024-04-18 06:20:42+00:00
Resolved: 2024-04-18 07:54:23+00:00

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0

Steps to reproduce:

1. Run thunderbird 115.10 under Linux with X11
2. Close thunderbird

When sending signal to thunderbird:
killall thunderbird
it exits

My extensions: CalDAV CardDAV, TbSync, Remove Duplicate Messages.
Disabling extensions doesnt help.


Thunderbird setup:


Actual results:

Window freezes
Thunderbird doesnt exit



Expected results:

Thunderbird should exit
Version 115.9 works as expected (exits properly)
strace -p [thunderbird pid] listing:
# strace -p 3982
strace: Process 3982 attached
futex(0x7f61cd248c40, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY

strace -f -p 3982 outputs:
# strace -f -p 3982
strace: Process 3982 attached with 77 threads
[pid 12977] futex(0x7f619d163e78, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid 12976] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid 12975] futex(0x7f6196ed7ef0, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid 12486] futex(0x7f619c76ebbc, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4407] futex(0x7f619cad384c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4396] futex(0x7f619d49b2f0, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4394] futex(0x7f619ef339ac, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4376] futex(0x7f619d3861d0, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4375] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4322] futex(0x7f6196ed3bb8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4265] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4222] futex(0x7f61a797d278, FUTEX_WAIT_BITSET_PRIVATE, 4294967295, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4221] futex(0x7f61a797d4b8, FUTEX_WAIT_BITSET_PRIVATE, 4294967295, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4220] futex(0x7f61a797d5a8, FUTEX_WAIT_BITSET_PRIVATE, 4294967295, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4219] futex(0x7f619e4c3140, FUTEX_WAIT_BITSET_PRIVATE, 2, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4201] futex(0x7f619c2a8588, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4200] futex(0x7f619c2a8e7c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4199] futex(0x7f619d127dc8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4198] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4197] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4152] epoll_wait(104,  <unfinished ...>
[pid  4151] epoll_wait(102,  <unfinished ...>
[pid  4150] epoll_wait(95,  <unfinished ...>
[pid  4139] futex(0x7f619fcf9638, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4138] futex(0x7f619fcf96e8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4134] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4133] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4132] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4131] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4130] futex(0x7f61a971c42c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4121] futex(0x7f61a9cbc728, FUTEX_WAIT_BITSET_PRIVATE, 4294967295, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4120] futex(0x7f61a9cbc8d8, FUTEX_WAIT_BITSET_PRIVATE, 4294967295, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4119] futex(0x7f61a9cbca28, FUTEX_WAIT_BITSET_PRIVATE, 4294967295, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4118] futex(0x7f61b49f9410, FUTEX_WAIT_BITSET_PRIVATE, 3304, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4117] futex(0x7f61a9cabbb8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4083] futex(0x7f61ac57fd18, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4082] futex(0x7f61abee0fdc, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4071] futex(0x7f61ade8c378, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4070] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4061] futex(0x7f61af1b6688, FUTEX_WAIT_BITSET_PRIVATE, 211, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4060] futex(0x7f61af1b6608, FUTEX_WAIT_BITSET_PRIVATE, 204, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4059] futex(0x7f61af1b6588, FUTEX_WAIT_BITSET_PRIVATE, 132, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4051] futex(0x7f61b5b21e78, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4048] futex(0x7f61b5b0f9a8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4047] futex(0x7f61b5b0f16c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4046] futex(0x7f61cd265188, FUTEX_WAIT_BITSET_PRIVATE, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4045] futex(0x7f61cd265108, FUTEX_WAIT_BITSET_PRIVATE, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4044] futex(0x7f61cd265088, FUTEX_WAIT_BITSET_PRIVATE, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4043] futex(0x7f61cd265008, FUTEX_WAIT_BITSET_PRIVATE, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4042] futex(0x7f61b8213388, FUTEX_WAIT_BITSET_PRIVATE, 21, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4041] futex(0x7f61b8213308, FUTEX_WAIT_BITSET_PRIVATE, 87, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4040] futex(0x7f61b8213288, FUTEX_WAIT_BITSET_PRIVATE, 84, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4039] futex(0x7f61b8213208, FUTEX_WAIT_BITSET_PRIVATE, 52, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4038] futex(0x7f61b5b0fdc8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4037] futex(0x7f61b5b0f848, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4036] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4034] futex(0x7f61b7ace350, FUTEX_WAIT_PRIVATE, 1, NULL <unfinished ...>
[pid  4033] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4032] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4031] futex(0x7f61b7865610, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid  4030] futex(0x7f61b84f2428, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4028] futex(0x7f61b84f26e8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4027] futex(0x7f61cd26349c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4026] futex(0x7f61cd26349c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4025] futex(0x7f61cd263498, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4024] futex(0x7f61cd263498, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4004] futex(0x7f61bd792a58, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4003] futex(0x7f61cd22919c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4002] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  4000] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  3998] futex(0x7f61c0f658f8, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  3996] futex(0x7f61c0f65a5c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  3995] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  3994] restart_syscall(<... resuming interrupted read ...> <unfinished ...>
[pid  3993] epoll_wait(9,  <unfinished ...>
[pid  3991] futex(0x7f61c0f64e78, FUTEX_WAIT_BITSET_PRIVATE, 4294967295, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  3982] futex(0x7f61cd248c40, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, NULL, FUTEX_BITSET_MATCH_ANY <unfinished ...>
[pid  4036] <... restart_syscall resumed>) = -1 ETIMEDOUT (Przekroczony czas oczekiwania na połączenie)
[pid  4036] futex(0x7f61b48feb50, FUTEX_WAKE_PRIVATE, 1) = 0
[pid  4036] futex(0x7f61b5b0f16c, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid  4047] <... futex resumed>)        = 0
[pid  4036] <... futex resumed>)        = 1
[pid  4047] futex(0x7f61b5b0f110, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
[pid  4036] futex(0x7f61b5b0f110, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid  4047] <... futex resumed>)        = -1 EAGAIN (Zasoby chwilowo niedostępne)
[pid  4036] <... futex resumed>)        = 0
[pid  4047] futex(0x7f61b5b0f110, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
[pid  4036] futex(0x7f61b48feba0, FUTEX_WAIT_BITSET_PRIVATE, 0, {tv_sec=5656, tv_nsec=137653742}, FUTEX_BITSET_MATCH_ANY <unfinished ...>
(...)