From e3720944c58e8fa47474bc8c42713521865009aa Mon Sep 17 00:00:00 2001 From: xdavidwu Date: Mon, 10 Jan 2022 17:55:23 +0800 Subject: [PATCH] 5.16 --- ...se-further-the-priorities-of-SMT-sib.patch | 44 ------ ...topology-Introduce-sched_group-flags.patch | 93 ------------ ...mize-checking-for-group_asym_packing.patch | 36 ----- ...de-update_sg_lb_stats-with-sched-dom.patch | 57 ------- ...-out-logic-to-mark-a-group-for-asymm.patch | 68 --------- ...der-SMT-in-ASYM_PACKING-load-balance.patch | 143 ------------------ APKBUILD | 16 +- config | 77 +++++++--- 8 files changed, 62 insertions(+), 472 deletions(-) delete mode 100644 0001-x86-sched-Decrease-further-the-priorities-of-SMT-sib.patch delete mode 100644 0002-sched-topology-Introduce-sched_group-flags.patch delete mode 100644 0003-sched-fair-Optimize-checking-for-group_asym_packing.patch delete mode 100644 0004-sched-fair-Provide-update_sg_lb_stats-with-sched-dom.patch delete mode 100644 0005-sched-fair-Carve-out-logic-to-mark-a-group-for-asymm.patch delete mode 100644 0006-sched-fair-Consider-SMT-in-ASYM_PACKING-load-balance.patch diff --git a/0001-x86-sched-Decrease-further-the-priorities-of-SMT-sib.patch b/0001-x86-sched-Decrease-further-the-priorities-of-SMT-sib.patch deleted file mode 100644 index a6707c9..0000000 --- a/0001-x86-sched-Decrease-further-the-priorities-of-SMT-sib.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 183b8ec38f1ec6c1f8419375303bf1d09a2b8369 Mon Sep 17 00:00:00 2001 -From: Ricardo Neri -Date: Fri, 10 Sep 2021 18:18:14 -0700 -Subject: [PATCH 1/6] x86/sched: Decrease further the priorities of SMT - siblings - -When scheduling, it is better to prefer a separate physical core rather -than the SMT sibling of a high priority core. The existing formula to -compute priorities takes such fact in consideration. There may exist, -however, combinations of priorities (i.e., maximum frequencies) in which -the priority of high-numbered SMT siblings of high-priority cores collides -with the priority of low-numbered SMT siblings of low-priority cores. - -Consider for instance an SMT2 system with CPUs [0, 1] with priority 60 and -[2, 3] with priority 30(CPUs in brackets are SMT siblings. In such a case, -the resulting priorities would be [120, 60], [60, 30]. Thus, to ensure -that CPU2 has higher priority than CPU1, divide the raw priority by the -squared SMT iterator. The resulting priorities are [120, 30]. [60, 15]. - -Originally-by: Len Brown -Signed-off-by: Len Brown -Signed-off-by: Ricardo Neri -Signed-off-by: Peter Zijlstra (Intel) -Link: https://lkml.kernel.org/r/20210911011819.12184-2-ricardo.neri-calderon@linux.intel.com ---- - arch/x86/kernel/itmt.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/x86/kernel/itmt.c b/arch/x86/kernel/itmt.c -index 1afbdd1dd777..9ff480e94511 100644 ---- a/arch/x86/kernel/itmt.c -+++ b/arch/x86/kernel/itmt.c -@@ -198,7 +198,7 @@ void sched_set_itmt_core_prio(int prio, int core_cpu) - * of the priority chain and only used when - * all other high priority cpus are out of capacity. - */ -- smt_prio = prio * smp_num_siblings / i; -+ smt_prio = prio * smp_num_siblings / (i * i); - per_cpu(sched_core_priority, cpu) = smt_prio; - i++; - } --- -2.33.1 - diff --git a/0002-sched-topology-Introduce-sched_group-flags.patch b/0002-sched-topology-Introduce-sched_group-flags.patch deleted file mode 100644 index dc03fb0..0000000 --- a/0002-sched-topology-Introduce-sched_group-flags.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 16d364ba6ef2aa59b409df70682770f3ed23f7c0 Mon Sep 17 00:00:00 2001 -From: Ricardo Neri -Date: Fri, 10 Sep 2021 18:18:15 -0700 -Subject: [PATCH 2/6] sched/topology: Introduce sched_group::flags - -There exist situations in which the load balance needs to know the -properties of the CPUs in a scheduling group. When using asymmetric -packing, for instance, the load balancer needs to know not only the -state of dst_cpu but also of its SMT siblings, if any. - -Use the flags of the child scheduling domains to initialize scheduling -group flags. This will reflect the properties of the CPUs in the -group. - -A subsequent changeset will make use of these new flags. No functional -changes are introduced. - -Originally-by: Peter Zijlstra (Intel) -Signed-off-by: Ricardo Neri -Signed-off-by: Peter Zijlstra (Intel) -Reviewed-by: Joel Fernandes (Google) -Reviewed-by: Len Brown -Reviewed-by: Vincent Guittot -Link: https://lkml.kernel.org/r/20210911011819.12184-3-ricardo.neri-calderon@linux.intel.com ---- - kernel/sched/sched.h | 1 + - kernel/sched/topology.c | 21 ++++++++++++++++++--- - 2 files changed, 19 insertions(+), 3 deletions(-) - -diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h -index 198058bb54d7..e5c4d4ddd83a 100644 ---- a/kernel/sched/sched.h -+++ b/kernel/sched/sched.h -@@ -1808,6 +1808,7 @@ struct sched_group { - unsigned int group_weight; - struct sched_group_capacity *sgc; - int asym_prefer_cpu; /* CPU of highest priority in group */ -+ int flags; - - /* - * The CPUs this group covers. -diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c -index 4e8698e62f07..c56faae461d9 100644 ---- a/kernel/sched/topology.c -+++ b/kernel/sched/topology.c -@@ -716,8 +716,20 @@ cpu_attach_domain(struct sched_domain *sd, struct root_domain *rd, int cpu) - tmp = sd; - sd = sd->parent; - destroy_sched_domain(tmp); -- if (sd) -+ if (sd) { -+ struct sched_group *sg = sd->groups; -+ -+ /* -+ * sched groups hold the flags of the child sched -+ * domain for convenience. Clear such flags since -+ * the child is being destroyed. -+ */ -+ do { -+ sg->flags = 0; -+ } while (sg != sd->groups); -+ - sd->child = NULL; -+ } - } - - for (tmp = sd; tmp; tmp = tmp->parent) -@@ -916,10 +928,12 @@ build_group_from_child_sched_domain(struct sched_domain *sd, int cpu) - return NULL; - - sg_span = sched_group_span(sg); -- if (sd->child) -+ if (sd->child) { - cpumask_copy(sg_span, sched_domain_span(sd->child)); -- else -+ sg->flags = sd->child->flags; -+ } else { - cpumask_copy(sg_span, sched_domain_span(sd)); -+ } - - atomic_inc(&sg->ref); - return sg; -@@ -1169,6 +1183,7 @@ static struct sched_group *get_group(int cpu, struct sd_data *sdd) - if (child) { - cpumask_copy(sched_group_span(sg), sched_domain_span(child)); - cpumask_copy(group_balance_mask(sg), sched_group_span(sg)); -+ sg->flags = child->flags; - } else { - cpumask_set_cpu(cpu, sched_group_span(sg)); - cpumask_set_cpu(cpu, group_balance_mask(sg)); --- -2.33.1 - diff --git a/0003-sched-fair-Optimize-checking-for-group_asym_packing.patch b/0003-sched-fair-Optimize-checking-for-group_asym_packing.patch deleted file mode 100644 index 5685862..0000000 --- a/0003-sched-fair-Optimize-checking-for-group_asym_packing.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 6025643596895695956c27119c6b0bfa40d8035b Mon Sep 17 00:00:00 2001 -From: Ricardo Neri -Date: Fri, 10 Sep 2021 18:18:16 -0700 -Subject: [PATCH 3/6] sched/fair: Optimize checking for group_asym_packing - -sched_asmy_prefer() always returns false when called on the local group. By -checking local_group, we can avoid additional checks and invoking -sched_asmy_prefer() when it is not needed. No functional changes are -introduced. - -Signed-off-by: Ricardo Neri -Signed-off-by: Peter Zijlstra (Intel) -Reviewed-by: Joel Fernandes (Google) -Reviewed-by: Len Brown -Reviewed-by: Vincent Guittot -Link: https://lkml.kernel.org/r/20210911011819.12184-4-ricardo.neri-calderon@linux.intel.com ---- - kernel/sched/fair.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index 71b30ef31110..e050b1d92efe 100644 ---- a/kernel/sched/fair.c -+++ b/kernel/sched/fair.c -@@ -8631,7 +8631,7 @@ static inline void update_sg_lb_stats(struct lb_env *env, - } - - /* Check if dst CPU is idle and preferred to this group */ -- if (env->sd->flags & SD_ASYM_PACKING && -+ if (!local_group && env->sd->flags & SD_ASYM_PACKING && - env->idle != CPU_NOT_IDLE && - sgs->sum_h_nr_running && - sched_asym_prefer(env->dst_cpu, group->asym_prefer_cpu)) { --- -2.33.1 - diff --git a/0004-sched-fair-Provide-update_sg_lb_stats-with-sched-dom.patch b/0004-sched-fair-Provide-update_sg_lb_stats-with-sched-dom.patch deleted file mode 100644 index 8b2280e..0000000 --- a/0004-sched-fair-Provide-update_sg_lb_stats-with-sched-dom.patch +++ /dev/null @@ -1,57 +0,0 @@ -From c0d14b57fe0c11b65ce8a1a4a58a48f3f324ca0f Mon Sep 17 00:00:00 2001 -From: Ricardo Neri -Date: Fri, 10 Sep 2021 18:18:17 -0700 -Subject: [PATCH 4/6] sched/fair: Provide update_sg_lb_stats() with sched - domain statistics - -Before deciding to pull tasks when using asymmetric packing of tasks, -on some architectures (e.g., x86) it is necessary to know not only the -state of dst_cpu but also of its SMT siblings. The decision to classify -a candidate busiest group as group_asym_packing is done in -update_sg_lb_stats(). Give this function access to the scheduling domain -statistics, which contains the statistics of the local group. - -Originally-by: Peter Zijlstra (Intel) -Signed-off-by: Ricardo Neri -Signed-off-by: Peter Zijlstra (Intel) -Reviewed-by: Joel Fernandes (Google) -Reviewed-by: Len Brown -Reviewed-by: Vincent Guittot -Link: https://lkml.kernel.org/r/20210911011819.12184-5-ricardo.neri-calderon@linux.intel.com ---- - kernel/sched/fair.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index e050b1d92efe..2e8ef337c7d4 100644 ---- a/kernel/sched/fair.c -+++ b/kernel/sched/fair.c -@@ -8579,6 +8579,7 @@ group_type group_classify(unsigned int imbalance_pct, - * @sg_status: Holds flag indicating the status of the sched_group - */ - static inline void update_sg_lb_stats(struct lb_env *env, -+ struct sd_lb_stats *sds, - struct sched_group *group, - struct sg_lb_stats *sgs, - int *sg_status) -@@ -8587,7 +8588,7 @@ static inline void update_sg_lb_stats(struct lb_env *env, - - memset(sgs, 0, sizeof(*sgs)); - -- local_group = cpumask_test_cpu(env->dst_cpu, sched_group_span(group)); -+ local_group = group == sds->local; - - for_each_cpu_and(i, sched_group_span(group), env->cpus) { - struct rq *rq = cpu_rq(i); -@@ -9150,7 +9151,7 @@ static inline void update_sd_lb_stats(struct lb_env *env, struct sd_lb_stats *sd - update_group_capacity(env->sd, env->dst_cpu); - } - -- update_sg_lb_stats(env, sg, sgs, &sg_status); -+ update_sg_lb_stats(env, sds, sg, sgs, &sg_status); - - if (local_group) - goto next_group; --- -2.33.1 - diff --git a/0005-sched-fair-Carve-out-logic-to-mark-a-group-for-asymm.patch b/0005-sched-fair-Carve-out-logic-to-mark-a-group-for-asymm.patch deleted file mode 100644 index fbd27d9..0000000 --- a/0005-sched-fair-Carve-out-logic-to-mark-a-group-for-asymm.patch +++ /dev/null @@ -1,68 +0,0 @@ -From aafc917a3c31dcc76cb0279cd7617dda11b15f2a Mon Sep 17 00:00:00 2001 -From: Ricardo Neri -Date: Fri, 10 Sep 2021 18:18:18 -0700 -Subject: [PATCH 5/6] sched/fair: Carve out logic to mark a group for - asymmetric packing - -Create a separate function, sched_asym(). A subsequent changeset will -introduce logic to deal with SMT in conjunction with asmymmetric -packing. Such logic will need the statistics of the scheduling -group provided as argument. Update them before calling sched_asym(). - -Co-developed-by: Peter Zijlstra (Intel) -Signed-off-by: Ricardo Neri -Signed-off-by: Peter Zijlstra (Intel) -Reviewed-by: Joel Fernandes (Google) -Reviewed-by: Len Brown -Reviewed-by: Vincent Guittot -Link: https://lkml.kernel.org/r/20210911011819.12184-6-ricardo.neri-calderon@linux.intel.com ---- - kernel/sched/fair.c | 20 +++++++++++++------- - 1 file changed, 13 insertions(+), 7 deletions(-) - -diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index 2e8ef337c7d4..1c8b5fa58c23 100644 ---- a/kernel/sched/fair.c -+++ b/kernel/sched/fair.c -@@ -8571,6 +8571,13 @@ group_type group_classify(unsigned int imbalance_pct, - return group_has_spare; - } - -+static inline bool -+sched_asym(struct lb_env *env, struct sd_lb_stats *sds, struct sg_lb_stats *sgs, -+ struct sched_group *group) -+{ -+ return sched_asym_prefer(env->dst_cpu, group->asym_prefer_cpu); -+} -+ - /** - * update_sg_lb_stats - Update sched_group's statistics for load balancing. - * @env: The load balancing environment. -@@ -8631,18 +8638,17 @@ static inline void update_sg_lb_stats(struct lb_env *env, - } - } - -+ sgs->group_capacity = group->sgc->capacity; -+ -+ sgs->group_weight = group->group_weight; -+ - /* Check if dst CPU is idle and preferred to this group */ - if (!local_group && env->sd->flags & SD_ASYM_PACKING && -- env->idle != CPU_NOT_IDLE && -- sgs->sum_h_nr_running && -- sched_asym_prefer(env->dst_cpu, group->asym_prefer_cpu)) { -+ env->idle != CPU_NOT_IDLE && sgs->sum_h_nr_running && -+ sched_asym(env, sds, sgs, group)) { - sgs->group_asym_packing = 1; - } - -- sgs->group_capacity = group->sgc->capacity; -- -- sgs->group_weight = group->group_weight; -- - sgs->group_type = group_classify(env->sd->imbalance_pct, group, sgs); - - /* Computing avg_load makes sense only when group is overloaded */ --- -2.33.1 - diff --git a/0006-sched-fair-Consider-SMT-in-ASYM_PACKING-load-balance.patch b/0006-sched-fair-Consider-SMT-in-ASYM_PACKING-load-balance.patch deleted file mode 100644 index 1b8ca07..0000000 --- a/0006-sched-fair-Consider-SMT-in-ASYM_PACKING-load-balance.patch +++ /dev/null @@ -1,143 +0,0 @@ -From 4006a72bdd93b1ffedc2bd8646dee18c822a2c26 Mon Sep 17 00:00:00 2001 -From: Ricardo Neri -Date: Fri, 10 Sep 2021 18:18:19 -0700 -Subject: [PATCH 6/6] sched/fair: Consider SMT in ASYM_PACKING load balance - -When deciding to pull tasks in ASYM_PACKING, it is necessary not only to -check for the idle state of the destination CPU, dst_cpu, but also of -its SMT siblings. - -If dst_cpu is idle but its SMT siblings are busy, performance suffers -if it pulls tasks from a medium priority CPU that does not have SMT -siblings. - -Implement asym_smt_can_pull_tasks() to inspect the state of the SMT -siblings of both dst_cpu and the CPUs in the candidate busiest group. - -Signed-off-by: Ricardo Neri -Signed-off-by: Peter Zijlstra (Intel) -Reviewed-by: Joel Fernandes (Google) -Reviewed-by: Len Brown -Reviewed-by: Vincent Guittot -Link: https://lkml.kernel.org/r/20210911011819.12184-7-ricardo.neri-calderon@linux.intel.com ---- - kernel/sched/fair.c | 92 +++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 92 insertions(+) - -diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index 1c8b5fa58c23..c50ae23013dc 100644 ---- a/kernel/sched/fair.c -+++ b/kernel/sched/fair.c -@@ -8571,10 +8571,96 @@ group_type group_classify(unsigned int imbalance_pct, - return group_has_spare; - } - -+/** -+ * asym_smt_can_pull_tasks - Check whether the load balancing CPU can pull tasks -+ * @dst_cpu: Destination CPU of the load balancing -+ * @sds: Load-balancing data with statistics of the local group -+ * @sgs: Load-balancing statistics of the candidate busiest group -+ * @sg: The candidate busiest group -+ * -+ * Check the state of the SMT siblings of both @sds::local and @sg and decide -+ * if @dst_cpu can pull tasks. -+ * -+ * If @dst_cpu does not have SMT siblings, it can pull tasks if two or more of -+ * the SMT siblings of @sg are busy. If only one CPU in @sg is busy, pull tasks -+ * only if @dst_cpu has higher priority. -+ * -+ * If both @dst_cpu and @sg have SMT siblings, and @sg has exactly one more -+ * busy CPU than @sds::local, let @dst_cpu pull tasks if it has higher priority. -+ * Bigger imbalances in the number of busy CPUs will be dealt with in -+ * update_sd_pick_busiest(). -+ * -+ * If @sg does not have SMT siblings, only pull tasks if all of the SMT siblings -+ * of @dst_cpu are idle and @sg has lower priority. -+ */ -+static bool asym_smt_can_pull_tasks(int dst_cpu, struct sd_lb_stats *sds, -+ struct sg_lb_stats *sgs, -+ struct sched_group *sg) -+{ -+#ifdef CONFIG_SCHED_SMT -+ bool local_is_smt, sg_is_smt; -+ int sg_busy_cpus; -+ -+ local_is_smt = sds->local->flags & SD_SHARE_CPUCAPACITY; -+ sg_is_smt = sg->flags & SD_SHARE_CPUCAPACITY; -+ -+ sg_busy_cpus = sgs->group_weight - sgs->idle_cpus; -+ -+ if (!local_is_smt) { -+ /* -+ * If we are here, @dst_cpu is idle and does not have SMT -+ * siblings. Pull tasks if candidate group has two or more -+ * busy CPUs. -+ */ -+ if (sg_busy_cpus >= 2) /* implies sg_is_smt */ -+ return true; -+ -+ /* -+ * @dst_cpu does not have SMT siblings. @sg may have SMT -+ * siblings and only one is busy. In such case, @dst_cpu -+ * can help if it has higher priority and is idle (i.e., -+ * it has no running tasks). -+ */ -+ return sched_asym_prefer(dst_cpu, sg->asym_prefer_cpu); -+ } -+ -+ /* @dst_cpu has SMT siblings. */ -+ -+ if (sg_is_smt) { -+ int local_busy_cpus = sds->local->group_weight - -+ sds->local_stat.idle_cpus; -+ int busy_cpus_delta = sg_busy_cpus - local_busy_cpus; -+ -+ if (busy_cpus_delta == 1) -+ return sched_asym_prefer(dst_cpu, sg->asym_prefer_cpu); -+ -+ return false; -+ } -+ -+ /* -+ * @sg does not have SMT siblings. Ensure that @sds::local does not end -+ * up with more than one busy SMT sibling and only pull tasks if there -+ * are not busy CPUs (i.e., no CPU has running tasks). -+ */ -+ if (!sds->local_stat.sum_nr_running) -+ return sched_asym_prefer(dst_cpu, sg->asym_prefer_cpu); -+ -+ return false; -+#else -+ /* Always return false so that callers deal with non-SMT cases. */ -+ return false; -+#endif -+} -+ - static inline bool - sched_asym(struct lb_env *env, struct sd_lb_stats *sds, struct sg_lb_stats *sgs, - struct sched_group *group) - { -+ /* Only do SMT checks if either local or candidate have SMT siblings */ -+ if ((sds->local->flags & SD_SHARE_CPUCAPACITY) || -+ (group->flags & SD_SHARE_CPUCAPACITY)) -+ return asym_smt_can_pull_tasks(env->dst_cpu, sds, sgs, group); -+ - return sched_asym_prefer(env->dst_cpu, group->asym_prefer_cpu); - } - -@@ -9580,6 +9666,12 @@ static struct rq *find_busiest_queue(struct lb_env *env, - nr_running == 1) - continue; - -+ /* Make sure we only pull tasks from a CPU of lower priority */ -+ if ((env->sd->flags & SD_ASYM_PACKING) && -+ sched_asym_prefer(i, env->dst_cpu) && -+ nr_running == 1) -+ continue; -+ - switch (env->migration_type) { - case migrate_load: - /* --- -2.33.1 - diff --git a/APKBUILD b/APKBUILD index da38e23..ec42d3a 100644 --- a/APKBUILD +++ b/APKBUILD @@ -1,6 +1,6 @@ # Maintainer: xdavidwu pkgname=linux-xdavidwu-xps -pkgver=5.15.13 +pkgver=5.16 pkgrel=0 pkgdesc="Linux kernel customized for xps" url="https://www.kernel.org/" @@ -15,12 +15,6 @@ source="https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${pkgver}.tar.xz config fast_skylake.patch openwrt-402-ath_regd_optional.patch - 0001-x86-sched-Decrease-further-the-priorities-of-SMT-sib.patch - 0002-sched-topology-Introduce-sched_group-flags.patch - 0003-sched-fair-Optimize-checking-for-group_asym_packing.patch - 0004-sched-fair-Provide-update_sg_lb_stats-with-sched-dom.patch - 0005-sched-fair-Carve-out-logic-to-mark-a-group-for-asymm.patch - 0006-sched-fair-Consider-SMT-in-ASYM_PACKING-load-balance.patch 0101-i8042-decrease-debug-message-level-to-info.patch 0102-increase-the-ext4-default-commit-age.patch 0103-silence-rapl.patch @@ -68,16 +62,10 @@ package() { } sha512sums=" -0775216f9a5f828b23bb8f96810ac65d178aeede0d1ee258a01b6f83f4a145809ab6699fa07aa07721e118cf0b608ee98885fe76be07b8707a2f9cd1c0833ae5 linux-5.15.13.tar.xz +7a257dd576bc8493595ec7d6f3c9cb6e22c772a8b2dbe735d2485c4f5c56e26a08695546e7e0f1f1cd04a533f25e829361958d4da0b98bf0ba8094dd57a85aaf linux-5.16.tar.xz 34e33b88ef00a707c19b10076d0c51e6c3b7ef01d988540f1405785165978a605425249375a65005ca17f89c217cd0fb24a1a95bd80be7755d1f88c6e85bb638 config cb786c1fa30ab88020988929cfb71bac9164154bfe67f977654f14315d913e3c6dfa7c99c89b02ee7663d5c0817e22d4cc5c57288b7fa6c46333b0cac8acc618 fast_skylake.patch c0c5d023cac625dfe3086b37b5abb4be8981db301a468e93d495c08b7650debbf47b7a24c39293731951315658164e36783e5a46fb26fc51ed6fc72e3716307c openwrt-402-ath_regd_optional.patch -38fa3f0c23ade9d4dfa379db5ed741775aff69079f3c48ec48f6fd39b52b01bd78822ba70db5925f7b5cf902a41ba57516dc56e33d481a6fe5597817c18d374c 0001-x86-sched-Decrease-further-the-priorities-of-SMT-sib.patch -567b65cba23e5dfe2b026b8f4608dd14aef03960d49d4e97845ebed2c4dbc4a59d5b890ac9b007ca05553cd4d9db1b1d0fb427eebabcb0f60a6b77cd45c49ebf 0002-sched-topology-Introduce-sched_group-flags.patch -50a2be9cccdea8fc6cf0a698e41b2a5ee40815f97796e1e2ea0dd4598547a731ad2ccec752de10c5ea47fc735216b4bf665a917acbdec79d9eccbf8afbf9a579 0003-sched-fair-Optimize-checking-for-group_asym_packing.patch -b07269f30102c5a760a86533ab4611319e06c42d01d65baafc13226ad22ca99eaf2593acc0521b5c0035c8fafb048595c3479073c3dd80e10914193b77d15d91 0004-sched-fair-Provide-update_sg_lb_stats-with-sched-dom.patch -bc7557fa7e494fbc003fae2f7f7e64a88dc0230aca8d19e2215a0da3015ef1a5bf3eef29f03f7a88d8043dd8860101d300a77e57b0a2335bad8702a0002407e4 0005-sched-fair-Carve-out-logic-to-mark-a-group-for-asymm.patch -76e19461eceb22fbb89b650737bfa11843377521dd7a6eb36f2351664ed4d1bf7272130eb863eeac1ac20eb9a8e68c74717adb8d700589e19549ca576db3199c 0006-sched-fair-Consider-SMT-in-ASYM_PACKING-load-balance.patch 7a26ba37bd384da0f32c0b2f545357f010c2287601e9b5d6e3cfe7109f5eb21c9de221ba0d15df0fa190ca40062bc556ec98366dd40c1232992c2a6320dda3a1 0101-i8042-decrease-debug-message-level-to-info.patch 5c8b294f64465136a5c5b954b72c8fa21a7936254fe7ecd2e5d9b71e443a242dd44e9cb4022bb9bd906fb4c908300ada75e37766a74a74cac91c483bda707e9d 0102-increase-the-ext4-default-commit-age.patch 185c63f34dd8da41abefd836bdc2ca423de693104901a8b1c213f6456e8e1661c5f9ba46a93769fc635f0226275aac4127f9432c42c8532bed21da968179adee 0103-silence-rapl.patch diff --git a/config b/config index 95ca7e8..0167d6b 100644 --- a/config +++ b/config @@ -1,15 +1,15 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 5.15.0-1 Kernel Configuration +# Linux/x86 5.16.0 Kernel Configuration # -CONFIG_CC_VERSION_TEXT="gcc (GCC) 11.1.0" +CONFIG_CC_VERSION_TEXT="gcc (Alpine 11.2.1_git20220106) 11.2.1 20220106" CONFIG_CC_IS_GCC=y -CONFIG_GCC_VERSION=110100 +CONFIG_GCC_VERSION=110201 CONFIG_CLANG_VERSION=0 CONFIG_AS_IS_GNU=y -CONFIG_AS_VERSION=23601 +CONFIG_AS_VERSION=23700 CONFIG_LD_IS_BFD=y -CONFIG_LD_VERSION=23601 +CONFIG_LD_VERSION=23700 CONFIG_LLD_VERSION=0 CONFIG_CC_CAN_LINK=y CONFIG_CC_CAN_LINK_STATIC=y @@ -113,6 +113,7 @@ CONFIG_BPF_SYSCALL=y # CONFIG_BPF_PRELOAD is not set # end of BPF subsystem +CONFIG_PREEMPT_BUILD=y # CONFIG_PREEMPT_NONE is not set # CONFIG_PREEMPT_VOLUNTARY is not set CONFIG_PREEMPT=y @@ -170,6 +171,7 @@ CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y CONFIG_CC_HAS_INT128=y +CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5" CONFIG_ARCH_SUPPORTS_INT128=y CONFIG_CGROUPS=y CONFIG_PAGE_COUNTER=y @@ -354,6 +356,7 @@ CONFIG_NR_CPUS_RANGE_BEGIN=2 CONFIG_NR_CPUS_RANGE_END=512 CONFIG_NR_CPUS_DEFAULT=64 CONFIG_NR_CPUS=320 +CONFIG_SCHED_CLUSTER=y CONFIG_SCHED_SMT=y # CONFIG_SCHED_MC is not set CONFIG_X86_LOCAL_APIC=y @@ -426,6 +429,7 @@ CONFIG_HOTPLUG_CPU=y CONFIG_LEGACY_VSYSCALL_NONE=y # CONFIG_CMDLINE_BOOL is not set # CONFIG_MODIFY_LDT_SYSCALL is not set +# CONFIG_STRICT_SIGALTSTACK_SIZE is not set CONFIG_HAVE_LIVEPATCH=y # end of Processor type and features @@ -588,6 +592,7 @@ CONFIG_HAVE_KPROBES=y CONFIG_HAVE_KRETPROBES=y CONFIG_HAVE_OPTPROBES=y CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y CONFIG_HAVE_NMI=y CONFIG_TRACE_IRQFLAGS_SUPPORT=y @@ -653,6 +658,7 @@ CONFIG_ARCH_MMAP_RND_BITS=28 CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y +CONFIG_PAGE_SIZE_LESS_THAN_64KB=y CONFIG_HAVE_STACK_VALIDATION=y CONFIG_HAVE_RELIABLE_STACKTRACE=y CONFIG_OLD_SIGSUSPEND3=y @@ -667,6 +673,7 @@ CONFIG_STRICT_KERNEL_RWX=y CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y CONFIG_STRICT_MODULE_RWX=y CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y +CONFIG_ARCH_USE_MEMREMAP_PROT=y # CONFIG_LOCK_EVENT_COUNTS is not set CONFIG_ARCH_HAS_MEM_ENCRYPT=y CONFIG_HAVE_STATIC_CALL=y @@ -676,6 +683,7 @@ CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y CONFIG_ARCH_HAS_ELFCORE_COMPAT=y CONFIG_ARCH_HAS_PARANOID_L1D_FLUSH=y +CONFIG_DYNAMIC_SIGFRAME=y # # GCOV-based kernel profiling @@ -791,6 +799,7 @@ CONFIG_SPARSEMEM_EXTREME=y CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y CONFIG_SPARSEMEM_VMEMMAP=y CONFIG_HAVE_FAST_GUP=y +CONFIG_EXCLUSIVE_SYSTEM_RAM=y CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y # CONFIG_MEMORY_HOTPLUG is not set CONFIG_SPLIT_PTLOCK_CPUS=4 @@ -907,6 +916,7 @@ CONFIG_BRIDGE_NETFILTER=m # Core Netfilter Configuration # # CONFIG_NETFILTER_INGRESS is not set +# CONFIG_NETFILTER_EGRESS is not set CONFIG_NETFILTER_FAMILY_BRIDGE=y # CONFIG_NETFILTER_NETLINK_ACCT is not set # CONFIG_NETFILTER_NETLINK_QUEUE is not set @@ -1383,7 +1393,6 @@ CONFIG_ZRAM_DEF_COMP="lzo-rle" # CONFIG_ZRAM_MEMORY_TRACKING is not set CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=0 -# CONFIG_BLK_DEV_CRYPTOLOOP is not set # CONFIG_BLK_DEV_DRBD is not set # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_SX8 is not set @@ -1458,6 +1467,7 @@ CONFIG_MISC_RTSX=m # CONFIG_INTEL_MEI_ME is not set # CONFIG_INTEL_MEI_TXE is not set # CONFIG_INTEL_MEI_HDCP is not set +# CONFIG_INTEL_MEI_PXP is not set # CONFIG_VMWARE_VMCI is not set # CONFIG_GENWQE is not set # CONFIG_ECHO is not set @@ -1569,6 +1579,7 @@ CONFIG_ETHERNET=y # CONFIG_NET_VENDOR_AMD is not set # CONFIG_NET_VENDOR_AQUANTIA is not set # CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ASIX is not set # CONFIG_NET_VENDOR_ATHEROS is not set CONFIG_NET_VENDOR_BROADCOM=y # CONFIG_B44 is not set @@ -1862,6 +1873,7 @@ CONFIG_KEYBOARD_ATKBD=y # CONFIG_KEYBOARD_SUNKBD is not set # CONFIG_KEYBOARD_TM2_TOUCHKEY is not set # CONFIG_KEYBOARD_XTKBD is not set +# CONFIG_KEYBOARD_CYPRESS_SF is not set CONFIG_INPUT_MOUSE=y # CONFIG_MOUSE_PS2 is not set # CONFIG_MOUSE_SERIAL is not set @@ -2237,6 +2249,7 @@ CONFIG_SENSORS_CORETEMP=m # CONFIG_SENSORS_MAX1668 is not set # CONFIG_SENSORS_MAX197 is not set # CONFIG_SENSORS_MAX31730 is not set +# CONFIG_SENSORS_MAX6620 is not set # CONFIG_SENSORS_MAX6621 is not set # CONFIG_SENSORS_MAX6639 is not set # CONFIG_SENSORS_MAX6642 is not set @@ -2425,7 +2438,13 @@ CONFIG_MFD_INTEL_LPSS_PCI=m # CONFIG_REGULATOR is not set # CONFIG_RC_CORE is not set + +# +# CEC support +# # CONFIG_MEDIA_CEC_SUPPORT is not set +# end of CEC support + CONFIG_MEDIA_SUPPORT=m CONFIG_MEDIA_SUPPORT_FILTER=y CONFIG_MEDIA_SUBDRV_AUTOSELECT=y @@ -2598,6 +2617,7 @@ CONFIG_VIDEOBUF2_VMALLOC=m # Camera sensor devices # # CONFIG_VIDEO_HI556 is not set +# CONFIG_VIDEO_HI846 is not set # CONFIG_VIDEO_IMX219 is not set # CONFIG_VIDEO_IMX258 is not set # CONFIG_VIDEO_IMX274 is not set @@ -2626,6 +2646,7 @@ CONFIG_VIDEOBUF2_VMALLOC=m # CONFIG_VIDEO_OV9650 is not set # CONFIG_VIDEO_OV9734 is not set # CONFIG_VIDEO_OV13858 is not set +# CONFIG_VIDEO_OV13B10 is not set # CONFIG_VIDEO_VS6624 is not set # CONFIG_VIDEO_MT9M001 is not set # CONFIG_VIDEO_MT9M032 is not set @@ -2686,6 +2707,7 @@ CONFIG_DRM_MIPI_DSI=y # CONFIG_DRM_DEBUG_SELFTEST is not set CONFIG_DRM_KMS_HELPER=m # CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set +# CONFIG_DRM_DEBUG_MODESET_LOCK is not set CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 # CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set @@ -3059,6 +3081,7 @@ CONFIG_HID_GENERIC=m # CONFIG_HID_UCLOGIC is not set # CONFIG_HID_WALTOP is not set # CONFIG_HID_VIEWSONIC is not set +# CONFIG_HID_XIAOMI is not set # CONFIG_HID_GYRATION is not set # CONFIG_HID_ICADE is not set # CONFIG_HID_ITE is not set @@ -3076,6 +3099,8 @@ CONFIG_HID_GENERIC=m # CONFIG_HID_MICROSOFT is not set # CONFIG_HID_MONTEREY is not set CONFIG_HID_MULTITOUCH=m +CONFIG_HID_NINTENDO=m +CONFIG_NINTENDO_FF=y # CONFIG_HID_NTI is not set # CONFIG_HID_NTRIG is not set # CONFIG_HID_ORTEK is not set @@ -3084,7 +3109,6 @@ CONFIG_HID_MULTITOUCH=m # CONFIG_HID_PETALYNX is not set # CONFIG_HID_PICOLCD is not set # CONFIG_HID_PLANTRONICS is not set -# CONFIG_HID_PLAYSTATION is not set # CONFIG_HID_PRIMAX is not set # CONFIG_HID_RETRODE is not set # CONFIG_HID_ROCCAT is not set @@ -3289,6 +3313,7 @@ CONFIG_TYPEC_UCSI=m # CONFIG_UCSI_CCG is not set CONFIG_UCSI_ACPI=m # CONFIG_TYPEC_TPS6598X is not set +# CONFIG_TYPEC_STUSB160X is not set # # USB Type-C Multiplexer/DeMultiplexer Switch support @@ -3520,6 +3545,7 @@ CONFIG_ACPI_WMI=m # CONFIG_HUAWEI_WMI is not set # CONFIG_MXM_WMI is not set # CONFIG_PEAQ_WMI is not set +# CONFIG_NVIDIA_WMI_EC_BACKLIGHT is not set # CONFIG_XIAOMI_WMI is not set # CONFIG_GIGABYTE_WMI is not set # CONFIG_ACERHDF is not set @@ -3558,7 +3584,25 @@ CONFIG_DELL_WMI_SYSMAN=m # CONFIG_SENSORS_HDAPS is not set # CONFIG_THINKPAD_ACPI is not set # CONFIG_THINKPAD_LMI is not set -# CONFIG_X86_PLATFORM_DRIVERS_INTEL is not set +# CONFIG_INTEL_ATOMISP2_PM is not set +# CONFIG_INTEL_SAR_INT1092 is not set +CONFIG_INTEL_PMC_CORE=m + +# +# Intel Speed Select Technology interface support +# +# CONFIG_INTEL_SPEED_SELECT_INTERFACE is not set +# end of Intel Speed Select Technology interface support + +# CONFIG_INTEL_WMI_SBL_FW_UPDATE is not set +# CONFIG_INTEL_WMI_THUNDERBOLT is not set +# CONFIG_INTEL_HID_EVENT is not set +# CONFIG_INTEL_VBTN is not set +# CONFIG_INTEL_OAKTRAIL is not set +# CONFIG_INTEL_PUNIT_IPC is not set +# CONFIG_INTEL_RST is not set +# CONFIG_INTEL_SMARTCONNECT is not set +# CONFIG_INTEL_UNCORE_FREQ_CONTROL is not set # CONFIG_MSI_LAPTOP is not set # CONFIG_MSI_WMI is not set # CONFIG_SAMSUNG_LAPTOP is not set @@ -3586,14 +3630,6 @@ CONFIG_PMC_ATOM=y CONFIG_HAVE_CLK=y CONFIG_HAVE_CLK_PREPARE=y CONFIG_COMMON_CLK=y - -# -# Clock driver for ARM Reference designs -# -# CONFIG_ICST is not set -# CONFIG_CLK_SP810 is not set -# end of Clock driver for ARM Reference designs - # CONFIG_COMMON_CLK_MAX9485 is not set # CONFIG_COMMON_CLK_SI5341 is not set # CONFIG_COMMON_CLK_SI5351 is not set @@ -3691,7 +3727,13 @@ CONFIG_CLKBLD_I8253=y # CONFIG_GENERIC_PHY is not set # CONFIG_USB_LGM_PHY is not set # CONFIG_PHY_CAN_TRANSCEIVER is not set + +# +# PHY drivers for Broadcom platforms +# # CONFIG_BCM_KONA_USB2_PHY is not set +# end of PHY drivers for Broadcom platforms + # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set # CONFIG_PHY_INTEL_LGM_EMMC is not set @@ -4424,7 +4466,6 @@ CONFIG_RCU_CPU_STALL_TIMEOUT=60 CONFIG_USER_STACKTRACE_SUPPORT=y CONFIG_NOP_TRACER=y CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y CONFIG_HAVE_DYNAMIC_FTRACE=y CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y CONFIG_HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS=y @@ -4471,6 +4512,8 @@ CONFIG_BLK_DEV_IO_TRACE=y # CONFIG_PREEMPTIRQ_DELAY_TEST is not set # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set # CONFIG_SAMPLES is not set +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y +CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y CONFIG_STRICT_DEVMEM=y CONFIG_IO_STRICT_DEVMEM=y -- 2.45.2