[SRU] tracker-extract-3 crashed with signal 31 in __GI_epoll_create1()

Bug #1990630 reported by lianergoist
144
This bug affects 19 people
Affects Status Importance Assigned to Milestone
Tracker
Fix Released
Unknown
tracker-miners (Ubuntu)
Fix Released
High
Unassigned
Jammy
Fix Released
Undecided
Talha Can Havadar

Bug Description

[Impact]

Bug is impacting jammy desktop instances that uses tracker-miners package by default. It keeps restarting the service and this makes the CPU busy.

[Where problems could occur]

epoll_create1() is the preferred call over epoll_create(), and is used in GLib 2.74 and later due to glib!2868 (merged) so the error described below occurs pretty commonly

[Test Case]

* Enable proposed updates (https://wiki.ubuntu.com/Testing/EnableProposed)
* Update tracker-extract to the version in -proposed: sudo apt install -t jammy-proposed tracker-extract
* Check journalctl logs to see if `Disallowed syscall "epoll_create1" caught in sandbox` message disappeared and the service is not restarting due to this error.

[Regression Potential]

The patch doesn't modifies an existing behavior it only allows an additional syscall, so it shouldn't introduce regression

------------------------------------
Upstream MR: https://gitlab.gnome.org/GNOME/tracker-miners/-/merge_requests/419

-------------------------------------------------------------------------------
Impact
------
As seen by the number of duplicates, this is the most common tracker crash seen in Ubuntu 22.10.

According to seeded-in-ubuntu, tracker-miners is included by default only in the Ubuntu Desktop flavor

error after upgrade from 22.04 to 22.10

https://errors.ubuntu.com/problem/4f257ae91411857c6bb9266de343d7f189a68474

ProblemType: Crash
DistroRelease: Ubuntu 22.10
Package: tracker-extract 3.4.0-1
ProcVersionSignature: Ubuntu 5.19.0-15.15-generic 5.19.0
Uname: Linux 5.19.0-15-generic x86_64
ApportVersion: 2.23.0-0ubuntu2
Architecture: amd64
CasperMD5CheckResult: unknown
Date: Fri Sep 23 09:31:40 2022
ExecutablePath: /usr/libexec/tracker-extract-3
InstallationDate: Installed on 2022-05-11 (134 days ago)
InstallationMedia: Ubuntu 20.04.4 LTS "Focal Fossa" - Release amd64 (20220223)
ProcCmdline: /usr/libexec/tracker-extract-3
Signal: 31
SourcePackage: tracker-miners
StacktraceTop:
 __GI_epoll_create1 () at ../sysdeps/unix/syscall-template.S:120
 ?? () from /lib/x86_64-linux-gnu/libgio-2.0.so.0
 ?? () from /lib/x86_64-linux-gnu/libgio-2.0.so.0
 ?? () from /lib/x86_64-linux-gnu/libgobject-2.0.so.0
 ?? () from /lib/x86_64-linux-gnu/libgobject-2.0.so.0
Title: tracker-extract-3 crashed with signal 31 in __GI_epoll_create1()
UpgradeStatus: Upgraded to kinetic on 2022-09-23 (0 days ago)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo
separator:

Revision history for this message
lianergoist (tj001) wrote :
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 __GI_epoll_create1 () at ../sysdeps/unix/syscall-template.S:120
 _g_fd_is_pollable (fd=13) at ../../../gio/giounix-private.c:85
 g_unix_input_stream_set_property (object=0x7f68c4002600, prop_id=<optimized out>, value=0x7f68dfffde80, pspec=0x5569ff51b860) at ../../../gio/gunixinputstream.c:189
 object_set_property (object=object@entry=0x7f68c4002600, pspec=0x5569ff51b860, value=0x7f68dfffde80, nqueue=nqueue@entry=0x0) at ../../../gobject/gobject.c:1792
 g_object_new_internal (class=class@entry=0x5569ff52dca0, params=params@entry=0x7f68dfffdd80, n_params=n_params@entry=2) at ../../../gobject/gobject.c:2269

tags: removed: need-amd64-retrace
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in tracker-miners (Ubuntu):
status: New → Confirmed
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 __GI_epoll_create1 () at ../sysdeps/unix/syscall-template.S:120
 _g_fd_is_pollable (fd=13) at ../../../gio/giounix-private.c:85
 g_unix_input_stream_set_property (object=0x7f68c4002600, prop_id=<optimized out>, value=0x7f68dfffde80, pspec=0x5569ff51b860) at ../../../gio/gunixinputstream.c:189
 object_set_property (object=object@entry=0x7f68c4002600, pspec=0x5569ff51b860, value=0x7f68dfffde80, nqueue=nqueue@entry=0x0) at ../../../gobject/gobject.c:1792
 g_object_new_internal (class=class@entry=0x5569ff52dca0, params=params@entry=0x7f68dfffdd80, n_params=n_params@entry=2) at ../../../gobject/gobject.c:2269

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : StacktraceSource.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in tracker-miners (Ubuntu):
importance: Undecided → Medium
tags: added: rls-kk-incoming
tags: added: bugpattern-needed
Changed in tracker-miners (Ubuntu):
importance: Medium → High
description: updated
information type: Private → Public
Changed in tracker-miners (Ubuntu):
status: Confirmed → Triaged
Changed in tracker:
status: Unknown → New
Jeremy Bícha (jbicha)
Changed in tracker-miners (Ubuntu):
status: Triaged → In Progress
description: updated
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote : Re: tracker-extract-3 crashed with signal 31 in __GI_epoll_create1()

This bug was fixed in the package tracker-miners - 3.4.0-1ubuntu1

---------------
tracker-miners (3.4.0-1ubuntu1) kinetic; urgency=medium

  * Cherry-pick patch to add epoll_create1 to the sandbox whitelist
    to fix crash with glib 2.74+ (LP: #1990630)

 -- Jeremy Bicha <email address hidden> Mon, 17 Oct 2022 07:37:56 -0400

Changed in tracker-miners (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
XA Hydra (xa-hydra) wrote :

I get this all day long in 22.04 even now

tags: added: jammy
tags: added: rls-jj-incoming
removed: rls-kk-incoming
tags: removed: kinetic
tags: added: jinetic
tags: added: kinetic
removed: jinetic
Revision history for this message
Talha Can Havadar (tchavadar) wrote :

hi, is there a plan to backport this fix to jammy?

Changed in tracker:
status: New → Fix Released
Revision history for this message
Talha Can Havadar (tchavadar) wrote :

Hi @Daniel, is this fix released to jammy yet?

Revision history for this message
Talha Can Havadar (tchavadar) wrote :

Let me provide the debdiff for jammy and update the bug to make it ready for SRU

Revision history for this message
Daniel van Vugt (vanvugt) wrote (last edit ):

Thanks!

Changed in tracker-miners (Ubuntu Jammy):
assignee: nobody → Talha Can Havadar (tchavadar)
status: New → In Progress
Revision history for this message
Talha Can Havadar (tchavadar) wrote :

Debdiff for jammy.

Here is the PPA I used to check if package is building ok: https://launchpad.net/~tchavadar/+archive/ubuntu/tracker-miners/+packages

It seems like amd64 is building fine but the others are still in queue.

description: updated
summary: - tracker-extract-3 crashed with signal 31 in __GI_epoll_create1()
+ [SRU] tracker-extract-3 crashed with signal 31 in __GI_epoll_create1()
description: updated
Revision history for this message
Benjamin Drung (bdrung) wrote :

The diff looks good except for a few point of the patch metadata: The author of the patch is Sam Thursfield and Applied-Upstream should point to upstream GNOME instead of Debian salsa. I would change "Forwarded" to "Origin" when taking the patch from there.

Revision history for this message
Talha Can Havadar (tchavadar) wrote :

Based on the feedback from Benjamin, I did update the debdiff accordingly

Revision history for this message
Benjamin Drung (bdrung) wrote :

Sponsored the patch.

Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello lianergoist, or anyone else affected,

Accepted tracker-miners into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/tracker-miners/3.3.3-0ubuntu0.20.04.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in tracker-miners (Ubuntu Jammy):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-jammy
Revision history for this message
Talha Can Havadar (tchavadar) wrote (last edit ):
Download full text (4.8 KiB)

Hello Timo,

Below you can find the failure that I was able to reproduce with the old version of tracker-miners (3.3.3-0ubuntu0.20.04.2) just to make sure if it is gone with the new update.

(Time stamps are not really showing correct it was out of sync because of no internet connection)
```
Mar 13 14:38:53 kria tracker-extract-3[3448]: Disallowed syscall "epoll_create1" caught in sandbox
Mar 13 14:38:55 kria systemd[1847]: tracker-extract-3.service: Main process exited, code=dumped, status=31/SYS
Mar 13 14:38:55 kria systemd[1847]: tracker-extract-3.service: Failed with result 'core-dump'.
Mar 13 14:38:55 kria systemd[1847]: Failed to start Tracker metadata extractor.
Mar 13 14:38:55 kria systemd[1847]: tracker-extract-3.service: Scheduled restart job, restart counter is at 13.
Mar 13 14:38:55 kria systemd[1847]: Stopped Tracker metadata extractor.
Mar 13 14:38:55 kria systemd[1847]: Starting Tracker metadata extractor...
Mar 13 14:38:55 kria tracker-extract-3[3461]: Disallowed syscall "epoll_create1" caught in sandbox
Mar 13 14:38:57 kria systemd[1847]: tracker-extract-3.service: Main process exited, code=dumped, status=31/SYS
Mar 13 14:38:57 kria systemd[1847]: tracker-extract-3.service: Failed with result 'core-dump'.
Mar 13 14:38:57 kria systemd[1847]: Failed to start Tracker metadata extractor.
Mar 13 14:38:57 kria systemd[1847]: tracker-extract-3.service: Scheduled restart job, restart counter is at 14.
Mar 13 14:38:57 kria systemd[1847]: Stopped Tracker metadata extractor.
Mar 13 14:38:57 kria systemd[1847]: tracker-extract-3.service: Start request repeated too quickly.
Mar 13 14:38:57 kria systemd[1847]: tracker-extract-3.service: Failed with result 'core-dump'.
Mar 13 14:38:57 kria systemd[1847]: Failed to start Tracker metadata extractor.
```

After installing the version in jammy-proposed (3.3.3-0ubuntu0.20.04.3)
```
ubuntu@kria:~$ sudo apt policy tracker-extract
tracker-extract:
  Installed: 3.3.3-0ubuntu0.20.04.3
  Candidate: 3.3.3-0ubuntu0.20.04.3
  Version table:
 *** 3.3.3-0ubuntu0.20.04.3 500
        500 http://ports.ubuntu.com/ubuntu-ports jammy-proposed/main arm64 Packages
        100 /var/lib/dpkg/status
     3.3.3-0ubuntu0.20.04.2 500
        500 http://ports.ubuntu.com/ubuntu-ports jammy-updates/main arm64 Packages
     3.3.3-0ubuntu0.20.04.1 500
        500 http://ports.ubuntu.com/ubuntu-ports jammy-security/main arm64 Packages
     3.3.0-1 500
        500 http://ports.ubuntu.com/ubuntu-ports jammy/main arm64 Packages
```

Here is the service status without any coredump:
```
ubuntu@kria:~$ systemctl --user status tracker-extract-3.service --no-pager -l
● tracker-extract-3.service - Tracker metadata extractor
     Loaded: loaded (8;;file://kria/usr/lib/systemd/user/tracker-extract-3.service/usr/lib/systemd/user/tracker-extract-3.service8;;; static)
     Active: active (running) since Mon 2024-04-08 09:58:35 UTC; 1s ago
   Main PID: 3691 (tracker-extract)
      Tasks: 6 (limit: 3428)
     Memory: 7.5M
        CPU: 349ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/background.slice/tracker-extract-3.service
             └─3691 /usr/libexec/tracker-extract-3

Apr 08 09:58:35 kria systemd[3310]: Starting Track...

Read more...

tags: added: verification-done-jammy
removed: verification-needed verification-needed-jammy
tags: added: verification-done
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package tracker-miners - 3.3.3-0ubuntu0.20.04.3

---------------
tracker-miners (3.3.3-0ubuntu0.20.04.3) jammy; urgency=medium

  * Allow epoll_create1 call in seccomp whitelist (LP: #1990630)
    - d/p/seccomp-allow-epoll-create1.patch

 -- Talha Can Havadar <email address hidden> Wed, 03 Apr 2024 13:27:56 +0200

Changed in tracker-miners (Ubuntu Jammy):
status: Fix Committed → Fix Released
Revision history for this message
Andreas Hasenack (ahasenack) wrote : Update Released

The verification of the Stable Release Update for tracker-miners has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.