Memtrack HAL: Report global total GPU-private memory

Update memtrack hal documentation to allow reporting the global
total GPU-private memory from the getMemory() API.

Specify how to handle unsupported memtrack operations.

Bug: 193226716
Bug: 193465681
Bug: 192621117
Test: N/A
Change-Id: I6fcebd16fafdc34cc662137784e86750ee907eee
Merged-In: I6fcebd16fafdc34cc662137784e86750ee907eee
diff --git a/memtrack/aidl/android/hardware/memtrack/IMemtrack.aidl b/memtrack/aidl/android/hardware/memtrack/IMemtrack.aidl
index 13c3389..88b090b 100644
--- a/memtrack/aidl/android/hardware/memtrack/IMemtrack.aidl
+++ b/memtrack/aidl/android/hardware/memtrack/IMemtrack.aidl
@@ -44,6 +44,12 @@
  *     This category should report all GPU private allocations for the specified
  *     PID that are not accounted in /proc/<pid>/smaps.
  *
+ *     getMemory() called with PID 0 should report the global total GPU-private
+ *     memory, for MemtrackType::GL and MemtrackRecord::FLAG_SMAPS_UNACCOUNTED.
+ *
+ *     getMemory() called with PID 0 for a MemtrackType other than GL should
+ *     report 0.
+ *
  * - MemtrackType::OTHER and MemtrackRecord::FLAG_SMAPS_UNACCOUNTED
  *     Any other memory not accounted for in /proc/<pid>/smaps if any, otherwise
  *     this should return 0.
@@ -52,6 +58,9 @@
  * VM_PFNMAP flag set. For these mappings PSS and RSS are reported as 0 in smaps.
  * Such mappings have no backing page structs from which PSS/RSS can be calculated.
  *
+ * Any memtrack operation that is not supported should return a binder status with
+ * exception code EX_UNSUPPORTED_OPERATION.
+ *
  * Constructor for the interface should be used to perform memtrack management
  * setup actions and must be called once before any calls to getMemory().
  */