| syntax = "proto3"; |
| |
| option cc_enable_arenas = true; |
| |
| package vm_tools.concierge; |
| |
| // A history entry for TbwTracker. |
| message TbwHistoryEntry { |
| // The microseconds relative to Windows epoch (1601-01-01 00:00:00 UTC). |
| int64 time_us = 1; |
| // The written size in bytes. |
| uint64 size = 2; |
| // TBW is reported to UMA weekly. An entry with `reported_fence = true` |
| // ensures that all prior Tbw entries have been reported. |
| bool reported_fence = 3; |
| } |
| |
| // Container for multiple TbwHistoryEntry |
| // The file /var/lib/vm_concierge/vmm_swap_policy/tbw_history2 is serialized |
| // with TbwHistoryEntryContainer. |
| message TbwHistoryEntryContainer { |
| // The entries |
| repeated TbwHistoryEntry entries = 1; |
| } |
| |
| // A history entry for VmmSwapUsagePolicy. |
| message UsageHistoryEntry { |
| // The microseconds relative to Windows epoch (1601-01-01 00:00:00 UTC). |
| int64 start_time_us = 1; |
| // The length how long the vm is swappable idle. |
| int64 duration_us = 2; |
| // Whether vm was shutdown while vmm-swap is enabled. |
| bool is_shutdown = 3; |
| } |
| |
| // Container for multiple UsageHistoryEntry |
| // The file /run/daemon-store/crosvm/<user hash>/<vm name>.vmm_swap_history is |
| // serialized with UsageHistoryEntryContainer. |
| message UsageHistoryEntryContainer { |
| // The entries |
| repeated UsageHistoryEntry entries = 1; |
| } |