Merge "Revert "libhealthloop: Handle netlink receive buffer overflows"" into main am: d9974eb049 am: 5b58be09bc
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/3243781
Change-Id: Ic83667e73010af4094412cfe8ac0106e98d4120c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/health/utils/libhealthloop/HealthLoop.cpp b/health/utils/libhealthloop/HealthLoop.cpp
index 70b7745..d43c2d5 100644
--- a/health/utils/libhealthloop/HealthLoop.cpp
+++ b/health/utils/libhealthloop/HealthLoop.cpp
@@ -61,13 +61,14 @@
EventHandler{this, fd, std::move(func)}))
.get();
- struct epoll_event ev = {
- .events = EPOLLIN | EPOLLERR,
- .data.ptr = reinterpret_cast<void*>(event_handler),
- };
+ struct epoll_event ev;
+
+ ev.events = EPOLLIN;
if (wakeup == EVENT_WAKEUP_FD) ev.events |= EPOLLWAKEUP;
+ ev.data.ptr = reinterpret_cast<void*>(event_handler);
+
if (epoll_ctl(epollfd_, EPOLL_CTL_ADD, fd, &ev) == -1) {
KLOG_ERROR(LOG_TAG, "epoll_ctl failed; errno=%d\n", errno);
return -1;
@@ -121,15 +122,9 @@
}
#define UEVENT_MSG_LEN 2048
-void HealthLoop::UeventEvent(uint32_t epevents) {
+void HealthLoop::UeventEvent(uint32_t /*epevents*/) {
// No need to lock because uevent_fd_ is guaranteed to be initialized.
- if (epevents & EPOLLERR) {
- // The netlink receive buffer overflowed.
- ScheduleBatteryUpdate();
- return;
- }
-
char msg[UEVENT_MSG_LEN + 2];
char* cp;
int n;