123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 |
- // Copyright (c) 2019 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- syntax = "proto2";
- package disk_cache_fuzzer;
- enum RequestPriority {
- THROTTLED = 0;
- IDLE = 1;
- LOWEST = 2;
- LOW = 3;
- MEDIUM = 4;
- HIGHEST = 5;
- }
- message FuzzCommands {
- enum CacheBackend {
- SIMPLE = 0;
- IN_MEMORY = 1;
- BLOCK = 2;
- }
- required CacheBackend cache_backend = 5;
- enum CacheType {
- APP_CACHE = 1;
- REMOVED_MEDIA_CACHE = 2;
- SHADER_CACHE = 3;
- PNACL_CACHE = 4;
- GENERATED_BYTE_CODE_CACHE = 5;
- DISK_CACHE = 6;
- GENERATED_NATIVE_CODE_CACHE = 7;
- }
- required CacheType cache_type = 4;
- optional bool set_mask = 2;
- optional SetMaxSize set_max_size = 3;
- repeated FuzzCommand fuzz_commands = 1;
- required bool simple_cache_wait_for_index = 6;
- }
- message FuzzCommand {
- oneof fuzz_command_oneof {
- SetMaxSize set_max_size = 87;
- CreateEntry create_entry = 1;
- OpenEntry open_entry = 2;
- OpenOrCreateEntry open_or_create_entry = 345;
- CloseEntry close_entry = 3;
- DoomEntry doom_entry = 4;
- WriteData write_data = 5;
- WriteSparseData write_sparse_data = 6;
- DoomAllEntries doom_all_entries = 7;
- FlushQueueForTest flush_queue_for_test = 8;
- CreateIterator create_iterator = 10;
- IteratorOpenNextEntry iterator_open_next_entry = 63;
- FastForwardBy fast_forward_by = 11;
- ReadData read_data = 12;
- ReadSparseData read_sparse_data = 456;
- DoomEntriesSince doom_entries_since = 13;
- DoomEntriesBetween doom_entries_between = 14;
- OnExternalCacheHit on_external_cache_hit = 16;
- TrimForTest trim_for_test = 17;
- TrimDeletedListForTest trim_deleted_list_for_test = 18;
- GetAvailableRange get_available_range = 19;
- CancelSparseIO cancel_sparse_io = 20;
- DoomKey doom_key = 21;
- DestructBackend destruct_backend = 22;
- AddRealDelay add_real_delay = 23;
- // Not included: GetStats, CalculateSizesOf, GetEntryInMemoryData,
- // SetEntryInMemoryData, CouldBeSparse, ReadyForSparseIO
- // TODO(mpdenton) FlushWorkerPoolForTesting
- }
- }
- message SetMaxSize {
- required uint32 size = 1;
- }
- message CreateEntry {
- required uint64 key_id = 1;
- required uint64 entry_id = 2;
- required RequestPriority pri = 3;
- required bool async = 4;
- required bool is_sparse = 5;
- }
- message OpenEntry {
- required uint64 key_id = 1;
- required uint64 entry_id = 2;
- required RequestPriority pri = 3;
- required bool async = 4;
- }
- message OpenOrCreateEntry {
- required uint64 key_id = 1;
- required uint64 entry_id = 2;
- required bool create_new = 3;
- required RequestPriority pri = 4;
- required bool async = 5;
- required bool is_sparse = 6;
- }
- message CloseEntry {
- required uint64 entry_id = 1;
- }
- message DoomEntry {
- required uint64 entry_id = 1;
- }
- message WriteData {
- required uint64 entry_id = 1;
- required uint32 size = 2;
- required uint32 index = 3;
- required uint32 offset = 4;
- required bool truncate = 5;
- required bool async = 6;
- }
- message WriteSparseData {
- required uint64 entry_id = 1;
- required uint32 size = 2;
- required uint64 offset = 4;
- required bool async = 5;
- required bool cap_offset = 6;
- }
- message ReadSparseData {
- required uint64 entry_id = 1;
- required uint32 size = 2;
- required uint64 offset = 4;
- required bool async = 5;
- required bool cap_offset = 6;
- }
- message ReadData {
- required uint64 entry_id = 1;
- required uint32 size = 2;
- required uint32 index = 3;
- required uint32 offset = 4;
- required bool async = 5;
- }
- message DoomAllEntries {
- required bool async = 1;
- }
- message FlushQueueForTest {}
- message CreateIterator {
- required uint64 it_id = 1;
- }
- message IteratorOpenNextEntry {
- required uint64 it_id = 1;
- required uint64 entry_id = 2;
- required bool async = 3;
- }
- message FastForwardBy {
- required uint32 capped_num_millis = 1;
- required uint64 time_id = 2;
- }
- message DoomEntriesBetween {
- required uint64 time_id1 = 1;
- required uint64 time_id2 = 2;
- required bool async = 3;
- }
- message DoomEntriesSince {
- required uint64 time_id = 1;
- required bool async = 2;
- }
- message OnExternalCacheHit {
- required uint64 key_id = 1;
- }
- message TrimForTest {
- required bool empty = 1;
- }
- message TrimDeletedListForTest {
- required bool empty = 1;
- }
- message GetAvailableRange {
- required uint64 entry_id = 1;
- required uint32 offset = 2;
- required uint32 len = 3;
- required bool async = 4;
- }
- message CancelSparseIO {
- required uint64 entry_id = 1;
- }
- message DoomKey {
- required uint64 key_id = 1;
- required RequestPriority pri = 2;
- required bool async = 3;
- }
- message DestructBackend {
- // I want this to be uncommon, so if either of these booleans are false, we
- // won't actually destruct the backend.
- required bool actually_destruct1 = 1;
- required bool actually_destruct2 = 2;
- }
- message AddRealDelay {
- required bool actually_delay = 1;
- }
|