1198313 Commits
Author SHA1 Message Date
CKI KWF Bot c234fccc30 [redhat] kernel-5.14.0-742.el9
Signed-off-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
2026-09-02 02:37:22 +00:00
CKI KWF Bot 0e177bc37f Merge: Merge tag 'kernel-5.14.0-741.2.1.el9_9' into centos-stream-9/main
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8711

Merge kernel MRs from RHEL-9.9's kernel-5.14.0-741.2.1.el9_9 into the
centos-stream-9/main repo for 9.10 inclusion.

MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8414
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8400
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8660
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8658
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8591
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7144

Signed-off-by: Jarod Wilson <jarod@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-09-02 02:36:21 +00:00
CKI KWF Bot e689632e86 Merge: Merge tag 'kernel-5.14.0-741.1.1.el9_9' into centos-stream-9/main
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8708

Merge kernel MRs from RHEL-9.9's kernel-5.14.0-741.1.1.el9_9 into the
centos-stream-9/main repo for 9.10 inclusion.

MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8664
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8234
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8535
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7141
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7139

Signed-off-by: Jarod Wilson <jarod@redhat.com>

Approved-by: Shivani Chandanshive <schandan@redhat.com>
Approved-by: Julio Faracco <jfaracco@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-09-02 02:36:19 +00:00
CKI KWF Bot ff7f57bac8 Merge: redhat: update RHEL_MINOR version for start of RHEL-9.10 development
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8701

JIRA: INTERNAL
Upstream Status: RHEL-9-only

This bumps the value of RHEL_MINOR to 10 so we can formally get RHEL-9.10
merge requests merged and start doing development builds.

Signed-off-by: Julio Faracco <jfaracco@redhat.com>

Approved-by: Jan Stancek <jstancek@redhat.com>
Approved-by: Oleksii Baranov <olebaran@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
Approved-by: Jarod Wilson <jarod@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-09-02 02:36:17 +00:00
CKI KWF Bot 2adffda844 Merge: s390/cpum_cf: Handle CPU hotplug via prepare/dead callbacks
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8697

s390/cpum_cf: Handle CPU hotplug via prepare/dead callbacks

JIRA: https://redhat.atlassian.net/browse/RHEL-248152

commit 337bd95507a16063687cfc286ea90de5cca48c37

Author: Thomas Richter tmricht@linux.ibm.com

Date: Tue Aug 11 15:39:01 2026 +0200

```
    s390/cpum_cf: Handle CPU hotplug via prepare/dead callbacks

    The command 'perf stat -e cycles -- <command>' crashes the kernel
    when CPUs are hotplug added during that run.

    Root cause is the allocation of struct cpu_cf_events at first
    event initialization. The allocation is dynamic and the first
    event that has task context creates such a structure for
    each online CPU. This is not sufficient. CPUs may be offline
    during event creation and can be set online during the
    perf run time. For example commands

     # echo 0 > /sys/devices/system/cpu/cpu1/online
     # perf stat -e cycles -i -- stress-ng -t10s --matrix X
     # sleep 1
     # echo 1 > /sys/devices/system/cpu/cpu1/online

    create an event for CPUs 0,2-X. Since the events are created with
    task-context, the scheduler will eventually schedule the program
    on CPU1. This CPU has not created and initialized any per
    CPU event infrastructure as that CPU was not online at the time
    of the perf invocation. Thus when the scheduler runs stress-ng
    on CPU1, the function cpumf_pmu_add() refers to a NULL pointer:

     struct cpu_cf_events *cpuhw = this_cpu_cfhw();

    This function call is invoked after the task stress-ng has been
    made runnable on CPU1. And this_cpu_cfhw() returns NULL.

    The result is a panic:
    Unable to handle kernel pointer dereference in virtual kernel address space
    Failing address: 0000000000000000 TEID: 0000000000000483
    ....
    Krnl PSW : 0404d00180000000 000003ef8291fd0c (cpumf_pmu_add+0x3c/0x80)
    ....
    Call Trace:
     [<000003ef8291fd0c>] cpumf_pmu_add+0x3c/0x80
     [<000003ef82bb5e3e>] event_sched_in+0xae/0x190
     [<000003ef82bb60d6>] merge_sched_in+0x1b6/0x390
     [<000003ef82bb65b8>] visit_groups_merge.constprop.0.isra.0+0x308/0x5b0
     [<000003ef82bb689a>] pmu_groups_sched_in+0x3a/0x50
     [<000003ef82bb6a30>] ctx_sched_in+0x180/0x260
     [<000003ef82bb780c>] perf_event_context_sched_in+0x11c/0x2d0
     [<000003ef82bb79ee>] __perf_event_task_sched_in+0x2e/0xc0
     [<000003ef82994834>] finish_task_switch.isra.0+0x1a4/0x250
    ....
    Last Breaking-Event-Address:
     [<000003ef8291f1d8>] this_cpu_cfhw+0x38/0x40

    The issue arises only in per-task context when the CPUMF facility is
    used and the scheduler picks a random CPU for such a process to run on.
    The scheduler enables the CPUMF infrastructure via PMU callback
    functions pmu::add() and pmu::del().

    Introduce a CPU hotplug prepare/dead callback pair which creates and
    removes the per CPU counter data while the CPU is offline. Count the
    users which track every CPU (cpu == -1), that is perf_event_open()
    events with task context and /dev/hwctr device sessions, in the new
    counter cpu_cf_root::tskcnt, protected by pmc_reserve_mutex.
    This ensures the infrastructure is available when
    new CPU is selected to run the per-task context process.

    In cpum_cf_free_root() and cpum_cf_free_cpu() ensure the reference
    pointer to data structures is set to NULL before the data is freed
    to prevent interrupt handlers to access stale data.

    [gor@linux.ibm.com: change commit message]
    Fixes: 9b9cf3c77e7e ("s390/cpum_cf: rework PER_CPU_DEFINE of struct cpu_cf_events")
    Cc: stable@vger.kernel.org # v6.5+
    Suggested-by: Heiko Carstens <hca@linux.ibm.com>
    Suggested-by: Christian Borntraeger <borntraeger@linux.ibm.com>
    Assisted-by: Claude:claude-sonnet-5
    Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
    Acked-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
```

Signed-off-by: Jan Polensky <jpolensk@redhat.com>

Approved-by: Steve Best <sbest@redhat.com>
Approved-by: Tony Camuso <tcamuso@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-09-02 02:36:15 +00:00
CKI KWF Bot 3a09f7251f Merge: [RHEL 9.10] Update drivers/platform/x86/intel to upstream v7.2
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8694

JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Standard recurring update of drivers/platform/x86/intel

Three commits applied in 9.9 were reverted to be applied again in this MR in original order.

