throtl_dataRegular
4.4: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int nr_undestroyed_grps;
struct work_struct dispatch_work;
};
4.8: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
struct work_struct dispatch_work;
};
4.10: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
struct work_struct dispatch_work;
};
4.13: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[9];
struct avg_latency_bucket avg_buckets[9];
struct latency_bucket *latency_buckets;
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
4.15: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[9];
struct avg_latency_bucket avg_buckets[9];
struct latency_bucket *latency_buckets;
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
4.18: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.0: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.3: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.4: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.8: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.11: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.13: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.15: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
5.19: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
6.2: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
6.5: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
6.8: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
arm64: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
armhf: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
ppc64el: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
riscv64: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
aws: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
azure: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
gcp: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
lowlatency: ✅struct throtl_data {
struct throtl_service_queue service_queue;
struct request_queue *queue;
unsigned int nr_queued[2];
unsigned int throtl_slice;
struct work_struct dispatch_work;
unsigned int limit_index;
bool limit_valid[2];
long unsigned int low_upgrade_time;
long unsigned int low_downgrade_time;
unsigned int scale;
struct latency_bucket tmp_buckets[18];
struct avg_latency_bucket avg_buckets[18];
struct latency_bucket * latency_buckets[2];
long unsigned int last_calculate_time;
long unsigned int filtered_latency;
bool track_bio_latency;
};
Regular
4.4 and 4.8 ⚠️unsigned int nr_undestroyed_grps
4.8 and 4.10 ✅
4.10 and 4.13 ⚠️unsigned int throtl_slice
unsigned int limit_index
bool limit_valid[2]
long unsigned int low_upgrade_time
long unsigned int low_downgrade_time
unsigned int scale
struct latency_bucket tmp_buckets[9]
struct avg_latency_bucket avg_buckets[9]
struct latency_bucket *latency_buckets
long unsigned int last_calculate_time
long unsigned int filtered_latency
bool track_bio_latency
4.13 and 4.15 ✅
4.15 and 4.18 ⚠️struct latency_bucket tmp_buckets[9] ➡️ struct latency_bucket tmp_buckets[18]
struct avg_latency_bucket avg_buckets[9] ➡️ struct avg_latency_bucket avg_buckets[18]
struct latency_bucket *latency_buckets ➡️ struct latency_bucket * latency_buckets[2]
4.18 and 5.0 ✅
5.0 and 5.3 ✅
5.3 and 5.4 ✅
5.4 and 5.8 ✅
5.8 and 5.11 ✅
5.11 and 5.13 ✅
5.13 and 5.15 ✅
5.15 and 5.19 ✅
5.19 and 6.2 ✅
6.2 and 6.5 ✅
6.5 and 6.8 ✅
amd64 and arm64 ✅
amd64 and armhf ✅
amd64 and ppc64el ✅
amd64 and riscv64 ✅
generic and aws ✅
generic and azure ✅
generic and gcp ✅
generic and lowlatency ✅