diff --git a/kernel/sched/core.c b/kernel/sched/core.c index eb40b0d27bbed2379384eaffcbc69f726fcec694..c8a6c7e191ba610c4e9f4f263439b40ae6b41567 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -8870,10 +8870,8 @@ static int tg_set_cfs_bandwidth(struct task_group *tg, u64 period, u64 quota, if (quota != RUNTIME_INF && quota > max_cfs_runtime) return -EINVAL; - /* - * Bound burst to defend burst against overflow during bandwidth shift. - */ - if (burst > max_cfs_runtime) + if (quota != RUNTIME_INF && (burst > quota || + burst + quota > max_cfs_runtime)) return -EINVAL; /*