** Description changed: - Impact - ------ + [Impact] Users might face a segmentation fault crash while executing 'pstree'. Backporting this fix will avoid 'pstree' breakage in our users' systems under certain circumstances. This is a timing issue where if the 'get_threadname' function is called and during its execution the target thread is deleted, it tries to close a file that does not exist anymore. This happens because of a coding issue, 'pstree' invokes fclose function even if the fopen function call returns NULL. The proposed patch fixes this issue simply moving the fclose function call three lines up, inside of a conditional block which guarantees that the file was properly open (the pointer to the file is not NULL). This bug was introduced in upstream version 22.21 and fixed in version 23.0, which means that Xenial is the only affected Ubuntu release: $ rmadison psmisc - psmisc | 22.15-2ubuntu1 | precise | source, amd64, armel, armhf, i386, powerpc - psmisc | 22.15-2ubuntu1.2 | precise-updates | source, amd64, armel, armhf, i386, powerpc - psmisc | 22.20-1ubuntu2 | trusty | source, amd64, arm64, armhf, i386, powerpc, ppc64el - psmisc | 22.21-2.1build1 | xenial | source, amd64, arm64, armhf, i386, powerpc, ppc64el, s390x - psmisc | 23.1-1 | bionic | source, amd64, arm64, armhf, i386, ppc64el, s390x - psmisc | 23.1-1ubuntu0.1 | bionic-updates | source, amd64, arm64, armhf, i386, ppc64el, s390x - psmisc | 23.2-1 | disco | source, amd64, arm64, armhf, i386, ppc64el, s390x - psmisc | 23.2-1 | eoan | source, amd64, arm64, armhf, i386, ppc64el, s390x + psmisc | 22.15-2ubuntu1 | precise | source, amd64, armel, armhf, i386, powerpc + psmisc | 22.15-2ubuntu1.2 | precise-updates | source, amd64, armel, armhf, i386, powerpc + psmisc | 22.20-1ubuntu2 | trusty | source, amd64, arm64, armhf, i386, powerpc, ppc64el + psmisc | 22.21-2.1build1 | xenial | source, amd64, arm64, armhf, i386, powerpc, ppc64el, s390x + psmisc | 23.1-1 | bionic | source, amd64, arm64, armhf, i386, ppc64el, s390x + psmisc | 23.1-1ubuntu0.1 | bionic-updates | source, amd64, arm64, armhf, i386, ppc64el, s390x + psmisc | 23.2-1 | disco | source, amd64, arm64, armhf, i386, ppc64el, s390x + psmisc | 23.2-1 | eoan | source, amd64, arm64, armhf, i386, ppc64el, s390x - - Test Case - --------- + [Test Case] Since timing is an important factor for this issue, it is not easy to reproduce via a test case. This bug might pop up in any 'pstree' call regardless of the parameters passed to it. When it happens the user will be able to notice the segmentation fault immediately in the standard output. Below is the stack trace generated by the user who reported this bug on Debian [1]: Core was generated by `pstree'. Program terminated with signal SIGSEGV, Segmentation fault. #0 _IO_new_fclose (fp=0x0) at iofclose.c:54 54 iofclose.c: No such file or directory. (gdb) bt #0 _IO_new_fclose (fp=0x0) at iofclose.c:54 #1 0x00000000004037be in ?? () #2 0x0000000000401a43 in ?? () #3 0x00007f577c553b45 in __libc_start_main (main=0x401670, argc=1, argv=0x7ffeb6139328, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffeb6139318) at libc-start.c:287 #4 0x0000000000401e8d in ?? () - However, as presented in the last section it is an easily identifiable error in the code, and the fix is quite straightforward. [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815902 - - Regression Potential - -------------------- + [Regression Potential] There is a potential problem since the bug was not reproducible in our side. Timing issues are hard to reproduce in general, so there might be another case(s) where this kind of situation can happen. The fix impacts only the 'pstree' utility, so any problem with other binaries provided by psmisc is not related to this update. - [Original message] As per https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815902 Perhaps Xenial needs to be upgraded to use 22.22??
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1837444 Title: pstree seg fault To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/psmisc/+bug/1837444/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
