If storage is not visible to apps and no need to spin up FUSE, it also
should not make FUSE mount point directory.
Change-Id: I6ecd2e5bf56b5dcf0e11834880256b156a62a9a0
Signed-off-by: Qin Chao <chao.qin@intel.com>
The function PKCS5_PBKDF2_HMAC_SHA1 can fail for a number of reasons and
thus its return value should be checked and handled.
Change-Id: I0f0d8f74b58940a34df16b88434a085760822075
The expression otherwise overflows for large devices.
It's fsblkcnt_t -> unsigned long, which is 32 bit on ARMv7.
Bug: 25162062
Change-Id: I46c5e00558b7dbd6abd50fae4727396079044df2
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
Changing the num_sectors used in ioctl with BLKGETSIZE because
the kernel expects an unsigned long type and then changes 64 bits
with a 64 bits userspace. This overwrites what's located close to
the parameter location if any.
Change-Id: I78fd61a1084de2741f39b926aa436462518709a0
Signed-off-by: Mateusz Nowak <mateusz.nowak@intel.com>
Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
fsck_msdos will retun error code 8 when the partition is non-format.
Handle this error code and continue next partition in Vold.
Change-Id: I31499ccb16945ffbc67bdc92dfbc3ea71e82573a
Signed-off-by: Mateusz Nowak <mateusz.nowak@intel.com>
Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
The expression otherwise overflows for large devices.
It's fsblkcnt_t -> unsigned long, which is 32 bit on ARMv7.
Change-Id: I46c5e00558b7dbd6abd50fae4727396079044df2
When formatting media as a public volume, we write an MBR, but we
might leave a stale GPT floating around. Some devices are configured
to aggressively prefer GPT when detected, even if the checksums
between primary/secondary don't match.
To work around this, nuke both MBR and GPT tables from the media
before we lay down our new MBR.
Bug: 24112219
Change-Id: Ibf1be466a6877cbab925a24db5e5dbab0613bea7
The framework can request that a benchmark be run after an fstrim,
but it was disabled due to a kernel bug on certain devices. That bug
has long been fixed, so it should be safe to enable this again.
Bug: 23942769
Change-Id: Ibe967a75856d0cbad45e2f8f3120f1970caf36d0