Centos-kernel-stream-9/kernel
David Arcari 306c769042 PM: EM: Add function for registering a PD without capacity update
JIRA: https://issues.redhat.com/browse/RHEL-112493

commit e0423541477dfb684fbc6e6b5386054bc650f264
Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Date:   Fri Sep 5 15:44:45 2025 +0200

    PM: EM: Add function for registering a PD without capacity update

    The intel_pstate driver manages CPU capacity changes itself and it does
    not need an update of the capacity of all CPUs in the system to be
    carried out after registering a PD.

    Moreover, in some configurations (for instance, an SMT-capable
    hybrid x86 system booted with nosmt in the kernel command line) the
    em_check_capacity_update() call at the end of em_dev_register_perf_domain()
    always fails and reschedules itself to run once again in 1 s, so
    effectively it runs in vain every 1 s forever.

    To address this, introduce a new variant of em_dev_register_perf_domain(),
    called em_dev_register_pd_no_update(), that does not invoke
    em_check_capacity_update(), and make intel_pstate use it instead of the
    original.

    Fixes: 7b010f9b9061 ("cpufreq: intel_pstate: EAS support for hybrid platforms")
    Closes: https://lore.kernel.org/linux-pm/40212796-734c-4140-8a85-854f72b8144d@panix.com/
    Reported-by: Kenneth R. Crudup <kenny@panix.com>
    Tested-by: Kenneth R. Crudup <kenny@panix.com>
    Cc: 6.16+ <stable@vger.kernel.org> # 6.16+
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

