diff --git a/kernel/lib_limiter.c b/kernel/lib_limiter.c index 463e2f54..8f71017b 100644 --- a/kernel/lib_limiter.c +++ b/kernel/lib_limiter.c @@ -43,6 +43,7 @@ int mars_limit(struct mars_limiter *lim, int amount) if (likely(amount > 0)) { lim->lim_accu += amount; lim->lim_cumul += amount; + lim->lim_count++; } rate_raw = lim->lim_accu * LIMITER_TIME_RESOLUTION / window; diff --git a/kernel/lib_limiter.h b/kernel/lib_limiter.h index f96a647e..13111b2e 100644 --- a/kernel/lib_limiter.h +++ b/kernel/lib_limiter.h @@ -17,6 +17,7 @@ struct mars_limiter { /* readable */ int lim_rate; int lim_cumul; + int lim_count; long long lim_stamp; /* internal */ long long lim_accu; diff --git a/kernel/sy_old/mars_proc.c b/kernel/sy_old/mars_proc.c index 3d9e2679..fe16c291 100644 --- a/kernel/sy_old/mars_proc.c +++ b/kernel/sy_old/mars_proc.c @@ -174,6 +174,7 @@ EXPORT_SYMBOL_GPL(mars_max_loadavg); INT_ENTRY(PREFIX "_minwindow_ms", (VAR)->lim_min_window,0600), \ INT_ENTRY(PREFIX "_maxwindow_ms", (VAR)->lim_max_window,0600), \ INT_ENTRY(PREFIX "_cumul_" SUFFIX, (VAR)->lim_cumul, 0600), \ + INT_ENTRY(PREFIX "_count_ops", (VAR)->lim_count, 0600), \ INT_ENTRY(PREFIX "_rate_" SUFFIX, (VAR)->lim_rate, 0400) \ #define THRESHOLD_ENTRIES(VAR, PREFIX) \