← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1674868] Re: Fuse-ext2 deadlocks on creating symlinks

 

** Also affects: fuse-umfuse-ext2 (Ubuntu Xenial)
   Importance: Undecided
       Status: New

** Also affects: fuse-umfuse-ext2 (Ubuntu Artful)
   Importance: Undecided
       Status: Triaged

** Also affects: fuse-umfuse-ext2 (Ubuntu Zesty)
   Importance: Undecided
       Status: New

** Changed in: fuse-umfuse-ext2 (Ubuntu Xenial)
   Importance: Undecided => High

** Changed in: fuse-umfuse-ext2 (Ubuntu Zesty)
   Importance: Undecided => High

** Changed in: fuse-umfuse-ext2 (Ubuntu Artful)
   Importance: Undecided => High

** Changed in: fuse-umfuse-ext2 (Ubuntu Xenial)
     Assignee: (unassigned) => Simon Quigley (tsimonq2)

** Changed in: fuse-umfuse-ext2 (Ubuntu Zesty)
     Assignee: (unassigned) => Simon Quigley (tsimonq2)

** Changed in: fuse-umfuse-ext2 (Ubuntu Artful)
     Assignee: (unassigned) => Simon Quigley (tsimonq2)

** Changed in: fuse-umfuse-ext2 (Ubuntu Xenial)
       Status: New => Confirmed

** Changed in: fuse-umfuse-ext2 (Ubuntu Zesty)
       Status: New => Confirmed

** Changed in: fuse-umfuse-ext2 (Ubuntu Artful)
       Status: Triaged => Confirmed

** Changed in: fuse-umfuse-ext2 (Ubuntu Artful)
    Milestone: None => ubuntu-17.09

** Changed in: fuse-umfuse-ext2 (Ubuntu Zesty)
    Milestone: None => zesty-updates

** Changed in: fuse-umfuse-ext2 (Ubuntu Xenial)
    Milestone: None => xenial-updates

** Changed in: fuse-umfuse-ext2 (Ubuntu Trusty)
    Milestone: None => trusty-updates

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1674868

Title:
  Fuse-ext2 deadlocks on creating symlinks

Status in fuse-umfuse-ext2 package in Ubuntu:
  Confirmed
Status in fuse-umfuse-ext2 source package in Trusty:
  Confirmed
Status in fuse-umfuse-ext2 source package in Xenial:
  Confirmed
Status in fuse-umfuse-ext2 source package in Zesty:
  Confirmed
Status in fuse-umfuse-ext2 source package in Artful:
  Confirmed

Bug description:
  [Impact]

   * Any attempt to create/overwrite symlinks in a partition mounted by
  fuseext2 causes the fuseext2 process to deadlock, preventing the
  mounted filesystem from being used at all until the userspace process
  is killed and the filesystem is remounted.

  [Test Case]

   * dd if=/dev/zero of=partition bs=1M count=200
   * mkfs.ext2 partition
   * mkdir mount
   * fuseext2 partition mount
   * cd mount
   * touch test
   * ln -s test link - Doesn't complete
   * In another shell try to do anything else in the mount directory (ls, touch, rm) - Don't complete

  [Regression Potential]

   * Since this changes the locking strategy of the code to hold locks less, the main risk is exposing a case where data can be accessed in a non-threadsafe manner, leading to unexpected behaviour.
   * The places where the change has been made are at the exit points of the function, and match where similar unlocks are made in other places in the code.
   * Since the program at risk is (by design) a userspace program, the risk of kernel data leakage is minimal.

  [Other Info]

   * I can't actually work out where the upstream code for this project lives, the only upstream I could find is https://github.com/alperakcan/fuse-ext2 but that doesn't have any locking code at all (even in the reentrant branch) so I can't see where this issue came from.
   * This issue seems to apply to all versions of fuseext2 in the ubuntu repos (well, at least it's there in trusty, xenial and zesty)

  [Original Description]

  Trying to create a symlink in a filesystem mounted by fuseext2 causes
  the fuseext2 userspace process to deadlock before responding to the
  fuse request.  This is simply due to a code bug in fuse-ext2/op_link.c
  (lines 104 and 109) where the code calls FUSE_EXT2_LOCK rather than
  FUSE_EXT2_UNLOCK on exiting the function.

  I've confirmed that making that changes allows me to create symlinks
  happily on the mounted filesystem.  The bug appears to exist upstream
  too.

  System info:

  $ lsb_release -rd
  Description:	Linux Mint 18.1 Serena
  Release:	18.1

  Software version:

  $ apt show fuseext2
  Package: fuseext2
  Version: 0.4-1.1
  Priority: optional
  Section: universe/misc
  Source: fuse-umfuse-ext2
  Origin: Ubuntu
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
  Original-Maintainer: Debian VSquare Team <pkg-vsquare-devel@xxxxxxxxxxxxxxxxxxxxxxx>
  Bugs: https://bugs.launchpad.net/ubuntu/+filebug
  Installed-Size: 103 kB
  Depends: e2fslibs (>= 1.42), libc6 (>= 2.4), libfuse2 (>= 2.8.1), fuse
  Homepage: http://view-os.sourceforge.net
  Download-Size: 24.7 kB
  APT-Manual-Installed: yes
  APT-Sources: http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/fuse-umfuse-ext2/+bug/1674868/+subscriptions