Signed-off-by: David Arcari <darcari@redhat.com>
2025-09-12 07:45:13 -04:00
..
bpf Merge: bpf: Allow to use kfunc XDP hints and frags together 2025-07-21 18:52:48 -03:00
cgroup KVM: TDX: Register TDX host key IDs to cgroup misc controller 2025-07-15 19:12:38 +02:00
configs mm/slab: rename CONFIG_SLAB to CONFIG_SLAB_DEPRECATED 2024-09-05 20:35:59 -04:00
debug
dma dma-mapping: fix swapped dir/flags arguments to trace_dma_alloc_sgt_err 2025-04-03 09:22:41 -07:00
entry treewide: context_tracking: Rename CONTEXT_* into CT_STATE_* 2025-07-10 10:20:35 +02:00
events Merge: perf: Add Processor Trace Trigger Tracing and several Intel TH fixes 2025-07-28 12:55:40 -03:00
futex fault-inject: improve build for CONFIG_FAULT_INJECTION=n 2024-12-17 22:59:23 +01:00
gcov
irq genirq/msi: Silence 'set affinity failed' warning 2025-02-18 09:48:09 -07:00
kcsan
livepatch livepatch: Add stack_order sysfs attribute 2025-04-03 13:23:15 -04:00
locking Merge: Update locking/futex to v6.12 2025-08-19 16:32:53 -07:00
module audit,module: restore audit logging in load failure case 2025-08-07 14:06:27 -04:00
power PM: EM: Add function for registering a PD without capacity update 2025-09-12 07:45:13 -04:00
printk Flush console log from kernel_power_off() 2025-05-02 11:11:41 -04:00
rcu Merge: Update rcu to v6.12 2025-07-30 15:15:18 -03:00
sched PM: EM: Move sched domains rebuild function from schedutil to EM 2025-09-04 08:38:00 -04:00
time Merge: Update rcu to v6.12 2025-07-30 15:15:18 -03:00
trace Merge: bpf: stable backports for 9.7 (phase 2) 2025-08-18 17:05:05 -07:00
.gitignore
Kconfig.freezer
Kconfig.hz
Kconfig.kexec crash: clean up kdump related config items 2024-12-23 09:35:35 +08:00
Kconfig.locks
Kconfig.preempt
Makefile Merge: RHEL9.6 drm backport dependencies 2025-01-06 08:26:14 +00:00
acct.c acct: perform last write from workqueue 2025-04-16 23:24:17 -04:00
async.c
audit.c audit: Reorganize kerneldoc parameter names 2025-05-21 13:27:22 -03:00
audit.h audit,module: restore audit logging in load failure case 2025-08-07 14:06:27 -04:00
audit_fsnotify.c fsnotify: make allow_dups a property of the group 2025-07-07 17:32:17 +02:00
audit_tree.c fsnotify: pass flags argument to fsnotify_alloc_group() 2025-07-07 17:32:17 +02:00
audit_watch.c fsnotify: pass flags argument to fsnotify_alloc_group() 2025-07-07 17:32:17 +02:00
auditfilter.c audit: fix suffixed '/' filename matching 2025-05-21 13:27:45 -03:00
auditsc.c audit,module: restore audit logging in load failure case 2025-08-07 14:06:27 -04:00
backtracetest.c
bounds.c
capability.c fs: port i_{g,u}id_into_vfs{g,u}id() to mnt_idmap 2024-10-16 11:02:01 +08:00
cfi.c
compat.c
configs.c
context_tracking.c context_tracking, rcu: Rename rcu_dyntick trace event into 2025-07-10 10:20:37 +02:00
cpu.c Merge: HyperV rebase to kernel 6.16-rc1 2025-07-15 15:53:50 -03:00
cpu_pm.c
crash_core.c Document/kexec: generalize crash hotplug description 2024-12-23 09:35:36 +08:00
crash_reserve.c crash: add prefix for crash dumping messages 2024-12-23 09:35:36 +08:00
cred.c
delayacct.c delayacct: track delays from IRQ/SOFTIRQ 2024-07-15 11:12:08 -04:00
dma.c
elfcorehdr.c crash: remove dependency of FA_DUMP on CRASH_DUMP 2024-12-23 09:35:35 +08:00
exec_domain.c
exit.c lazy tlb: introduce lazy tlb mm refcount helper functions 2024-11-04 09:14:17 -05:00
exit.h exit: add internal include file with helpers 2024-07-02 09:45:34 -04:00
extable.c
fail_function.c
fork.c cgroup/cpuset: Remove cpuset_slab_spread_rotor 2025-04-28 10:54:33 +01:00
freezer.c
gen_kheaders.sh
groups.c
hung_task.c
iomem.c mm: move is_ioremap_addr() into new header file 2024-10-01 11:17:52 -04:00
irq_work.c kasan: make kasan_record_aux_stack_noalloc() the default behaviour 2025-06-24 15:57:48 -04:00
jump_label.c jump_label: Fix static_key_slow_dec() yet again 2025-04-20 20:01:13 -04:00
kallsyms.c
kallsyms_internal.h
kallsyms_selftest.c
kallsyms_selftest.h
kcmp.c
kcov.c
kexec.c crash: add a new kexec flag for hotplug support 2024-12-23 09:35:36 +08:00
kexec_core.c crash: split crash dumping code out from kexec_core.c 2024-12-23 09:35:35 +08:00
kexec_elf.c
kexec_file.c kexec_file: fix elfcorehdr digest exclusion when CONFIG_CRASH_HOTPLUG=y 2024-12-23 09:35:36 +08:00
kexec_internal.h crash: remove dependency of FA_DUMP on CRASH_DUMP 2024-12-23 09:35:35 +08:00
kheaders.c
kprobes.c fprobe: Pass return address to the handlers 2024-10-25 09:07:32 +02:00
ksyms_common.c
ksysfs.c crash: split crash dumping code out from kexec_core.c 2024-12-23 09:35:35 +08:00
kthread.c kthread: unpark only parked kthread 2024-11-25 12:31:48 +00:00
latencytop.c
module_signature.c
notifier.c
nsproxy.c
padata.c padata: avoid UAF for reorder_work 2025-02-28 11:00:53 -05:00
panic.c taint: Add TAINT_FWCTL 2025-06-17 10:30:11 +09:00
params.c
pid.c
pid_namespace.c Revert "rcu-tasks: Fix synchronize_rcu_tasks() VS zap_pid_ns_processes()" 2024-08-26 10:57:50 -04:00
pid_sysctl.h
profile.c
ptrace.c mm: make __access_remote_vm() static 2024-12-09 12:22:45 -05:00
range.c
reboot.c Flush console log from kernel_power_off() 2025-05-02 11:11:41 -04:00
regset.c
relay.c
resource.c resource: fix region_intersects() vs add_memory_driver_managed() 2024-10-29 10:10:23 -06:00
resource_kunit.c
rh_messages.c
rh_messages.h rh_messages.h: xtables modules are still maintained in rhel9 2025-06-30 13:55:46 +02:00
rh_shadowman.c
rseq.c
scftorture.c
scs.c
seccomp.c
signal.c signal: restore the override_rlimit logic 2024-12-20 15:33:02 +00:00
smp.c locking/csd_lock: Provide an indication of ongoing CSD-lock stall 2025-07-10 10:20:37 +02:00
smpboot.c kthread: add kthread_stop_put 2024-09-20 12:26:34 -07:00
smpboot.h
softirq.c softirq: Allow raising SCHED_SOFTIRQ from SMP-call-function on RT kernel 2024-12-11 19:37:36 +00:00
stackleak.c
stacktrace.c
static_call.c
static_call_inline.c x86/static-call: provide a way to do very early static-call updates 2025-02-18 17:58:05 +01:00
stop_machine.c sched/core: Fix migrate_swap() vs. hotplug 2025-08-13 13:59:10 +00:00
sys.c Merge: CVE-2024-50271: ucounts: Split rlimit and ucount values and max values 2025-02-03 10:00:41 -05:00
sys_ni.c x86/shstk: Introduce map_shadow_stack syscall 2024-10-01 11:17:15 -04:00
sysctl-test.c
sysctl.c mm: hugetlb: move hugeltb sysctls to its own file 2024-07-16 09:29:59 -04:00
task_work.c task_work: Add TWA_NMI_CURRENT as an additional notify mode. 2024-10-14 13:02:40 +02:00
taskstats.c
test_kprobes.c
torture.c
tracepoint.c
tsacct.c
ucount.c signal: restore the override_rlimit logic 2024-12-20 15:33:02 +00:00
uid16.c
uid16.h
umh.c
up.c
user-return-notifier.c
user.c
user_namespace.c Merge: CVE-2024-50271: ucounts: Split rlimit and ucount values and max values 2025-02-03 10:00:41 -05:00
usermode_driver.c
utsname.c
utsname_sysctl.c
vmcore_info.c crash: split vmcoreinfo exporting code out from crash_core.c 2024-12-23 09:35:35 +08:00
watch_queue.c watch_queue: fix pipe accounting mismatch 2025-04-02 10:32:41 +02:00
watchdog.c
watchdog_hld.c watchdog/perf: properly initialize the turbo mode timestamp and rearm counter 2025-07-14 11:18:55 -04:00
workqueue.c kasan: make kasan_record_aux_stack_noalloc() the default behaviour 2025-06-24 15:57:48 -04:00
workqueue_internal.h