1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
|
// Copyright 2022 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
syntax = "proto3";
option optimize_for = LITE_RUNTIME;
package spaced;
// Output parameters for SetProjectId().
message SetProjectIdReply {
// Set to true if ioctl syscall for setting the project inheritance flag
// succeeds.
bool success = 1;
// Errno if success == false.
int32 error = 2;
}
// Output parameters for SetProjectInheritanceFlag().
message SetProjectInheritanceFlagReply {
// Set to true if ioctl syscall for setting the project id succeeds.
bool success = 1;
// Errno if success == false.
int32 error = 2;
}
enum StatefulDiskSpaceState {
// No value was set.
NONE = 0;
// No action is taken in this state.
NORMAL = 1;
// Prepare applications for impending critical disk space state.
LOW = 2;
// Critical disk space state.
CRITICAL = 3;
}
message StatefulDiskSpaceUpdate {
StatefulDiskSpaceState state = 1;
int64 free_space_bytes = 2;
}
// Input parameters for GetQuotaCurrentSpacesForIds().
message GetQuotaCurrentSpacesForIdsRequest {
string path = 1;
repeated uint32 uids = 2 [packed = true];
repeated uint32 gids = 3 [packed = true];
repeated uint32 project_ids = 4 [packed = true];
}
// Output parameters for GetQuotaCurrentSpacesForIds().
message GetQuotaCurrentSpacesForIdsReply {
// Maps from IDs to their current disk space usages.
// The Value is set to -1 if quotactl fails for the ID.
map<uint32, int64> curspaces_for_uids = 1;
map<uint32, int64> curspaces_for_gids = 2;
map<uint32, int64> curspaces_for_project_ids = 3;
}
// Input parameters for GetDiskIOStatsForPaths.
message GetDiskIOStatsForPathsRequest {
repeated string path = 1;
}
message DiskIOStats {
uint64 read_ios = 1;
uint64 read_merges = 2;
uint64 read_sectors = 3;
uint64 read_ticks = 4;
uint64 write_ios = 5;
uint64 write_merges = 6;
uint64 write_sectors = 7;
uint64 write_ticks = 8;
uint64 in_flight = 9;
uint64 io_ticks = 10;
uint64 time_in_queue = 11;
uint64 discard_ios = 12;
uint64 discard_merges = 13;
uint64 discard_sectors = 14;
uint64 discard_ticks = 15;
uint64 flush_ios = 16;
uint64 flush_ticks = 17;
}
// Disk IO stats result for a specified path.
message DiskIOStatsForPath {
string path = 1;
DiskIOStats stats = 2;
}
// Output parameters for GetDiskIOStatsForPaths.
message GetDiskIOStatsForPathsReply {
repeated DiskIOStatsForPath stats_for_path = 1;
}
|