From 5f85d1fb0a2f7dd85b2f1acabcce2d227a60b29c Mon Sep 17 00:00:00 2001 From: Tao Bao Date: Tue, 28 Mar 2017 21:12:36 -0700 Subject: Log the error message when failing to mount/umount. Test: Observe the error messaage for a umount failure case. Bug: 36686818 Change-Id: I28e335c2df4454dd0192f95e3909599fcc9dc1c0 --- mounts.cpp | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) (limited to 'mounts.cpp') diff --git a/mounts.cpp b/mounts.cpp index f23376b06..fbcbac014 100644 --- a/mounts.cpp +++ b/mounts.cpp @@ -27,6 +27,8 @@ #include #include +#include + struct MountedVolume { std::string device; std::string mount_point; @@ -75,15 +77,23 @@ MountedVolume* find_mounted_volume_by_mount_point(const char* mount_point) { } int unmount_mounted_volume(MountedVolume* volume) { - // Intentionally pass the empty string to umount if the caller tries - // to unmount a volume they already unmounted using this - // function. - std::string mount_point = volume->mount_point; - volume->mount_point.clear(); - return umount(mount_point.c_str()); + // Intentionally pass the empty string to umount if the caller tries to unmount a volume they + // already unmounted using this function. + std::string mount_point = volume->mount_point; + volume->mount_point.clear(); + int result = umount(mount_point.c_str()); + if (result == -1) { + PLOG(WARNING) << "Failed to umount " << mount_point; + } + return result; } int remount_read_only(MountedVolume* volume) { - return mount(volume->device.c_str(), volume->mount_point.c_str(), volume->filesystem.c_str(), - MS_NOATIME | MS_NODEV | MS_NODIRATIME | MS_RDONLY | MS_REMOUNT, 0); + int result = mount(volume->device.c_str(), volume->mount_point.c_str(), + volume->filesystem.c_str(), + MS_NOATIME | MS_NODEV | MS_NODIRATIME | MS_RDONLY | MS_REMOUNT, 0); + if (result == -1) { + PLOG(WARNING) << "Failed to remount read-only " << volume->mount_point; + } + return result; } -- cgit v1.2.3 From e95902280c362cec38bc79c63e0da5cc35241e2b Mon Sep 17 00:00:00 2001 From: Tao Bao Date: Sun, 16 Apr 2017 15:40:10 -0700 Subject: libmounts: Remove two dead functions. find_mounted_volume_by_device() and remount_read_only() have no active users. And we don't have a code logic that requires these two functions. Test: mmma bootable/recovery Test: Code search shows no user. Change-Id: Ib11c2ba93ee087ea020c1337eb06686a6165f894 --- mounts.cpp | 17 ----------------- 1 file changed, 17 deletions(-) (limited to 'mounts.cpp') diff --git a/mounts.cpp b/mounts.cpp index fbcbac014..76fa65739 100644 --- a/mounts.cpp +++ b/mounts.cpp @@ -62,13 +62,6 @@ bool scan_mounted_volumes() { return true; } -MountedVolume* find_mounted_volume_by_device(const char* device) { - for (size_t i = 0; i < g_mounts_state.size(); ++i) { - if (g_mounts_state[i]->device == device) return g_mounts_state[i]; - } - return nullptr; -} - MountedVolume* find_mounted_volume_by_mount_point(const char* mount_point) { for (size_t i = 0; i < g_mounts_state.size(); ++i) { if (g_mounts_state[i]->mount_point == mount_point) return g_mounts_state[i]; @@ -87,13 +80,3 @@ int unmount_mounted_volume(MountedVolume* volume) { } return result; } - -int remount_read_only(MountedVolume* volume) { - int result = mount(volume->device.c_str(), volume->mount_point.c_str(), - volume->filesystem.c_str(), - MS_NOATIME | MS_NODEV | MS_NODIRATIME | MS_RDONLY | MS_REMOUNT, 0); - if (result == -1) { - PLOG(WARNING) << "Failed to remount read-only " << volume->mount_point; - } - return result; -} -- cgit v1.2.3