1. 21 Oct, 2015 1 commit
    • Jeff Sharkey's avatar
      Kill apps using storage through bind mounts. · 89f74fbf
      Jeff Sharkey authored
      When unmounting an emulated volume, look for apps with open files
      using the final published volume path.
      
      Without this change, we were only looking at the internal paths
      used for runtime permissions, which apps never use directly.  This
      meant we'd always fail to unmount the volume if apps didn't respect
      the EJECTING broadcast, and volume migration would end up wedged
      until the device rebooted.
      
      Bug: 24863778
      Change-Id: Ibda484e66ab95744c304c344b226caa5b10b7e2e
      89f74fbf
  2. 31 Mar, 2015 1 commit
    • Jeff Sharkey's avatar
      Progress towards dynamic storage support. · 36801ccc
      Jeff Sharkey authored
      Wire up new Disk and VolumeBase objects and events to start replacing
      older DirectVolume code.  Use filesystem UUID as visible PublicVolume
      name to be more deterministic.
      
      When starting, create DiskSource instances based on fstab, and watch
      for kernel devices to appear.  Turn matching devices into Disk
      objects, scan for partitions, and create any relevant VolumeBase
      objects.  Broadcast all of these events towards userspace so the
      framework can decide what to mount.
      
      Keep track of the primary VolumeBase, and update the new per-user
      /storage/self/primary symlink for all started users.
      
      Provide a reset command that framework uses to start from a known
      state when runtime is restarted.  When vold is unexpectedly killed,
      try recovering by unmounting everything under /mnt and /storage
      before moving forward.
      
      Remove UMS sharing support for now, since no current devices support
      it; MTP is the recommended solution going forward because it offers
      better multi-user support.
      
      Switch killProcessesWithOpenFiles() to directly take signal.  Fix
      one SOCK_CLOEXEC bug, but SELinux says there are more lurking.
      
      Bug: 19993667
      Change-Id: I2dad1303aa4667ec14c52f774e2a28b3c1c1ff6d
      36801ccc
  3. 24 Sep, 2014 1 commit
    • jessica_yu's avatar
      print information about opened files when failed unmount · 3f14fe45
      jessica_yu authored
      Change-Id: I88ae719cdae490433390d624f75612a9f4f96677
      
      Cryptfs : Enabling support for allow_discards in dmcrypt.
      Cryptfs : Password matches
      Cryptfs : test_mount_encrypted_fs(): Master key saved
      TrustyKeymaster: Creating device
      TrustyKeymaster: Device address: 0x7f8f416100
      Cryptfs : keymaster version is 3
      Cryptfs : Just asked init to shut down class main
      ServiceManager: service 'drm.drmManager' died
      ServiceManager: service 'media.audio_flinger' died
      ServiceManager: service 'media.player' died
      ServiceManager: service 'media.camera' died
      ServiceManager: service 'android.security.keystore' died
      Cryptfs : unmounting /data failed
      
      Bug: 17576594
      3f14fe45
  4. 17 Feb, 2010 1 commit