Merge changes I68fa51f8,Ia16aa041,Iba57f5cf into main
* changes:
libprocessgroup: Remove unused includes; add missing ones
libprocessgroup: Don't delegate to default constructor
libprocessgroup: Use default member initializers
diff --git a/libprocessgroup/cgroup_map.cpp b/libprocessgroup/cgroup_map.cpp
index c8ae216..ebc0599 100644
--- a/libprocessgroup/cgroup_map.cpp
+++ b/libprocessgroup/cgroup_map.cpp
@@ -18,33 +18,19 @@
#define LOG_TAG "libprocessgroup"
#include <errno.h>
-#include <fcntl.h>
-#include <grp.h>
-#include <pwd.h>
-#include <sys/mman.h>
-#include <sys/mount.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-#include <time.h>
#include <unistd.h>
#include <regex>
#include <android-base/file.h>
#include <android-base/logging.h>
-#include <android-base/properties.h>
#include <android-base/stringprintf.h>
#include <android-base/strings.h>
-#include <android-base/unique_fd.h>
#include <cgroup_map.h>
-#include <json/reader.h>
-#include <json/value.h>
#include <processgroup/processgroup.h>
-using android::base::GetBoolProperty;
using android::base::StartsWith;
using android::base::StringPrintf;
-using android::base::unique_fd;
using android::base::WriteStringToFile;
static constexpr const char* CGROUP_PROCS_FILE = "/cgroup.procs";
diff --git a/libprocessgroup/cgroup_map.h b/libprocessgroup/cgroup_map.h
index 5c6d3e2..31925d5 100644
--- a/libprocessgroup/cgroup_map.h
+++ b/libprocessgroup/cgroup_map.h
@@ -16,14 +16,9 @@
#pragma once
-#include <sys/cdefs.h>
#include <sys/types.h>
-#include <map>
-#include <memory>
-#include <mutex>
#include <string>
-#include <vector>
#include <android/cgrouprc.h>
@@ -32,7 +27,7 @@
public:
// Does not own controller
explicit CgroupController(const ACgroupController* controller)
- : controller_(controller), state_(UNKNOWN) {}
+ : controller_(controller) {}
uint32_t version() const;
const char* name() const;
@@ -53,7 +48,7 @@
};
const ACgroupController* controller_ = nullptr;
- ControllerState state_;
+ ControllerState state_ = ControllerState::UNKNOWN;
};
class CgroupMap {
diff --git a/libprocessgroup/cgrouprc_format/cgroup_controller.cpp b/libprocessgroup/cgrouprc_format/cgroup_controller.cpp
index 202b23e..56e67df 100644
--- a/libprocessgroup/cgrouprc_format/cgroup_controller.cpp
+++ b/libprocessgroup/cgrouprc_format/cgroup_controller.cpp
@@ -20,14 +20,9 @@
namespace cgrouprc {
namespace format {
-CgroupController::CgroupController() : version_(0), flags_(0) {
- memset(name_, 0, sizeof(name_));
- memset(path_, 0, sizeof(path_));
-}
-
CgroupController::CgroupController(uint32_t version, uint32_t flags, const std::string& name,
const std::string& path)
- : CgroupController() {
+{
// strlcpy isn't available on host. Although there is an implementation
// in licutils, libcutils itself depends on libcgrouprc_format, causing
// a circular dependency.
diff --git a/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_controller.h b/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_controller.h
index 40d8548..9427a1c 100644
--- a/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_controller.h
+++ b/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_controller.h
@@ -16,7 +16,8 @@
#pragma once
-#include <stdint.h>
+#include <cstddef>
+#include <cstdint>
#include <string>
namespace android {
@@ -26,7 +27,7 @@
// Minimal controller description to be mmapped into process address space
struct CgroupController {
public:
- CgroupController();
+ CgroupController() = default;
CgroupController(uint32_t version, uint32_t flags, const std::string& name,
const std::string& path);
@@ -41,10 +42,10 @@
static constexpr size_t CGROUP_NAME_BUF_SZ = 16;
static constexpr size_t CGROUP_PATH_BUF_SZ = 32;
- uint32_t version_;
- uint32_t flags_;
- char name_[CGROUP_NAME_BUF_SZ];
- char path_[CGROUP_PATH_BUF_SZ];
+ uint32_t version_ = 0;
+ uint32_t flags_ = 0;
+ char name_[CGROUP_NAME_BUF_SZ] = {};
+ char path_[CGROUP_PATH_BUF_SZ] = {};
};
} // namespace format
diff --git a/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_file.h b/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_file.h
index f1678a1..2d9786f 100644
--- a/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_file.h
+++ b/libprocessgroup/cgrouprc_format/include/processgroup/format/cgroup_file.h
@@ -16,6 +16,8 @@
#pragma once
+#include <cstdint>
+
#include <processgroup/format/cgroup_controller.h>
namespace android {
diff --git a/libprocessgroup/sched_policy.cpp b/libprocessgroup/sched_policy.cpp
index 1005b1e..0f2640a 100644
--- a/libprocessgroup/sched_policy.cpp
+++ b/libprocessgroup/sched_policy.cpp
@@ -19,6 +19,7 @@
#define LOG_TAG "SchedPolicy"
#include <errno.h>
+#include <fcntl.h>
#include <unistd.h>
#include <android-base/logging.h>
diff --git a/libprocessgroup/setup/cgroup_descriptor.h b/libprocessgroup/setup/cgroup_descriptor.h
index 699c03c..9982bfc 100644
--- a/libprocessgroup/setup/cgroup_descriptor.h
+++ b/libprocessgroup/setup/cgroup_descriptor.h
@@ -16,6 +16,11 @@
#pragma once
+#include <cstdint>
+#include <string>
+
+#include <sys/stat.h>
+
#include <processgroup/format/cgroup_controller.h>
namespace android {
diff --git a/libprocessgroup/task_profiles.cpp b/libprocessgroup/task_profiles.cpp
index 0c2252b..4870548 100644
--- a/libprocessgroup/task_profiles.cpp
+++ b/libprocessgroup/task_profiles.cpp
@@ -17,7 +17,9 @@
//#define LOG_NDEBUG 0
#define LOG_TAG "libprocessgroup"
+#include <dirent.h>
#include <fcntl.h>
+#include <unistd.h>
#include <task_profiles.h>
#include <string>
diff --git a/libprocessgroup/task_profiles.h b/libprocessgroup/task_profiles.h
index 7e3c50d..184e9e3 100644
--- a/libprocessgroup/task_profiles.h
+++ b/libprocessgroup/task_profiles.h
@@ -16,10 +16,10 @@
#pragma once
-#include <sys/cdefs.h>
#include <sys/types.h>
-#include <functional>
+
#include <map>
+#include <memory>
#include <mutex>
#include <span>
#include <string>