Invoke rss_hwm_reset binary

Flip sys.rss_hwm_reset.on property to invoke the binary to reset RSS HWM
counters for all processes.

Test: m -j
Test: ProcessMemoryHighWaterMark pull
Bug: 119598534
Change-Id: I53d8c571b27ddee611193aa36fdbd3d4c88abebd
diff --git a/cmds/statsd/src/atoms.proto b/cmds/statsd/src/atoms.proto
index 410bd19..7a30c9a 100644
--- a/cmds/statsd/src/atoms.proto
+++ b/cmds/statsd/src/atoms.proto
@@ -2627,6 +2627,8 @@
  *
  * Pulled from StatsCompanionService for all managed processes (from ActivityManagerServie)
  * and for selected native processes.
+ *
+ * Pulling this atom resets high-water mark counters for all processes.
  */
 message ProcessMemoryHighWaterMark {
     // The uid if available. -1 means not available.
diff --git a/services/core/java/com/android/server/stats/StatsCompanionService.java b/services/core/java/com/android/server/stats/StatsCompanionService.java
index f0ebb75..4ec8b87 100644
--- a/services/core/java/com/android/server/stats/StatsCompanionService.java
+++ b/services/core/java/com/android/server/stats/StatsCompanionService.java
@@ -74,6 +74,7 @@
 import android.os.StatsLogEventWrapper;
 import android.os.SynchronousResultReceiver;
 import android.os.SystemClock;
+import android.os.SystemProperties;
 import android.os.Temperature;
 import android.os.UserHandle;
 import android.os.UserManager;
@@ -1140,7 +1141,8 @@
             e.writeLong(rssHighWaterMarkInBytes);
             pulledData.add(e);
         }
-        // TODO(b/119598534): Reset HWM counters here.
+        // Invoke rss_hwm_reset binary to reset RSS HWM counters for all processes.
+        SystemProperties.set("sys.rss_hwm_reset.on", "1");
     }
 
     private void pullBinderCallsStats(