With the exception of commit 7c9b994d84 and 263024f0d1, all conflicts and contextual differences are from removing quotes from
symbol namespace imports/exports due to missing upstream commit cdd30ebb1b9f ("module: Convert symbol namespace to string literal")

Commit 7c9b994d84 ("platform/x86/intel-uncore-freq: Expose instance ID in the sysfs") has a simple contextual difference in documentation.

Commit 263024f0d1 ("platform/x86/intel/vsec: allocate res with intel_vsec_dev") has a conflict due to missing upstream *alloc_obj conversion.

Signed-off-by: Dennis Chen <dechen@redhat.com>

Approved-by: David Arcari <darcari@redhat.com>
Approved-by: Desnes Nunes <desnesn@redhat.com>
Approved-by: Anusha Srivatsa <asrivats@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-09-02 02:36:13 +00:00
CKI KWF Bot dda94f8ff7 Merge: [RHEL 9.10]: select amd-pstate fixes
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8467

JIRA: https://redhat.atlassian.net/browse/RHEL-212670

RHEL is missing the following upstream commits:

beda3b363546  amd-pstate: Fix memory leak in amd_pstate_epp_cpu_init()
fcc25a291fbd  amd-pstate: Update cppc_req_cached in fast_switch case
c03791085adc  cpufreq: Pass the policy to cpufreq_driver->adjust_perf()
3cd07ee35a66  cpufreq/amd-pstate: drop stale @epp_cached kdoc

Signed-off-by: Dennis Chen <dechen@redhat.com>

Approved-by: David Arcari <darcari@redhat.com>
Approved-by: Steve Best <sbest@redhat.com>
Approved-by: Desnes Nunes <desnesn@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-09-02 02:36:12 +00:00
CKI KWF Bot 5ee740f3c6 Merge: mmc: sdhci-of-dwcmshc: Add hw_reset() support for BlueField-3 SoC
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8352

JIRA: https://redhat.atlassian.net/browse/RHEL-104072

sdhci-of-dwcmshc: driver update to Linux v6.16 \[Nvidia 9.9 FEAT\]

Signed-off-by: David Thompson <davithom@redhat.com>

Approved-by: Jarod Wilson <jarod@redhat.com>
Approved-by: Kamal Heib <kheib@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-09-02 02:36:10 +00:00
Jarod Wilson 26f9d47fb2 Merge tag 'kernel-5.14.0-741.2.1.el9_9' into centos-stream-9/main
Merge kernel MRs from RHEL-9.9's kernel-5.14.0-741.2.1.el9_9 into the
centos-stream-9/main repo for 9.10 inclusion.

MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8414
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8400
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8660
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8658
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8591
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7144

Signed-off-by: Jarod Wilson <jarod@redhat.com>
2026-09-01 17:26:04 -07:00
Jarod Wilson 4b01e8dc75 Merge tag 'kernel-5.14.0-741.1.1.el9_9' into centos-stream-9/main
Merge kernel MRs from RHEL-9.9's kernel-5.14.0-741.1.1.el9_9 into the
centos-stream-9/main repo for 9.10 inclusion.

MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8664
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8234
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8535
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7141
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7139

Signed-off-by: Jarod Wilson <jarod@redhat.com>
2026-08-31 10:25:10 -07:00
CKI KWF Bot 83975728a9 [redhat] kernel-5.14.0-741.2.1.el9_9
Signed-off-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
2026-08-31 17:17:19 +00:00
CKI KWF Bot 1278efb287 Merge: net: ipv6: clear suppressed fib6 rule result
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7144

JIRA: https://issues.redhat.com/browse/RHEL-246350
CVE: CVE-2026-74581

A fix for a critical ipv6 issue.

Signed-off-by: Paolo Abeni <pabeni@redhat.com>

Approved-by: Marcelo Ricardo Leitner <mleitner@redhat.com>
Approved-by: Guillaume Nault <gnault@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-31 17:16:15 +00:00
CKI KWF Bot 0974d7f613 Merge: CVE-2026-63824 kernel: KEYS: fix overflow in keyctl_pkey_params_get_2()
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8591

JIRA: https://redhat.atlassian.net/browse/RHEL-229620
CVE: CVE-2026-63824

The length for the internal output buffer is calculated incorrectl in
keyctl_pkey_params_get_2(), but to fix it we also bring another commit to
prepare the tree and allow a clean backport of the CVE fix.

Signed-off-by: Bruno Meneguele <bmeneg@redhat.com>

Approved-by: Thomas Huth <thuth@redhat.com>
Approved-by: Ricardo Robaina <rrobaina@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-31 17:16:12 +00:00
CKI KWF Bot 838155400a Merge: NFS/NFSD CVE fixes for RHEL 9.9
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8658

Fixes for various NFS/NFSD CVEs:

- nfsd: release layout stid on setlease failure
- NFSv4/flexfiles: reject zero filehandle version count
- nfsd: fix posix_acl leak on SETACL decode failure
- NFSv4: include MAY_WRITE in open permission mask for O_TRUNC
- NFSv4/pNFS: reject zero-length r_addr in nfs4_decode_mp_ds_addr
- pNFS: Fix use-after-free in pnfs_update_layout()

JIRA: https://issues.redhat.com/browse/RHEL-225523
JIRA: https://redhat.atlassian.net/browse/RHEL-226326
JIRA: https://redhat.atlassian.net/browse/RHEL-227787
JIRA: https://redhat.atlassian.net/browse/RHEL-228034
JIRA: https://redhat.atlassian.net/browse/RHEL-229413
JIRA: https://redhat.atlassian.net/browse/RHEL-234058

CVE: CVE-2026-53391
CVE: CVE-2026-53392
CVE: CVE-2026-53397
CVE: CVE-2026-53399
CVE: CVE-2026-63800
CVE: CVE-2026-64298

Signed-off-by: CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com>
Signed-off-by: Scott Mayhew <smayhew@redhat.com>

Approved-by: Roberto Bergantinos Corpas <rbergant@redhat.com>
Approved-by: Olga Kornievskaia <okorniev@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-31 17:16:10 +00:00
CKI KWF Bot 6b947a98e4 Merge: CVE-2026-68145: iomap: fix out-of-bounds bitmap_set() with zero-length range
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8660

JIRA: https://redhat.atlassian.net/browse/RHEL-240184
CVE: CVE-2026-68145

 * 93aa6fe6768327e83bd122f663c9cdda968119af iomap: hold state_lock over call to ifs_set_range_uptodate() [linux]
 * e538eecaa39ef2c7203e1f7ac94726da1c25e187 iomap: fix out-of-bounds bitmap_set() with zero-length range [linux]

Signed-off-by: CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com>
Assisted-by: Patchpal

Please scrutinize this automated backport with additional caution and skepticism, as this was not a simple clean cherry-pick backport case. Algorithms were used to aid in applying the requested commit(s).

The following commits were added to the backport as prerequisites to requested commits to get them to apply:
 - 279d5fc3227f04ef2c6125e5c440e7952173a89a "iomap: hold state_lock over call to ifs_set_range_uptodate()"

[^footer]: Created 2026-08-13 15:28 UTC by backporter - [KWF FAQ](https://red.ht/kernel_workflow_doc) - [Slack #team-kernel-workflow](https://redhat-internal.slack.com/archives/C04LRUPMJQ5) - [Source](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/webhook/utils/backporter.py) - [Documentation](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/docs/README.backporter.md) - [Report an issue](https://redhat.atlassian.net/secure/CreateIssueDetails!init.jspa?pid=11779&issuetype=10016&priority=10001&summary=backporter+webhook+issue&components=66291) [^footer]

Approved-by: Brian Foster <bfoster@redhat.com>
Approved-by: Carlos Maiolino <cmaiolino@redhat.com>
Approved-by: Pavel Reichl <preichl@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-31 17:16:07 +00:00
CKI KWF Bot f178149437 Merge: CVE-2026-63887: scsi: target: iscsi: Bound iscsi_encode_text_output() appends to rsp_buf
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8400

JIRA: https://redhat.atlassian.net/browse/RHEL-213196
CVE: CVE-2026-63887

Backported from tree(s): linux

```
scsi: target: iscsi: Bound iscsi_encode_text_output() appends to rsp_buf

iscsi_encode_text_output() concatenates "key=value\0" records into
login->rsp_buf, an 8192-byte kzalloc(MAX_KEY_VALUE_PAIRS) buffer
allocated in iscsit_alloc_login_setup_buffer(). The three sprintf() call
sites in this function (lines 1398, 1411, 1424 in v7.1-rc2) never check
the remaining buffer capacity:

	*length += sprintf(output_buf, "%s=%s", er->key, er->value);
	*length += 1;
	output_buf = textbuf + *length;

The 8192-byte ceiling at iscsi_target_check_login_request() bounds the
*input* Login PDU payload, but a single PDU can carry up to 2048 minimal
four-byte "a=b\0" pairs, each unknown key expanding to a 16-byte
"a=NotUnderstood\0" output record via iscsi_add_notunderstood_response().
2048 * 16 = 32 KiB of output into an 8 KiB buffer, producing a ~24 KiB
heap overrun in the kmalloc-8k slab.

The fix introduces a static iscsi_encode_text_record() helper that uses
snprintf() with a per-call bounds check against the remaining buffer,
and threads a u32 textbuf_size parameter through
iscsi_encode_text_output(). Both call sites in
iscsi_target_handle_csg_zero() (PHASE_SECURITY) and
iscsi_target_handle_csg_one() (PHASE_OPERATIONAL) pass
MAX_KEY_VALUE_PAIRS. On overflow the encoder logs the condition, calls
iscsi_release_extra_responses() to drop queued records, and returns -1;
both caller sites now emit ISCSI_STATUS_CLS_INITIATOR_ERR /
ISCSI_LOGIN_STATUS_INIT_ERR via iscsit_tx_login_rsp() before returning,
so the initiator sees an explicit failed-login response rather than a
silent connection drop. (Prior to this patch only the PHASE_OPERATIONAL
caller did that; the PHASE_SECURITY caller is converted to the same
shape.)

Fixes: e48354ce07 ("iscsi-target: Add iSCSI fabric support for target v4.1")
Cc: stable@vger.kernel.org
Assisted-by: Claude:claude-opus-4-7
Signed-off-by: Michael Bommarito <michael.bommarito@gmail.com>
Tested-by: John Garry <john.g.garry@oracle.com>
Reviewed-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
(cherry picked from commit bf33e01f88388c43e285492a63e539df6ffed64c)

```

Signed-off-by: CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com>
[^footer]: Created 2026-07-21 14:39 UTC by backporter - [KWF FAQ](https://red.ht/kernel_workflow_doc) - [Slack #team-kernel-workflow](https://redhat-internal.slack.com/archives/C04LRUPMJQ5) - [Source](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/webhook/utils/backporter.py) - [Documentation](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/docs/README.backporter.md) - [Report an issue](https://redhat.atlassian.net/secure/CreateIssueDetails!init.jspa?pid=11779&issuetype=10016&priority=10001&summary=backporter+webhook+issue&components=66291) [^footer]

Approved-by: John Pittman <jpittman@redhat.com>
Approved-by: Utkarsh Singh <utsingh@redhat.com>
Approved-by: Laurence Oberman <loberman@redhat.com>
Approved-by: Maurizio Lombardi <mlombard@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-31 17:16:05 +00:00
CKI KWF Bot 6c2cce9657 Merge: KVM: SVM: make svm_flush_tlb_gva do a full asid flush if NPT enabled
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8414

# Merge Request Required Information

## Summary of Changes

    Red Hat is seeing multiple reports of Windows memory corruptions
    (and consequent BSODs) with hv-tlbflush=on, on AMD processors only.
    The crashes, while extremely rare, happen even with a stock configuration,
    but with Driver Verifier enabled they can be detected after approximately
    200 VM hours.

    So, for lack of better ideas, this patch forces a full ASID bump in
    svm_flush_tlb_gva().  To avoid paying the price on Intel and also to
    avoid unnecessary loops on AMD, the flush_tlb_gva op now returns whether
    it did a full flush or not; kvm_hv_vcpu_flush_tlb() takes note and exits
    its loops immediately.  While there is an obvious performance impact,
    about half of the benefit from Hyper-V tlbflush is preserved (10% vs. 20%
    on the SQL Server workload).

## Approved Development Ticket(s)
All submissions to CentOS Stream must reference a ticket in [Red Hat Jira](https://issues.redhat.com/).

```
JIRA: https://redhat.atlassian.net/browse/RHEL-214433
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
```

Approved-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Approved-by: awallace9 <awallace@redhat.com>
Approved-by: Maxim Levitsky <mlevitsk@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-31 17:16:03 +00:00
Jan Polensky c6b0775bf5 s390/cpum_cf: Handle CPU hotplug via prepare/dead callbacks
JIRA: https://redhat.atlassian.net/browse/RHEL-248152

commit 337bd95507a16063687cfc286ea90de5cca48c37
Author: Thomas Richter <tmricht@linux.ibm.com>
Date:   Tue Aug 11 15:39:01 2026 +0200

    s390/cpum_cf: Handle CPU hotplug via prepare/dead callbacks

    The command 'perf stat -e cycles -- <command>' crashes the kernel
    when CPUs are hotplug added during that run.

    Root cause is the allocation of struct cpu_cf_events at first
    event initialization. The allocation is dynamic and the first
    event that has task context creates such a structure for
    each online CPU. This is not sufficient. CPUs may be offline
    during event creation and can be set online during the
    perf run time. For example commands

     # echo 0 > /sys/devices/system/cpu/cpu1/online
     # perf stat -e cycles -i -- stress-ng -t10s --matrix X
     # sleep 1
     # echo 1 > /sys/devices/system/cpu/cpu1/online

    create an event for CPUs 0,2-X. Since the events are created with
    task-context, the scheduler will eventually schedule the program
    on CPU1. This CPU has not created and initialized any per
    CPU event infrastructure as that CPU was not online at the time
    of the perf invocation. Thus when the scheduler runs stress-ng
    on CPU1, the function cpumf_pmu_add() refers to a NULL pointer:

     struct cpu_cf_events *cpuhw = this_cpu_cfhw();

    This function call is invoked after the task stress-ng has been
    made runnable on CPU1. And this_cpu_cfhw() returns NULL.

    The result is a panic:
    Unable to handle kernel pointer dereference in virtual kernel address space
    Failing address: 0000000000000000 TEID: 0000000000000483
    ....
    Krnl PSW : 0404d00180000000 000003ef8291fd0c (cpumf_pmu_add+0x3c/0x80)
    ....
    Call Trace:
     [<000003ef8291fd0c>] cpumf_pmu_add+0x3c/0x80
     [<000003ef82bb5e3e>] event_sched_in+0xae/0x190
     [<000003ef82bb60d6>] merge_sched_in+0x1b6/0x390
     [<000003ef82bb65b8>] visit_groups_merge.constprop.0.isra.0+0x308/0x5b0
     [<000003ef82bb689a>] pmu_groups_sched_in+0x3a/0x50
     [<000003ef82bb6a30>] ctx_sched_in+0x180/0x260
     [<000003ef82bb780c>] perf_event_context_sched_in+0x11c/0x2d0
     [<000003ef82bb79ee>] __perf_event_task_sched_in+0x2e/0xc0
     [<000003ef82994834>] finish_task_switch.isra.0+0x1a4/0x250
    ....
    Last Breaking-Event-Address:
     [<000003ef8291f1d8>] this_cpu_cfhw+0x38/0x40

    The issue arises only in per-task context when the CPUMF facility is
    used and the scheduler picks a random CPU for such a process to run on.
    The scheduler enables the CPUMF infrastructure via PMU callback
    functions pmu::add() and pmu::del().

    Introduce a CPU hotplug prepare/dead callback pair which creates and
    removes the per CPU counter data while the CPU is offline. Count the
    users which track every CPU (cpu == -1), that is perf_event_open()
    events with task context and /dev/hwctr device sessions, in the new
    counter cpu_cf_root::tskcnt, protected by pmc_reserve_mutex.
    This ensures the infrastructure is available when
    new CPU is selected to run the per-task context process.

    In cpum_cf_free_root() and cpum_cf_free_cpu() ensure the reference
    pointer to data structures is set to NULL before the data is freed
    to prevent interrupt handlers to access stale data.

    [gor@linux.ibm.com: change commit message]
    Fixes: 9b9cf3c77e7e ("s390/cpum_cf: rework PER_CPU_DEFINE of struct cpu_cf_events")
    Cc: stable@vger.kernel.org # v6.5+
    Suggested-by: Heiko Carstens <hca@linux.ibm.com>
    Suggested-by: Christian Borntraeger <borntraeger@linux.ibm.com>
    Assisted-by: Claude:claude-sonnet-5
    Signed-off-by: Thomas Richter <tmricht@linux.ibm.com>
    Acked-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>

Signed-off-by: Jan Polensky <jpolensk@redhat.com>
2026-08-28 15:05:38 +02:00
Julio Faracco 47df7f115e redhat: update RHEL_MINOR version for start of RHEL-9.10 development
JIRA: INTERNAL
Upstream Status: RHEL-9-only

This bumps the value of RHEL_MINOR to 10 so we can formally get RHEL-9.10
merge requests merged and start doing development builds.

Signed-off-by: Julio Faracco <jfaracco@redhat.com>
2026-08-27 14:16:49 -03:00
CKI KWF Bot 7d4b87cdeb [redhat] kernel-5.14.0-741.1.1.el9_9
Signed-off-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
2026-08-27 16:50:19 +00:00
CKI KWF Bot 62cba385d9 Merge: xen/privcmd: fix double free via VMA splitting
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7139

JIRA: https://redhat.atlassian.net/browse/RHEL-172489
CVE: CVE-2026-31787

fix double free via VMA splitting in Xen privcmd.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>

Approved-by: Evgenii Kolesnikov <ekolesni@redhat.com>
Approved-by: Thilak KN <tkn@redhat.com>
Approved-by: Ani Sinha <anisinha@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-27 16:49:20 +00:00
CKI KWF Bot 5f3e011218 Merge: Buffer overflow in drivers/xen/sys-hypervisor.c
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7141

JIRA: https://redhat.atlassian.net/browse/RHEL-172511
CVE: CVE-2026-31786

Fix buffer overflow in drivers/xen/sys-hypervisor.c.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>

Approved-by: Evgenii Kolesnikov <ekolesni@redhat.com>
Approved-by: Thilak KN <tkn@redhat.com>
Approved-by: Ani Sinha <anisinha@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-27 16:49:18 +00:00
CKI KWF Bot 1de24ebbc8 Merge: CVE-2026-64490: ALSA: virtio: Validate control metadata from the device
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8535

JIRA: https://redhat.atlassian.net/browse/RHEL-230137
CVE: CVE-2026-64490

Backported from tree(s): linux

```
ALSA: virtio: Validate control metadata from the device

virtio-snd control handling trusts the device-provided control type and
value count returned by the device.

That metadata is then used directly to index g_v2a_type_map[] in
virtsnd_kctl_info(), and to size loops and memcpy() operations in
virtsnd_kctl_get() and virtsnd_kctl_put() against fixed-size
virtio_snd_ctl_value and snd_ctl_elem_value arrays.

A buggy or malicious device can therefore trigger out-of-bounds access by
advertising an invalid control type or an oversized value count.

Validate control type and count once in virtsnd_kctl_parse_cfg(), before
querying enumerated items or exposing the control to ALSA.

Fixes: d6568e3de42d ("ALSA: virtio: add support for audio controls")
Cc: stable@vger.kernel.org
Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
Link: https://patch.msgid.link/20260507-alsa-virtio-validate-kctl-info-v1-1-7404fb12ec37@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
(cherry picked from commit c77a6cbb36ff8cbc1f084d94f8dcda5250935271)

```

Signed-off-by: CKI Backport Bot <cki-ci-bot+cki-gitlab-backport-bot@redhat.com>
[^footer]: Created 2026-08-05 23:53 UTC by backporter - [KWF FAQ](https://red.ht/kernel_workflow_doc) - [Slack #team-kernel-workflow](https://redhat-internal.slack.com/archives/C04LRUPMJQ5) - [Source](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/webhook/utils/backporter.py) - [Documentation](https://gitlab.com/cki-project/kernel-workflow/-/blob/main/docs/README.backporter.md) - [Report an issue](https://redhat.atlassian.net/secure/CreateIssueDetails!init.jspa?pid=11779&issuetype=10016&priority=10001&summary=backporter+webhook+issue&components=66291) [^footer]

Approved-by: Jaroslav Kysela <jkysela@redhat.com>
Approved-by: Daniel Horak <dhorak@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-27 16:49:16 +00:00
CKI KWF Bot f6aa9f3674 Merge: net: ipv6: P2 backports for 9.9
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8234

A set of various fixes and improvements in the IPv6 area for 9.9; backported as part of our P2 backports.

Some RHEL-only changes in patches 17-18, please check accordingly.

JIRA: https://redhat.atlassian.net/browse/RHEL-152681

Ignore-duplicate: 0fa3469739

Signed-off-by: Antoine Tenart <atenart@redhat.com>

Approved-by: Patrick Talbert <ptalbert@redhat.com>
Approved-by: Sabrina Dubroca <sdubroca@redhat.com>
Approved-by: Alexandra Hájková <ahajkova@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-27 16:49:15 +00:00
CKI KWF Bot aa427a3f57 Merge: Batch: y-stream SCTP and TIPC - rhel-9.9
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/8664

JIRA: https://redhat.atlassian.net/browse/RHEL-228882
JIRA: https://redhat.atlassian.net/browse/RHEL-238040
JIRA: https://redhat.atlassian.net/browse/RHEL-229476
JIRA: https://redhat.atlassian.net/browse/RHEL-231576
JIRA: https://redhat.atlassian.net/browse/RHEL-236160
JIRA: https://redhat.atlassian.net/browse/RHEL-237403
JIRA: https://redhat.atlassian.net/browse/RHEL-237090

CVE: CVE-2026-63801
CVE: CVE-2026-68117
CVE: CVE-2026-63971
CVE: CVE-2026-52917
CVE: CVE-2026-68315
CVE: CVE-2026-68376
CVE: CVE-2026-68300

Patch 1-5 are backporting SCTP CVEs and 6-7 are backporting TIPC CVEs.

Signed-off-by: Xin Long <lxin@redhat.com>

Approved-by: Jamie Bainbridge <jbainbri@redhat.com>
Approved-by: Antoine Tenart <atenart@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-27 16:49:13 +00:00
CKI KWF Bot 4bf62708c7 Merge: redhat: set defaults for 9.9 stabilization/zstream
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-9/-/merge_requests/7158

JIRA: INTERNAL
Upstream status: RHEL-9 only

- set DIST to el9_9
- set ZSTREAM to yes
- set gitlab-ci vars
- update self-test data

Signed-off-by: Jarod Wilson <jarod@redhat.com>

Approved-by: Shivani Chandanshive <schandan@redhat.com>
Approved-by: Jan Stancek <jstancek@redhat.com>
Approved-by: Tales da Aparecida <tales.aparecida@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
Approved-by: Oleksii Baranov <olebaran@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-08-27 16:49:11 +00:00
Jarod Wilson c0357cd69f redhat: update self-test data
JIRA: INTERNAL

Signed-off-by: Jarod Wilson <jarod@redhat.com>
2026-08-26 13:33:04 -07:00
Jarod Wilson 51c2d0beb1 gitlab-ci: disttag override and tree name for 9.9
JIRA: INTERNAL

More prep work for 9.9 stabilization and zstream.

Signed-off-by: Jarod Wilson <jarod@redhat.com>
2026-08-26 12:47:57 -07:00
Jarod Wilson 6742c4cd7f redhat: set defaults for 9.9 stabilization/zstream
JIRA: INTERNAL
Upstream status: RHEL-9 only

- set DIST to el9_9
- set ZSTREAM to yes

Signed-off-by: Jarod Wilson <jarod@redhat.com>
2026-08-26 12:45:18 -07:00
Vitaly Kuznetsov d3734a66e9 Buffer overflow in drivers/xen/sys-hypervisor.c
JIRA: https://redhat.atlassian.net/browse/RHEL-172511
CVE: CVE-2026-31786

commit 27fdbab4221b375de54bf91919798d88520c6e28
Author: Juergen Gross <jgross@suse.com>
Date:   Fri Mar 27 14:13:38 2026 +0100

    Buffer overflow in drivers/xen/sys-hypervisor.c

    The build id returned by HYPERVISOR_xen_version(XENVER_build_id) is
    neither NUL terminated nor a string.

    The first causes a buffer overflow as sprintf in buildid_show will
    read and copy till it finds a NUL.

    00000000  f4 91 51 f4 dd 38 9e 9d  65 47 52 eb 10 71 db 50  |..Q..8..eGR..q.P|
    00000010  b9 a8 01 42 6f 2e 32                              |...Bo.2|
    00000017

    So use a memcpy instead of sprintf to have the correct value:

    00000000  f4 91 51 f4 dd 00 9e 9d  65 47 52 eb 10 71 db 50  |..Q.....eGR..q.P|
    00000010  b9 a8 01 42                                       |...B|
    00000014

    (the above have a hack to embed a zero inside and check it's
    returned correctly).

    This is XSA-485 / CVE-2026-31786

    Fixes: 84b7625728 ("xen: add sysfs node for hypervisor build id")
    Signed-off-by: Frediano Ziglio <frediano.ziglio@citrix.com>
    Reviewed-by: Juergen Gross <jgross@suse.com>
    Signed-off-by: Juergen Gross <jgross@suse.com>

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
2026-08-26 15:35:19 +02:00
Vitaly Kuznetsov 1b122192e0 xen/privcmd: fix double free via VMA splitting
JIRA: https://redhat.atlassian.net/browse/RHEL-172489
CVE: CVE-2026-31787

commit 24daca4fc07f3ff8cd0e3f629cd982187f48436a
Author: Juergen Gross <jgross@suse.com>
Date:   Fri Apr 10 09:20:04 2026 +0200

    xen/privcmd: fix double free via VMA splitting

    privcmd_vm_ops defines .close (privcmd_close), but neither .may_split
    nor .open. When userspace does a partial munmap() on a privcmd mapping,
    the kernel splits the VMA via __split_vma(). Since may_split is NULL,
    the split is allowed. vm_area_dup() copies vm_private_data (a pages
    array allocated in alloc_empty_pages()) into the new VMA without any
    fixup, because there is no .open callback.

    Both VMAs now point to the same pages array. When the unmapped portion
    is closed, privcmd_close() calls:
        - xen_unmap_domain_gfn_range()
        - xen_free_unpopulated_pages()
        - kvfree(pages)

    The surviving VMA still holds the dangling pointer. When it is later
    destroyed, the same sequence runs again, which leads to a double free.

    Fix this issue by adding a .may_split callback denying the VMA split.

    This is XSA-487 / CVE-2026-31787

    Fixes: d71f513985 ("xen: privcmd: support autotranslated physmap guests.")
    Reported-by: Atharva Vartak <atharva.a.vartak@gmail.com>
    Suggested-by: Atharva Vartak <atharva.a.vartak@gmail.com>
    Signed-off-by: Juergen Gross <jgross@suse.com>
    Reviewed-by: Jan Beulich <jbeulich@suse.com>

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
2026-08-26 15:32:37 +02:00
Dennis Chen 201483730e platform/x86/intel/pmc: initialize empty PMT read result
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.3

commit 408b87a481e3ab33cba00292e4c80a30ba97f995
Author: Yousef Alhouseen <alhouseenyousef@gmail.com>
Date:   Tue Jun 30 12:51:01 2026 +0200

    platform/x86/intel/pmc: initialize empty PMT read result

    pmc_core_pmt_get_lpm_req() returns the last telemetry read status. When
    firmware exposes no enabled low-power modes, the loop does not run
    and the function returns an uninitialized stack value.

    Initialize the status to success so an empty mode set is handled
    deterministically.

    Signed-off-by: Yousef Alhouseen <alhouseenyousef@gmail.com>
    Reviewed-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/20260630105101.54016-1-alhouseenyousef@gmail.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

(cherry picked from commit 408b87a481e3ab33cba00292e4c80a30ba97f995)
Assisted-by: Patchpal
Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-25 09:16:02 -04:00
Dennis Chen a6ccac4d47 platform/x86: ishtp_eclite: Fix ACPI device reference leak in probe error path
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.3

commit 62b57396c26a1ce54963709928ea0d01fa522eea
Author: Ma Ke <make_ruc2021@163.com>
Date:   Wed Jun 24 09:49:09 2026 +0800

    platform/x86: ishtp_eclite: Fix ACPI device reference leak in probe error path

    ecl_ishtp_cl_probe() acquires a reference to an ACPI device via
    acpi_find_eclite_device() but fails to release it in the error path
    when acpi_opregion_init() fails. This results in a reference count
    leak, preventing proper cleanup of the ACPI device.

    Calling path: acpi_find_eclite_device() ->
    acpi_dev_get_first_match_dev() -> acpi_dev_get_next_match_dev() ->
    bus_find_device() -> get_device().

    Found by code review.

    Signed-off-by: Ma Ke <make_ruc2021@163.com>
    Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
    Cc: stable@vger.kernel.org
    Fixes: 7b6bf51de974 ("platform/x86: Add Intel ishtp eclite driver")
    Link: https://patch.msgid.link/20260624014910.1226446-1-make_ruc2021@163.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

(cherry picked from commit 62b57396c26a1ce54963709928ea0d01fa522eea)
Assisted-by: Patchpal
Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-25 09:15:39 -04:00
Dennis Chen 105dd8c65b platform/x86/intel/vsec: free ACPI discovery data on early errors
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 09b2ae290a241ce1f5f738fb65c35f449dcf663d
Author: Yousef Alhouseen <alhouseenyousef@gmail.com>
Date:   Mon Jul 6 09:13:39 2026 -0400

    platform/x86/intel/vsec: free ACPI discovery data on early errors

    intel_vsec_add_dev() may attach an ACPI discovery table copy to the
    intel_vsec_device before passing ownership to intel_vsec_add_aux(). The
    normal auxiliary-device release path frees that copy, but the earliest
    intel_vsec_add_aux() failures free only the outer structure directly.

    Route those direct frees through a common helper so acpi_disc is
    released consistently on the parent, xarray, and ID allocation failure
    paths.

    Fixes: 22fa2ebc11a1 ("platform/x86/intel/vsec: Plumb ACPI PMT discovery tables through vsec")
    Signed-off-by: Yousef Alhouseen <alhouseenyousef@gmail.com>
    Reviewed-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/CAMuQ4bUtJtYNTguKoiXngROJw0QQQcrvW3=3_B0-hpMQOFqvCQ@mail.gmail.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:49 -04:00
Dennis Chen 765dc33a18 Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) [partial]
JIRA: https://issues.redhat.com/browse/RHEL-241103

Upstream status: v7.2

Conflicts: only includes drivers/platform/x86/intel* hunks

commit 995832b2cebe6969d1b42635db698803ee31294d
Author: Uwe Kleine-König (The Capable Hub) <u.kleine-koenig@baylibre.com>
Date:   Tue Jun 30 11:24:36 2026 +0200

    Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files)

    Replace the #include of <linux/mod_devicetable.h> by the more specific
    <linux/device-id/*.h> where applicable. For most cases the include
    can be dropped completely, only a few drivers need one or two headers
    added.

    Acked-by: Danilo Krummrich <dakr@kernel.org>
    Acked-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
    Acked-by: Bjorn Helgaas <bhelgaas@google.com>
    Link: https://patch.msgid.link/1a3f2007c5c5dcf555c09a4035ce3ae8ef1b6c49.1782808461.git.u.kleine-koenig@baylibre.com
    Signed-off-by: Uwe Kleine-König (The Capable Hub) <u.kleine-koenig@baylibre.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:49 -04:00
Dennis Chen 928b8167b0 platform/x86/intel/pmc: Add NVL PCI IDs for SSRAM telemetry discovery
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 50022e56dc89fbf1ec22826edf03dc2e5b9076cc
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:56 2026 -0700

    platform/x86/intel/pmc: Add NVL PCI IDs for SSRAM telemetry discovery

    Add Nova Lake S PMC device IDs to enable binding of the SSRAM telemetry
    driver on NVL platforms, and map them to the ACPI-based discovery policy.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/fc0e8bb00e2765fb7d145fef2ed1b0236b935c08.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:49 -04:00
Dennis Chen 24957ec6b0 platform/x86/intel/pmc/ssram: Make PMT registration optional
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 8a3607ece59fcf84cf4129bdf683cb09122e6b51
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:55 2026 -0700

    platform/x86/intel/pmc/ssram: Make PMT registration optional

    The SSRAM telemetry driver extracts essential PMC device ID and power
    management base address information that intel_pmc_core depends on for core
    functionality. If PMT registration failure prevents this critical data from
    being available, intel_pmc_core operation would break entirely. Therefore,
    PMT registration failures must not block access to this data.

    Change the behavior to log a warning when PMT registration fails but
    continue with successful driver initialization, ensuring the primary
    telemetry data remains accessible to dependent drivers.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/4f4c324977951f6082bf2218c8b911e1ae7e0a7b.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:49 -04:00
Dennis Chen 9a3e8f069f platform/x86/intel/pmc/ssram: Add ACPI discovery scaffolding
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

Conflicts:
- drivers/platform/x86/intel/pmc/ssram_telemetry.c: Remove quotes from
symbol namespace import because RHEL is missing cdd30ebb1b9f
("module: Convert symbol namespace to string literal")

commit 08b94937c78aaa144e3afff659c6112bffea6bf0
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:54 2026 -0700

    platform/x86/intel/pmc/ssram: Add ACPI discovery scaffolding

    Prepare the SSRAM telemetry driver for ACPI-based discovery by adding
    support for reading telemetry regions from ACPI _DSD properties.

    Add pmc_ssram_telemetry_acpi_init() to parse _DSD for telemetry discovery
    tables and register them with the Intel VSEC framework. Extend ssram_type
    with a p_index field to specify which PMC index each ACPI device owns
    (unlike PCI which discovers all three PMCs from one device).

    At this stage, no platform IDs are wired to use ACPI discovery - existing
    devices continue using the PCI path. Follow-on patches will add platform
    support.

    Assisted-by: Claude:claude-sonnet-4-5
    Signed-off-by: Xi Pardee <xi.pardee@linux.intel.com>
    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/54850d175993ee38aef99707f954492d24684dcc.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:49 -04:00
Dennis Chen 763348d55a platform/x86/intel/pmc/ssram: Switch to static array with per-index probe state
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit e3c9200a9c0e05532c495956883ba11fe23a3df0
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:53 2026 -0700

    platform/x86/intel/pmc/ssram: Switch to static array with per-index probe state

    Replace devm-allocated pmc_ssram_telems pointer with a fixed-size static
    array and introduce per-index probe state tracking.

    This prepares the driver for later per-device probe handling where tying
    the PMC tracking storage to one probed PCI device is no longer suitable.

    The previous single global device_probed flag cannot describe the state of
    individual PMC indices when multiple devices can be probed independently.
    Replace it with per-index state (UNPROBED, PROBING, PRESENT, ABSENT) and a
    staging cache that publishes discovered values only after probe completes.
    This avoids races between probe/unbind and concurrent readers.

    Use marked state accesses with release/acquire ordering to prevent compiler
    and CPU reordering issues across concurrent probe/unbind cycles.

    This patch was substantially rewritten in later revisions. Originally
    developed from earlier work by Xi Pardee.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Assisted-by: Claude:claude-sonnet-4-5
    Link: https://patch.msgid.link/a2cccf532bec04fcc370819890d936212bc1b14c.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen 52aa522955 platform/x86/intel/pmc/ssram: Refactor DEVID/PWRMBASE extraction into helper
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit f79e57e2677c7641e94d5a38d4b2c2165f5c385c
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:52 2026 -0700

    platform/x86/intel/pmc/ssram: Refactor DEVID/PWRMBASE extraction into helper

    Move DEVID/PWRMBASE extraction into pmc_ssram_get_devid_pwrmbase().

    This is a preparatory refactor to place functionality in a common helper
    for reuse by a subsequent patch. Additionally add missing bits.h
    include and define SSRAM_BASE_ADDR_MASK for the address extraction mask.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://patch.msgid.link/75ca738c88729f37f286f342c1fe8ff86f7eafe7.1781294741.git.david.e.box@linux.intel.com
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen ebe634be7a platform/x86/intel/pmc/ssram: Add PCI platform data
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit d936dd2c605a17ab41826c1e7f738424d3d0bbfd
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:51 2026 -0700

    platform/x86/intel/pmc/ssram: Add PCI platform data

    Add per-device platform data for SSRAM telemetry PCI IDs and route probe
    through a method selector driven by id->driver_data.

    This is a preparatory refactor for follow-on discovery methods while
    preserving current behavior: all supported IDs continue to use the PCI
    initialization path.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/1c6180097b20dbe1337828bf6d3667854d63583a.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen e5727faf62 platform/x86/intel/pmc/ssram: Rename probe and PCI ID table for consistency
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 90fd47d0d8109ef1301a60a44a7f85581a1e6efe
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:50 2026 -0700

    platform/x86/intel/pmc/ssram: Rename probe and PCI ID table for consistency

    Rename intel_pmc_ssram_telemetry_probe() to pmc_ssram_telemetry_probe() and
    intel_pmc_ssram_telemetry_pci_ids[] to pmc_ssram_telemetry_pci_ids[],
    updating the MODULE_DEVICE_TABLE() and pci_driver wiring accordingly.

    This aligns the symbol names with the driver filename and module name,
    reduces redundant intel_ prefixes, and improves readability. No functional
    behavior changes are intended.

    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/6d3935858214fdd0f530f9a7c08a387fa4e5e8cd.1781294741.git.david.e.box@linux.intel.com
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen 51663ce1f2 platform/x86/intel/pmc: Add ACPI PWRM telemetry driver for Nova Lake S
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

Conflicts:
- drivers/platform/x86/intel/pmc/pwrm_telemetry.c: Remove quotes from
symbol namespace import/exports because RHEL is missing cdd30ebb1b9f
("module: Convert symbol namespace to string literal")

commit adc5d98d9ff8b5d37e89e11a2ac5512595541329
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:49 2026 -0700

    platform/x86/intel/pmc: Add ACPI PWRM telemetry driver for Nova Lake S

    Add an ACPI-based PMC PWRM telemetry driver for Nova Lake S. The driver
    locates PMT discovery data in _DSD under the Intel VSEC UUID, parses it,
    and registers telemetry regions with the PMT/VSEC framework so PMC
    telemetry is exposed via existing PMT interfaces.

    Export pmc_parse_telem_dsd() and pmc_find_telem_guid() to support ACPI
    discovery in other PMC drivers (e.g., ssram_telemetry) without duplicating
    ACPI parsing logic. Also export acpi_disc_t typedef from core.h for callers
    to properly declare discovery table arrays.

    Selected by INTEL_PMC_CORE. Existing PCI functionality is preserved.

    Assisted-by: GitHub-Copilot:claude-opus-4.7
    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/09b8211d8a5a79fa019ee2397137a6a43cf19430.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen adfb9725e6 platform/x86/intel/pmc: Add PMC SSRAM Kconfig description
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 8ba4cf60c5ce4a3073126a6cbb09475010f8fa52
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:48 2026 -0700

    platform/x86/intel/pmc: Add PMC SSRAM Kconfig description

    Add a proper description for the intel_pmc_ssram driver.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://patch.msgid.link/bd7ba2f98450751af1de054dac0469acc1138513.1781294741.git.david.e.box@linux.intel.com
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen 0d13c0221f platform/x86/intel/pmt: Unify header fetch and add ACPI source
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 13793c7f9e9ff30042a54bb680662b5cfa0f58fa
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:47 2026 -0700

    platform/x86/intel/pmt: Unify header fetch and add ACPI source

    Allow the PMT class to read discovery headers from either PCI MMIO or
    ACPI-provided entries, depending on the discovery source. The new
    source-aware fetch helper caches the canonical discovery header for both
    paths, capping PCI MMIO reads to the mapped resource size, while keeping
    the mapped PCI discovery table available for users such as crashlog.

    Split intel_pmt_populate_entry() into source-specific resolvers:
      - pmt_resolve_access_pci(): handles both ACCESS_LOCAL and ACCESS_BARID
        for PCI-backed devices and sets entry->pcidev. Same existing
        functionality.
      - pmt_resolve_access_acpi(): handles only ACCESS_BARID for ACPI-backed
        devices, rejecting ACCESS_LOCAL which has no valid semantics without
        a physical discovery resource.

    This maintains existing PCI behavior and makes no functional changes
    for PCI devices.

    Assisted-by: GitHub-Copilot:claude-opus-4.7
    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/4b33b04ffaf0943b67d330f48b5d1dfcb6d1be5d.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen 381a55f96f platform/x86/intel/pmt: Cache the telemetry discovery header
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 4dfc7dca6e934ca414d8d3c70a84e79d13d9e750
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:46 2026 -0700

    platform/x86/intel/pmt: Cache the telemetry discovery header

    pmt_telem_header_decode() only needs the discovery header dwords, but it
    currently decodes them by reading directly from entry->disc_table.

    Cache the discovery header in intel_pmt_entry when the device is created
    and have telemetry decode use the cached values instead of performing MMIO
    reads at decode time.

    The DVSEC discovery resource for a namespace is sized by its per-entry
    entry_size (in dwords), which can be less than the 4-dword cache (e.g.
    telemetry uses entry_size = 3, i.e. 12 bytes). Cap the memcpy_fromio()
    to resource_size(disc_res) so the new cache does not read past the
    mapped region. Any unread dwords stay zero from the zero-initialized
    allocation of the containing struct.

    This keeps the telemetry header decode path independent of how the
    discovery data is backed and avoids baking a direct MMIO assumption into
    the feature-specific decode logic.

    Assisted-by: GitHub-Copilot:claude-opus-4.7
    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/f805e2ada52dc0661761cda7f692e76e6ea2d257.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen f8235c09b4 platform/x86/intel/pmt: Pass discovery index instead of resource
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 4a87492cd137d158779923a034d7e742f7358952
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:45 2026 -0700

    platform/x86/intel/pmt: Pass discovery index instead of resource

    Change PMT class code to pass a discovery index rather than a direct struct
    resource when creating entries. This allows the class to identify the
    discovery source generically without assuming PCI BAR resources. For PCI
    devices, the index still resolves to a resource in the intel_vsec_device.
    Other discovery sources, such as ACPI, can use the same index without
    needing a struct resource.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Link: https://patch.msgid.link/8e785902c6a3ac1b5a9c3f0f65096553dc5acd4f.1781294741.git.david.e.box@linux.intel.com
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen 43f2bf12e1 platform/x86/intel/pmt/telemetry: Move overlap check to post-decode hook
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit 521460e6699557f2aa0e4818110e082b76809e98
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:44 2026 -0700

    platform/x86/intel/pmt/telemetry: Move overlap check to post-decode hook

    Update the telemetry namespace to use the new PMT class pre/post decode
    interface. The overlap check, which previously occurred during header
    decode, is now performed in the post-decode hook once header fields are
    populated. This preserves existing behavior while reusing the same header
    decode logic across PMT drivers.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://patch.msgid.link/2f5e429a38e22eb45fcfaaca4e037fa395d4f199.1781294741.git.david.e.box@linux.intel.com
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen 97e46be01e platform/x86/intel/pmt/crashlog: Split init into pre-decode
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit b3de79d932bdcee4b2b9c8f9a058516699cf1c50
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:43 2026 -0700

    platform/x86/intel/pmt/crashlog: Split init into pre-decode

    Refactor crashlog initialization to use the PMT namespace pre-decode hook:

      - Add pmt_crashlog_pre_decode() to parse type/version, select the
        crashlog_info, initialize the control mutex, and set entry->attr_grp.
      - Simplify pmt_crashlog_header_decode() to only read header fields from
        the discovery table.
      - Wire the namespace with .pmt_pre_decode = pmt_crashlog_pre_decode.

    This separates structural initialization from header parsing, aligning
    crashlog with the PMT class pre/post decode flow.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://patch.msgid.link/ed8cda8456c97132cf2d2b4ff6a5cffb1ce3a666.1781294741.git.david.e.box@linux.intel.com
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00
Dennis Chen 218eed2853 platform/x86/intel/pmt: Add pre/post decode hooks around header parsing
JIRA: https://redhat.atlassian.net/browse/RHEL-241103

Upstream status: v7.2

commit acd3b94f8604aeee2b62f8fd18e95a0474546288
Author: David E. Box <david.e.box@linux.intel.com>
Date:   Fri Jun 12 14:01:42 2026 -0700

    platform/x86/intel/pmt: Add pre/post decode hooks around header parsing

    Add optional pre- and post-decode callbacks to the PMT class so namespaces
    can perform setup and cleanup steps around header parsing.

      - Add pmt_pre_decode() and pmt_post_decode() to struct
        intel_pmt_namespace.
      - Update intel_pmt_dev_create() to invoke, in order:
          pre → header_decode() → post.
      - Keep the existing pmt_header_decode() callback unchanged.

    No functional changes. This adds flexibility for upcoming decoders while
    preserving current behavior.

    Signed-off-by: David E. Box <david.e.box@linux.intel.com>
    Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
    Link: https://patch.msgid.link/b178a341601ca694db99c3b738fe4ed9e0c2bede.1781294741.git.david.e.box@linux.intel.com
    Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>

Signed-off-by: Dennis Chen <dechen@redhat.com>
2026-08-24 22:50:48 -04:00