** 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
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to