The commit is pushed to "branch-rh7-3.10.0-123.1.2-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git after rh7-3.10.0-123.1.2.vz7.5.5 ------> commit 0c76a2a4e0e69827c118d5859001167ee231b925 Author: Vladimir Davydov <vdavy...@parallels.com> Date: Tue May 26 18:46:19 2015 +0400
ub: zap ub_reclaim_rate_limit This was used for throttling virtual swap in/out. We do not need it anymore as we do not need virtual swap, because its functionality is now implemented as a part of frontswap/tswap. If we want virtual swap in/out throttling, we should add it to tswap. Signed-off-by: Vladimir Davydov <vdavy...@parallels.com> --- include/bc/beancounter.h | 10 ---------- kernel/bc/beancounter.c | 29 ----------------------------- 2 files changed, 39 deletions(-) diff --git a/include/bc/beancounter.h b/include/bc/beancounter.h index 8e384f8..ea05b11 100644 --- a/include/bc/beancounter.h +++ b/include/bc/beancounter.h @@ -137,11 +137,6 @@ struct user_beancounter { atomic_long_t wb_requests; atomic_long_t wb_sectors; - /* reclaim rate-limit */ - spinlock_t rl_lock; - unsigned rl_step; /* ns per page */ - ktime_t rl_wall; /* wall time */ - void *private_data2; /* resources statistic and settings */ @@ -261,9 +256,6 @@ static inline void uncharge_beancounter(struct user_beancounter *ub, int resource, unsigned long val) { } #define uncharge_beancounter_fast uncharge_beancounter -static inline void ub_reclaim_rate_limit(struct user_beancounter *ub, - int wait, unsigned count) { } - #else /* CONFIG_BEANCOUNTERS */ extern struct list_head ub_list_head; @@ -510,8 +502,6 @@ int precharge_beancounter(struct user_beancounter *ub, int resource, unsigned long val); void ub_precharge_snapshot(struct user_beancounter *ub, int *precharge); -void ub_reclaim_rate_limit(struct user_beancounter *ub, int wait, unsigned count); - #define UB_IOPRIO_MIN 0 #define UB_IOPRIO_MAX 8 diff --git a/kernel/bc/beancounter.c b/kernel/bc/beancounter.c index f17eb9e..f08402e 100644 --- a/kernel/bc/beancounter.c +++ b/kernel/bc/beancounter.c @@ -883,28 +883,6 @@ out: } EXPORT_SYMBOL(precharge_beancounter); -void ub_reclaim_rate_limit(struct user_beancounter *ub, int wait, unsigned count) -{ - ktime_t wall; - u64 step; - - if (!ub->rl_step) - return; - - spin_lock(&ub->rl_lock); - step = (u64)ub->rl_step * count; - wall = ktime_add_ns(ktime_get(), step); - if (wall.tv64 < ub->rl_wall.tv64) - wall = ktime_add_ns(ub->rl_wall, step); - ub->rl_wall = wall; - spin_unlock(&ub->rl_lock); - - if (wait && get_exec_ub() == ub && !test_thread_flag(TIF_MEMDIE)) { - set_current_state(TASK_KILLABLE); - schedule_hrtimeout(&wall, HRTIMER_MODE_ABS); - } -} - /* * Initialization * @@ -924,8 +902,6 @@ static void init_beancounter_struct(struct user_beancounter *ub) spin_lock_init(&ub->ub_lock); INIT_LIST_HEAD(&ub->ub_tcp_sk_list); INIT_LIST_HEAD(&ub->ub_other_sk_list); - spin_lock_init(&ub->rl_lock); - ub->rl_wall.tv64 = LLONG_MIN; } static void init_beancounter_nolimits(struct user_beancounter *ub) @@ -944,9 +920,6 @@ static void init_beancounter_nolimits(struct user_beancounter *ub) /* FIXME: set unlimited rate? */ ub->ub_ratelimit.burst = 4; ub->ub_ratelimit.interval = 300*HZ; - - if (ub != get_ub0()) - ub->rl_step = NSEC_PER_SEC / 25600; /* 100 Mb/s */ } static void init_beancounter_syslimits(struct user_beancounter *ub) @@ -980,8 +953,6 @@ static void init_beancounter_syslimits(struct user_beancounter *ub) ub->ub_ratelimit.burst = 4; ub->ub_ratelimit.interval = 300*HZ; - - ub->rl_step = NSEC_PER_SEC / 25600; /* 100 Mb/s */ } static DEFINE_PER_CPU(struct ub_percpu_struct, ub0_percpu); _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel