Commit Graph
1352050 Commits
Author SHA1 Message Date
Alexandra Hájková 5f85ce9449 [redhat] kernel-6.12.0-214.el10
Signed-off-by: Alexandra Hájková <ahajkova@redhat.com>
kernel-6.12.0-214.el10
2026-03-18 20:56:12 +01:00
Alexandra Hájková 4319162d6c 7d431b00c77 Merge: Merge tag 'kernel-6.12.0-211.2.1.el10_2' into main
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2252

    Dropped changes:
      - Makefile.rhelver

Signed-off-by: Scott Weaver <scweaver@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:46:32 +01:00
Alexandra Hájková 957ade8cc5 Merge: autofs: dont trigger mount if it cant succeed
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2206

JIRA: https://issues.redhat.com/browse/RHEL-134674

See the commit description for the problem description and how it's resolved by this change. The description is still valid after the changes made in the commit for RHEL as described below.

The commit changes are still valid because to identify the mount namespace of the automount owner (the process that manages the automounting for the given mount) an id is used. The id the upstream patch uses is a new id (in a commit also merged at the time this patch was posted) contained in struct ns_common which contains namespace common fields. Prior to these patches there is another id located in struct mnt_namespace that's part of a union which is valid while the namespace itself is valid and is used instead of the new id as was suggested by the upstream patch series author, also the VFS maintainer.

Signed-off-by: Ian Kent <ikent@redhat.com>

Approved-by: Pavel Reichl <preichl@redhat.com>
Approved-by: Andreas Gruenbacher <agruenba@redhat.com>
Approved-by: Abhi Das <adas@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:46 +01:00
Alexandra Hájková 4196667017 Merge: vdpa/mlx5: fix the MAC address via vdpa tool
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2199

JIRA: https://issues.redhat.com/browse/RHEL-127007

build : https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=70218166

testby me

Signed-off-by: Cindy Lu <lulu@redhat.com>

Approved-by: Laurent Vivier <lvivier@redhat.com>
Approved-by: Jason Wang <jasowang@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:46 +01:00
Alexandra Hájková 949e419bd4 Merge: redhat/configs: enable CONFIG_AQTION on all archs
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2165

JIRA: https://issues.redhat.com/browse/RHEL-150852
Upstream status: Posted https://gitlab.com/cki-project/kernel-ark/-/merge_requests/4391

The Aquantia "atlantic" network driver was previously enabled in RHEL only for x86 and automotive aarch64. We know of at least one non-automotive aarch64 computer model that needs this driver.

Let's just enable the driver for all archs, because it's not typical to have NIC drivers selected for only some of them.

No more is there a difference between the fedora and rhel config for CONFIG_AQTION, so put it in common.

Signed-off-by: Michal Schmidt <mschmidt@redhat.com>

Approved-by: Kamal Heib <kheib@redhat.com>
Approved-by: José Ignacio Tornos Martínez <jtornosm@redhat.com>
Approved-by: Ivan Vecera <ivecera@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:45 +01:00
Alexandra Hájková 91ff5b4d1d Merge: block layer: update with v6.19
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2188

block layer: update with v6.19

JIRA: https://issues.redhat.com/browse/RHEL-144763

Omitted-fix: ce8ee8583ed8 ("block: use trylock to avoid lockdep circular dependency in sysfs")

Omitted-fix: dd677d059838 ("nvmet-fcloop: Check remoteport port_state before calling done callback")

The above two fixes are just merged to 7.0-rc3, and I will address them by creating new jira issues.

Signed-off-by: Ming Lei <ming.lei@redhat.com>

Approved-by: Jeff Moyer <jmoyer@redhat.com>
Approved-by: Steve Best <sbest@redhat.com>
Approved-by: Rafael Aquini <raquini@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:45 +01:00
Alexandra Hájková 857d70b407 Merge: platform/x86/amd/pmf: Update ring buffer to store custom BIOS input values
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2149

Description:
AMD PMF driver timing issue which causes the custom BIOS input event value could not be saved properly

JIRA: https://issues.redhat.com/browse/RHEL-130539

Signed-off-by: Steve Best <sbest@redhat.com>

Approved-by: Tony Camuso <tcamuso@redhat.com>
Approved-by: Lenny Szubowicz <lszubowi@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:45 +01:00
Alexandra Hájková f08aad11be Merge: platform/x86/amd/pmf: Prevent TEE errors after hibernation
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2147

Description:
CCP PSP fails to reinitialize after hibernation causing TEE errors

JIRA: https://issues.redhat.com/browse/RHEL-130538

Signed-off-by: Steve Best <sbest@redhat.com>

Approved-by: Tony Camuso <tcamuso@redhat.com>
Approved-by: Lenny Szubowicz <lszubowi@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:44 +01:00
Alexandra Hájková 78ccbf2754 Merge: redhat: genlog: add new JIRA cloud server hostname
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2241

JIRA: INTERNAL
Upstream Status: RHEL only

Support also new JIRA cloud server hostname. We will eventually remove
the old one.

Signed-off-by: Jan Stancek <jstancek@redhat.com>

Approved-by: Patrick Talbert <ptalbert@redhat.com>
Approved-by: Scott Weaver <scweaver@redhat.com>
Approved-by: Jarod Wilson <jarod@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:44 +01:00
Alexandra Hájková 21a85b88b6 Merge: nfsd: check that server is running in unlock_filesystem
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2209

nfsd: check that server is running in unlock_filesystem

JIRA: https://issues.redhat.com/browse/RHEL-152916

Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>

Approved-by: Roberto Bergantinos Corpas <rbergant@redhat.com>
Approved-by: Scott Mayhew <smayhew@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-18 20:03:44 +01:00
Scott Weaver 82d56c16f3 Merge tag 'kernel-6.12.0-211.2.1.el10_2' into main
kernel-6.12.0-211.2.1.el10_2

Signed-off-by: Scott Weaver <scweaver@redhat.com>
2026-03-12 11:56:25 -04:00
Jan Stancek 992e4c54ab redhat: genlog: add new JIRA cloud server hostname
JIRA: INTERNAL
Upstream Status: RHEL only

Support also new JIRA cloud server hostname. We will eventually remove
the old one.

Signed-off-by: Jan Stancek <jstancek@redhat.com>
2026-03-11 08:59:48 +01:00
Alexandra Hájková c06763565e [redhat] kernel-6.12.0-213.el10
Signed-off-by: Alexandra Hájková <ahajkova@redhat.com>
kernel-6.12.0-213.el10
2026-03-10 08:25:04 +01:00
Alexandra Hájková 1bac89baaf Merge: powerpc/smp: Expose die_id and die_cpumask
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2207

Description: powerpc/smp: Expose die_id and die_cpumask

JIRA: https://issues.redhat.com/browse/RHEL-138728

Build Info: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=70219642

Tested: Verified Brew build test kernel RPMs

Signed-off-by: Mamatha Inamdar <minamdar@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: Alexandra Hájková <ahajkova@redhat.com>
2026-03-10 08:19:02 +01:00
Alexandra Hájková 517c5f3dad Merge: smb: client: fix broken multichannel with krb5+signing [rhel-10.3]
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2202

- fix broken multichannel with krb5+signing

JIRA: https://issues.redhat.com/browse/RHEL-151838

Signed-off-by: Paulo Alcantara <paalcant@redhat.com>

Approved-by: Roberto Bergantinos Corpas <rbergant@redhat.com>
Approved-by: Jay Shin <jaeshin@redhat.com>
Approved-by: Scott Mayhew <smayhew@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
Approved-by: David Howells <dhowells@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-10 08:18:57 +01:00
Alexandra Hájková 2bfabb88e5 Merge: allow finish_no_open(file, ERR_PTR(-E...))
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2219

JIRA: https://issues.redhat.com/browse/RHEL-153335

* allow finish_no_open(file, ERR_PTR(-E...)

Signed-off-by: Roberto Bergantinos Corpas <rbergant@redhat.com>

Approved-by: Olga Kornievskaia <okorniev@redhat.com>
Approved-by: Paulo Alcantara <paalcant@redhat.com>
Approved-by: Scott Mayhew <smayhew@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-10 08:18:46 +01:00
Alexandra Hájková 1caa59de8b Merge: nvmem: s32g-ocotp: backport and enable driver in automotive
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2185

Backport `drivers/nvmem/s32g-ocotp-nvmem.c` and enable the new Kconfig in automotive.

Because the driver defines a read-only memory region, a simple read test is all that's needed:

```
/sys/bus/nvmem/devices/s32g-ocotp0/
|-- nvmem
|-- of_node -> ../../../../../firmware/devicetree/base/soc@0/nvmem@400a4000
|-- power
|   |-- autosuspend_delay_ms
|   |-- control
|   |-- runtime_active_time
|   |-- runtime_status
|   `-- runtime_suspended_time
|-- subsystem -> ../../../../../bus/nvmem
|-- type
`-- uevent

1 directories, 10 files
total 0
-r--r--r--    1 root     root          1024 Jan  1 00:01 nvmem
lrwxrwxrwx    1 root     root             0 Jan  1 00:01 of_node -> ../../../../../firmware/devicetree/base/soc@0/nvmem@400a4000
drwxr-xr-x    2 root     root             0 Jan  1 00:01 power
lrwxrwxrwx    1 root     root             0 Jan  1 00:01 subsystem -> ../../../../../bus/nvmem
-r--r--r--    1 root     root          4096 Jan  1 00:01 type
-rw-r--r--    1 root     root          4096 Jan  1 00:01 uevent
00000208: 00000000 00000000 ac5f950d 0ca81513  ........._......
00000218: 401b0100 XXXXXXXX XXXXXXXX XXXXXXXX  @...............
00000228: XXXXXXXX XXXXXXXX XXXXXXXX 00000000  ................
00000238: 00000000 00000000 00000000 00000000  ................
00000248: 00000000 00000000 00000000 XXXXXXXX  ................
00000258: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000268: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000278: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000288: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000298: 22080000 00000000 00000000 00000000  "...............
000002a8: 00000000 XXXXXXXX XXXXXXXX XXXXXXXX  ................
000002b8: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
000002c8: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
000002d8: XXXXXXXX 00000000 00000000 00000000  ................
000002e8: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
000002f8: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000308: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000318: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000328: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000338: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000348: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000358: XXXXXXXX XXXXXXXX dabadaba 00000000  ................
00000368: 00000000 00000000 00000000 00000000  ................
00000378: 00000000 00000000 00000000 00000000  ................
00000388: 00000000 XXXXXXXX XXXXXXXX XXXXXXXX  ................
00000398: XXXXXXXX afd10000 XXXXXXXX XXXXXXXX  ................
000003a8: 80000000 00000000 008080ac XXXXXXXX  ................
000003b8: XXXXXXXX XXXXXXXX XXXXXXXX 800000e0  ................
000003c8: XXXXXXXX XXXXXXXX e0e0d000 00008080  ................
000003d8: XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX  ................
000003e8: XXXXXXXX XXXXXXXX XXXXXXXX 00000000  ................
000003f8: 00000000 00000000                    ........
```

A couple things to note:

* I dropped the first keepout region (520 bytes) and blocked out the rest of the driver's keepouts with `XXXXXXXX` in the above dump to distinguish an actual-zero field from a keepout that gets reported as zero, based on this table from the driver:

  ```c
  static struct nvmem_keepout s32g_keepouts[] = {
  	{ .start = 0,   .end = 520 },
  	{ .start = 540, .end = 564 },
  	{ .start = 596, .end = 664 },
  	{ .start = 668, .end = 676 },
  	{ .start = 684, .end = 732 },
  	{ .start = 744, .end = 864 },
  	{ .start = 908, .end = 924 },
  	{ .start = 928, .end = 936 },
  	{ .start = 948, .end = 964 },
  	{ .start = 968, .end = 976 },
  	{ .start = 984, .end = 1012 },
  };
  ```

* `xxd` is reporting the values with big-endian byte ordering since this version of `xxd` didn't have a little-endian flag.

JIRA: https://issues.redhat.com/browse/RHEL-152643

Signed-off-by: Jared Kangas <jkangas@redhat.com>

Approved-by: Enric Balletbo i Serra <eballetbo@redhat.com>
Approved-by: Brian Masney <bmasney@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-10 08:18:31 +01:00
Alexandra Hájková d2a3e5a89d Merge: redhat/scripts: remove remnants of git notes usage and dead code
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/2210

JIRA: INTERNAL
Upstream Status: RHEL only

commit b20bb303e13511d863821beafff4a2210e2c0009
Author: Jan Stancek <jstancek@redhat.com>
Date:   Mon Mar 2 03:59:55 2026 -0500

    redhat/scripts: remove remnants of git notes usage and dead code

    We stopped using git notes in downstream RHELs for changelog metadata
    a while ago, so these can be dropped along with some other dead code.

    Signed-off-by: Jan Stancek <jstancek@redhat.com>

Signed-off-by: Jan Stancek <jstancek@redhat.com>

Approved-by: Scott Weaver <scweaver@redhat.com>
Approved-by: Alexandra Hájková <ahajkova@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>

Merged-by: Alexandra Hájková <ahajkova@redhat.com>
2026-03-10 08:18:23 +01:00
Scott Weaver 839121e539 Merge tag 'kernel-6.12.0-211.1.1.el10_2' into main
kernel-6.12.0-211.1.1.el10_2

Signed-off-by: Scott Weaver <scweaver@redhat.com>
2026-03-06 08:42:56 -05:00
CKI KWF Bot 15f33869b9 [redhat] kernel-6.12.0-211.2.1.el10_2
Signed-off-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
2026-03-06 11:10:56 +00:00
CKI KWF Bot 3c8254dc1a Merge: KVM: Host kernel panics with "unexpected #NM exception" at restore_fpregs_from_fpstate
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-10/-/merge_requests/797

Until now, fpregs->xfd acted as both the guest value and the value that
the host used when executing XSAVES and XRSTORS.  This is wrong; the
data in the guest's FPU might not be initialized even if a bit is
set in XFD, and when that happens XRSTORing the guest FPU will fail
with a #NM exception.

Instead, store the value of XFD together with XFD_ERR in struct
fpu_guest, and synchronize it in fpregs_ensure_guest_state().

JIRA: https://issues.redhat.com/browse/RHEL-148618

Tested: kvm unit tests and selftests on Intel and AMD machine.

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>

Approved-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Approved-by: Steve Best <sbest@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-03-06 11:09:59 +00:00
CKI KWF Bot 9891dc8238 Merge: idpf: export RX hardware timestamping information to XDP
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-10/-/merge_requests/762

JIRA: https://issues.redhat.com/browse/RHEL-136674

This adds a feature to idpf. A partner requested it and provided a business justification.

Signed-off-by: Michal Schmidt <mschmidt@redhat.com>

Approved-by: José Ignacio Tornos Martínez <jtornosm@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-03-06 11:09:58 +00:00
Roberto Bergantinos Corpas abbed2f784 allow finish_no_open(file, ERR_PTR(-E...))
JIRA: https://issues.redhat.com/browse/RHEL-153335

commit fe91e078b60d1beabf5cef4a37c848457a6d2dfb
Author: Al Viro <viro@zeniv.linux.org.uk>
Date:   Fri Sep 12 11:20:27 2025 -0400

    allow finish_no_open(file, ERR_PTR(-E...))

    ... allowing any ->lookup() return value to be passed to it.

    Reviewed-by: NeilBrown <neil@brown.name>
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Signed-off-by: Roberto Bergantinos Corpas <rbergant@redhat.com>
2026-03-06 10:01:30 +01:00
Jan Stancek 3b29075ac3 redhat/scripts: remove remnants of git notes usage and dead code
JIRA: INTERNAL
Upstream Status: RHEL only

commit b20bb303e13511d863821beafff4a2210e2c0009
Author: Jan Stancek <jstancek@redhat.com>
Date:   Mon Mar 2 03:59:55 2026 -0500

    redhat/scripts: remove remnants of git notes usage and dead code

    We stopped using git notes in downstream RHELs for changelog metadata
    a while ago, so these can be dropped along with some other dead code.

    Signed-off-by: Jan Stancek <jstancek@redhat.com>

Signed-off-by: Jan Stancek <jstancek@redhat.com>
2026-03-03 21:25:06 +01:00
Olga Kornievskaia 27fd32e6b8 nfsd: use correct loop termination in nfsd4_revoke_states()
JIRA: https://issues.redhat.com/browse/RHEL-152916

commit fb321998de7639f1954430674475e469fb529d9c
Author: NeilBrown <neil@brown.name>
Date:   Mon Dec 15 08:07:28 2025 +1100

    nfsd: use correct loop termination in nfsd4_revoke_states()

    The loop in nfsd4_revoke_states() stops one too early because
    the end value given is CLIENT_HASH_MASK where it should be
    CLIENT_HASH_SIZE.

    This means that an admin request to drop all locks for a filesystem will
    miss locks held by clients which hash to the maximum possible hash value.

    Fixes: 1ac3629bf0 ("nfsd: prepare for supporting admin-revocation of state")
    Cc: stable@vger.kernel.org
    Signed-off-by: NeilBrown <neil@brown.name>
    Reviewed-by: Jeff Layton <jlayton@kernel.org>
    Signed-off-by: Chuck Lever <chuck.lever@oracle.com>

Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>
2026-03-03 11:12:41 -05:00
Olga Kornievskaia 5debcdfe1b nfsd: check that server is running in unlock_filesystem
JIRA: https://issues.redhat.com/browse/RHEL-152916

commit d0424066fcd294977f310964bed6f2a487fa4515
Author: Olga Kornievskaia <okorniev@redhat.com>
Date:   Mon Dec 15 14:10:36 2025 -0500

    nfsd: check that server is running in unlock_filesystem

    If we are trying to unlock the filesystem via an administrative
    interface and nfsd isn't running, it crashes the server. This
    happens currently because nfsd4_revoke_states() access state
    structures (eg., conf_id_hashtbl) that has been freed as a part
    of the server shutdown.

    [   59.465072] Call trace:
    [   59.465308]  nfsd4_revoke_states+0x1b4/0x898 [nfsd] (P)
    [   59.465830]  write_unlock_fs+0x258/0x440 [nfsd]
    [   59.466278]  nfsctl_transaction_write+0xb0/0x120 [nfsd]
    [   59.466780]  vfs_write+0x1f0/0x938
    [   59.467088]  ksys_write+0xfc/0x1f8
    [   59.467395]  __arm64_sys_write+0x74/0xb8
    [   59.467746]  invoke_syscall.constprop.0+0xdc/0x1e8
    [   59.468177]  do_el0_svc+0x154/0x1d8
    [   59.468489]  el0_svc+0x40/0xe0
    [   59.468767]  el0t_64_sync_handler+0xa0/0xe8
    [   59.469138]  el0t_64_sync+0x1ac/0x1b0

    Ensure this can't happen by taking the nfsd_mutex and checking that
    the server is still up, and then holding the mutex across the call to
    nfsd4_revoke_states().

    Reviewed-by: NeilBrown <neil@brown.name>
    Reviewed-by: Jeff Layton <jlayton@kernel.org>
    Fixes: 1ac3629bf0 ("nfsd: prepare for supporting admin-revocation of state")
    Cc: stable@vger.kernel.org
    Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>
    Signed-off-by: Chuck Lever <chuck.lever@oracle.com>

Signed-off-by: Olga Kornievskaia <okorniev@redhat.com>
2026-03-03 11:10:46 -05:00
CKI KWF Bot c56bf04606 [redhat] kernel-6.12.0-211.1.1.el10_2
Signed-off-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
2026-03-03 15:38:41 +00:00
CKI KWF Bot 0fba4a7458 Merge: vsock: add write-once semantics to child_ns_mode
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-10/-/merge_requests/787

JIRA: https://issues.redhat.com/browse/RHEL-151754

Upstream Status: net.git

Upstream we agreed on making `child_ns_mode` write-once. So this is the backport of https://lore.kernel.org/netdev/20260223-vsock-ns-write-once-v3-0-c0cde6959923@meta.com/ just landed on `net` tree. From that series:

    Two administrator processes may race when setting child_ns_mode: one
    sets it to "local" and creates a namespace, but another changes it to
    "global" in between. The first process ends up with a namespace in the
    wrong mode. Make child_ns_mode write-once so that a namespace manager
    can set it once, check the value, and be guaranteed it won't change
    before creating its namespaces. Writing a different value after the
    first write returns -EBUSY.

The last 2 patches are from that series, the other 2 are needed to make the backport clean:

```
$ git backport-diff -u upstream/net -r HEAD~4..HEAD 2>/dev/null
Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively

001/4:[----] [--] 'vsock: document namespace mode sysctls'
002/4:[----] [--] 'vsock: Use container_of() to get net namespace in sysctl handlers'
003/4:[----] [--] 'vsock: lock down child_ns_mode as write-once'
004/4:[----] [--] 'vsock: document write-once behavior of the child_ns_mode sysctl'
```

Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>

Closes RHEL-151754

Approved-by: Davide Caratti <dcaratti@redhat.com>
Approved-by: Luigi Leonardi <leonardi@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-03-03 15:37:22 +00:00
CKI KWF Bot 9b31cdc5a1 Merge: nvme: fix memory leak in quirks_param_set()
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-10/-/merge_requests/782

JIRA: https://issues.redhat.com/browse/RHEL-148483

JIRA: https://issues.redhat.com/browse/RHELMISC-27475

Upstream Status: https://git.infradead.org/nvme.git

When loading the nvme module, if the 'quirks' parameter is specified
via both the kernel command line (e.g., nvme.quirks=...) and the
modprobe command line (e.g., modprobe nvme quirks=...), the
quirks_param_set() callback is invoked twice.

Currently, in the double-invocation scenario, the second call
overwrites the nvme_pci_quirk_list pointer, causing the memory
allocated in the first call to leak.

Fix this by freeing the existing list before assigning the new one.

Fixes: b4247c8317c5 ("nvme: add support for dynamic quirk configuration via module parameter")
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
(cherry picked from commit bbdaa8c17cae18b977f4509911d7a390aa8a6597)
Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>

Closes RHEL-148483

Approved-by: Chris Leech <cleech@redhat.com>
Approved-by: Michal Rábek <mrabek@redhat.com>
Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
Approved-by: Tomas Henzl <thenzl@redhat.com>

Merged-by: CKI GitLab Kmaint Pipeline Bot <26919896-cki-kmaint-pipeline-bot@users.noreply.gitlab.com>
2026-03-03 15:37:20 +00:00
CKI KWF Bot 8cfc74ae36 Merge: Implement recovered clock relationship between NIC and DPLL
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-10/-/merge_requests/779

JIRA: https://issues.redhat.com/browse/RHEL-146369

Note that preliminary ARK config mismatch is reasonable for now because CONFIG_DPLL_REFCNT_TRACKER will be part of kernel v7.0 that was not merged to kernel-ark yet.

Commits:
```
d0f4771e2bef ("dpll: Allow associating dpll pin with a firmware node")
e6dc7727b608 ("dpll: zl3073x: Associate pin with fwnode handle")
2be467588d6b ("dpll: Add notifier chain for dpll events")
711696b3e168 ("dpll: Support dynamic pin index allocation")
fdad05ed4ec2 ("dpll: zl3073x: Add support for mux pin type")
729f5e0153bd ("dpll: Enhance and consolidate reference counting logic")
3c0da1030c58 ("dpll: Add reference count tracking support")
085ca5d20171 ("drivers: Add support for DPLL reference count tracking")
ad1df4f2d591 ("ice: dpll: Support E825-C SyncE and dynamic pin discovery")
```

Signed-off-by: Ivan Vecera <ivecera@redhat.com>

Approved-by: Petr Oros <poros@redhat.com>
Approved-by: José Ignacio Tornos Martínez <jtornosm@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-03-03 15:37:18 +00:00
CKI KWF Bot 7b7c8343fe Merge: [GNR-D DPLL] zl3073 output pins phase adjustment direction is incorrect
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-10/-/merge_requests/777

JIRA: https://issues.redhat.com/browse/RHEL-146257

```
commit 5d41f95f5d0bd9db02f3f16a649d0631f71e9fdb
Author: Ivan Vecera <ivecera@redhat.com>
Date:   Thu Feb 5 19:10:55 2026 +0100

    dpll: zl3073x: Fix output pin phase adjustment sign

    The output pin phase adjustment functions incorrectly negate the phase
    compensation value.

    Per the ZL3073x datasheet, the output phase compensation register is
    simply a signed two's complement integer where:
     - Positive values move the phase later in time
     - Negative values move the phase earlier in time

    No negation is required. The erroneous negation caused phase adjustments
    to be applied in the wrong direction.

    Note that input pin phase adjustment correctly uses negation because the
    hardware has an inverted convention for input references (positive moves
    phase earlier, negative moves phase later).

    Fixes: 6287262f761e ("dpll: zl3073x: Add support to adjust phase")
    Signed-off-by: Ivan Vecera <ivecera@redhat.com>
    Reviewed-by: Vadim Fedorenko <vadim.fedorenko@linux.dev>
    Link: https://patch.msgid.link/20260205181055.129768-1-ivecera@redhat.com
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>
```

Signed-off-by: Ivan Vecera <ivecera@redhat.com>

Approved-by: Petr Oros <poros@redhat.com>
Approved-by: Michal Schmidt <mschmidt@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-03-03 15:37:16 +00:00
CKI KWF Bot ff83d2cdbc Merge: redhat: set defaults for RHEL 10.2
MR: https://gitlab.com/redhat/rhel/src/kernel/rhel-10/-/merge_requests/773

JIRA: INTERNAL
Upstream Status: RHEL only

Now that we have forked from CentOS Stream, we need to switch the
release number to use the zstream scheme and update our default disttag
to match that used by the brew build environment for RHEL 10.2.

Signed-off-by: Scott Weaver <scweaver@redhat.com>

Approved-by: Patrick Talbert <ptalbert@redhat.com>
Approved-by: Wade Mealing <wmealing@redhat.com>
Approved-by: Tales da Aparecida <tales.aparecida@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-03-03 15:37:14 +00:00
Mamatha Inamdar 4969aa1a21 powerpc/smp: Expose die_id and die_cpumask
JIRA: https://issues.redhat.com/browse/RHEL-138728

commit fb2ff9fa72e20a75cab0ffc9dc8735de68ed4d0d
Author: Srikar Dronamraju <srikar@linux.ibm.com>
Date:   Wed Nov 12 13:18:59 2025 +0530

    powerpc/smp: Expose die_id and die_cpumask

    >From Power10 processors onwards, each chip has 2 hemispheres. For LPARs
    running on PowerVM Hypervisor, hypervisor determines the allocation of
    CPU groups to each LPAR, resulting in two LPARs with the same number of
    CPUs potentially having different numbers of CPUs from each hemisphere.
    Additionally, it is not feasible to ascertain the hemisphere based
    solely on the CPU number.

    Users wishing to assign their workload to all CPUs, or a subset of CPUs
    within a specific hemisphere, encounter difficulties in identifying the
    cpumask. To address this, it is proposed to expose hemisphere
    information as a die in sysfs. This aligns with other architectures
    and facilitates the identification of CPUs within the same hemisphere.
    Tools such as lstopo can also access this information.

    Please note: The hypervisor reveals the locality of the CPUs to
    hemispheres only in dedicated mode. Consequently, in systems where
    hemisphere information is unavailable, such as shared LPARs, the
    die_cpus information in sysfs will mirror package_cpus, with
    die_id set to -1.

    Without this change.
    $ grep . /sys/devices/system/cpu/cpu16/topology/{die*,package*} 2>/dev/null
    /sys/devices/system/cpu/cpu16/topology/package_cpus:000000,000000ff,ffff0000
    /sys/devices/system/cpu/cpu16/topology/package_cpus_list:16-39

    With this change.
    $ grep . /sys/devices/system/cpu/cpu16/topology/{die*,package*} 2>/dev/null
    /sys/devices/system/cpu/cpu16/topology/die_cpus:000000,00000000,00ff0000
    /sys/devices/system/cpu/cpu16/topology/die_cpus_list:16-23
    /sys/devices/system/cpu/cpu16/topology/die_id:2
    /sys/devices/system/cpu/cpu16/topology/package_cpus:000000,000000ff,ffff0000
    /sys/devices/system/cpu/cpu16/topology/package_cpus_list:16-39

    snipped lstopo-no-graphics o/p
      Group0 L#0 (total=8747584KB)
        Package L#0 (total=3564096KB CPUModel="POWER10 (architected), altivec supported" CPURevision="2.0 (pvr 0080 0200)")
          NUMANode L#0 (P#0 local=3564096KB total=3564096KB)
          Die L#0 (P#0)
            Core L#0 (P#0)
    <snipped>
        Package L#1 (total=5183488KB CPUModel="POWER10 (architected), altivec supported" CPURevision="2.0 (pvr 0080 0200)")
          NUMANode L#1 (P#1 local=5183488KB total=5183488KB)
          Die L#2 (P#2)
            Core L#2 (P#16)
              L3Cache L#4 (size=4096KB linesize=128 ways=16)
                L2Cache L#4 (size=1024KB linesize=128 ways=8)
                  L1dCache L#4 (size=32KB linesize=128 ways=8)
                    L1iCache L#4 (size=48KB linesize=128 ways=6)
                      PU L#16 (P#16)
                      PU L#17 (P#18)
                      PU L#18 (P#20)
                      PU L#19 (P#22)
              L3Cache L#5 (size=4096KB linesize=128 ways=16)
                L2Cache L#5 (size=1024KB linesize=128 ways=8)
                  L1dCache L#5 (size=32KB linesize=128 ways=8)
                    L1iCache L#5 (size=48KB linesize=128 ways=6)
                      PU L#20 (P#17)
                      PU L#21 (P#19)
                      PU L#22 (P#21)
                      PU L#23 (P#23)
          Die L#3 (P#3)
            Core L#3 (P#24)
              L3Cache L#6 (size=4096KB linesize=128 ways=16)
                L2Cache L#6 (size=1024KB linesize=128 ways=8)
                  L1dCache L#6 (size=32KB linesize=128 ways=8)
                    L1iCache L#6 (size=48KB linesize=128 ways=6)
                      PU L#24 (P#24)
                      PU L#25 (P#26)
                      PU L#26 (P#28)
                      PU L#27 (P#30)
              L3Cache L#7 (size=4096KB linesize=128 ways=16)
                L2Cache L#7 (size=1024KB linesize=128 ways=8)
                  L1dCache L#7 (size=32KB linesize=128 ways=8)
                    L1iCache L#7 (size=48KB linesize=128 ways=6)
                      PU L#28 (P#25)
                      PU L#29 (P#27)
                      PU L#30 (P#29)
                      PU L#31 (P#31)
            Core L#4 (P#32)
              L3Cache L#8 (size=4096KB linesize=128 ways=16)
                L2Cache L#8 (size=1024KB linesize=128 ways=8)
                  L1dCache L#8 (size=32KB linesize=128 ways=8)
                    L1iCache L#8 (size=48KB linesize=128 ways=6)
                      PU L#32 (P#32)
                      PU L#33 (P#34)
                      PU L#34 (P#36)
                      PU L#35 (P#38)
              L3Cache L#9 (size=4096KB linesize=128 ways=16)
                L2Cache L#9 (size=1024KB linesize=128 ways=8)
                  L1dCache L#9 (size=32KB linesize=128 ways=8)
                    L1iCache L#9 (size=48KB linesize=128 ways=6)
                      PU L#36 (P#33)
                      PU L#37 (P#35)
                      PU L#38 (P#37)
                      PU L#39 (P#39)
      Group0 L#1 (total=7736896KB)
        Package L#2 (total=5170880KB CPUModel="POWER10 (architected), altivec supported" CPURevision="2.0 (pvr 0080 0200)")
          NUMANode L#2 (P#2 local=5170880KB total=5170880KB)
          Die L#4 (P#4)
    <snipped>

    Reviewed-by: Shrikanth Hegde <sshegde@linux.ibm.com>
    Signed-off-by: Srikar Dronamraju <srikar@linux.ibm.com>
    Signed-off-by: Madhavan Srinivasan <maddy@linux.ibm.com>
    Link: https://patch.msgid.link/20251112074859.814087-1-srikar@linux.ibm.com

Signed-off-by: Mamatha Inamdar <minamdar@redhat.com>
2026-03-02 23:48:03 -05:00
Ian Kent 2418448ad4 autofs: dont trigger mount if it cant succeed
JIRA: https://issues.redhat.com/browse/RHEL-134674
Upstream status: Linus

Conflicts: The upstream patch uses an id added to struct ns_common in
   upstream commit 885fc8ac0a4dc ("nstree: make iterator generic") but
   this commit has only recently been merged upstream. However the seq
   field of struct mnt_namespace (which contains struct ns_common) can
   be used to identify the mount namespace so that's what's used instead.

commit 922a6f34c1756d2b0c35d9b2d915b8af19e85965
Author: Ian Kent <raven@themaw.net>
Date:   Tue Nov 18 10:46:31 2025 +0800

    autofs: dont trigger mount if it cant succeed

    If a mount namespace contains autofs mounts, and they are propagation
    private, and there is no namespace specific automount daemon to handle
    possible automounting then attempted path resolution will loop until
    MAXSYMLINKS is reached before failing causing quite a bit of noise in
    the log.

    Add a check for this in autofs ->d_automount() so that the VFS can
    immediately return an error in this case. Since the mount is propagation
    private an EPERM return seems most appropriate.

    Suggested by: Christian Brauner <brauner@kernel.org>

    Signed-off-by: Ian Kent <raven@themaw.net>
    Link: https://patch.msgid.link/20251118024631.10854-2-raven@themaw.net
    Signed-off-by: Christian Brauner <brauner@kernel.org>

Signed-off-by: Ian Kent <ikent@redhat.com>
2026-03-03 09:30:46 +08:00
Maxim Levitsky eb4ae89f11 selftests: kvm: Verify TILELOADD actually #NM faults when XFD[18]=1
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit 3611ca7c12b740e250d83f8bbe3554b740c503b0
Author: Sean Christopherson <seanjc@google.com>
Date:   Mon Dec 29 12:23:30 2025 -0800

    selftests: kvm: Verify TILELOADD actually #NM faults when XFD[18]=1

    Rework the AMX test's #NM handling to use kvm_asm_safe() to verify an #NM
    actually occurs.  As is, a completely missing #NM could go unnoticed.

    Signed-off-by: Sean Christopherson <seanjc@google.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:28 -05:00
Maxim Levitsky ab077348ba selftests: kvm: try getting XFD and XSAVE state out of sync
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit 0383a8edef396cf0a6884b0be81d62bde60737b0
Author: Paolo Bonzini <pbonzini@redhat.com>
Date:   Wed Dec 31 16:47:26 2025 +0100

    selftests: kvm: try getting XFD and XSAVE state out of sync

    The host is allowed to set FPU state that includes a disabled
    xstate component.  Check that this does not cause bad effects.

    Cc: stable@vger.kernel.org
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:28 -05:00
Maxim Levitsky 2859d3b74a selftests: kvm: replace numbered sync points with actions
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit a1025dcd377ef92d9a09af03b70ce80be281ee22
Author: Paolo Bonzini <pbonzini@redhat.com>
Date:   Wed Dec 24 00:44:49 2025 +0100

    selftests: kvm: replace numbered sync points with actions

    Rework the guest=>host syncs in the AMX test to use named actions instead
    of arbitrary, incrementing numbers.  The "stage" of the test has no real
    meaning, what matters is what action the test wants the host to perform.
    The incrementing numbers are somewhat helpful for triaging failures, but
    fully debugging failures almost always requires a much deeper dive into
    the test (and KVM).

    Using named actions not only makes it easier to extend the test without
    having to shift all sync point numbers, it makes the code easier to read.

    [Commit message by Sean Christopherson]

    Cc: stable@vger.kernel.org
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:28 -05:00
Maxim Levitsky e410cf8db7 x86/fpu: Clear XSTATE_BV[i] in guest XSAVE state whenever XFD[i]=1
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit b45f721775947a84996deb5c661602254ce25ce6
Author: Sean Christopherson <seanjc@google.com>
Date:   Wed Dec 31 16:43:15 2025 +0100

    x86/fpu: Clear XSTATE_BV[i] in guest XSAVE state whenever XFD[i]=1

    When loading guest XSAVE state via KVM_SET_XSAVE, and when updating XFD in
    response to a guest WRMSR, clear XFD-disabled features in the saved (or to
    be restored) XSTATE_BV to ensure KVM doesn't attempt to load state for
    features that are disabled via the guest's XFD.  Because the kernel
    executes XRSTOR with the guest's XFD, saving XSTATE_BV[i]=1 with XFD[i]=1
    will cause XRSTOR to #NM and panic the kernel.

    E.g. if fpu_update_guest_xfd() sets XFD without clearing XSTATE_BV:

      ------------[ cut here ]------------
      WARNING: arch/x86/kernel/traps.c:1524 at exc_device_not_available+0x101/0x110, CPU#29: amx_test/848
      Modules linked in: kvm_intel kvm irqbypass
      CPU: 29 UID: 1000 PID: 848 Comm: amx_test Not tainted 6.19.0-rc2-ffa07f7fd437-x86_amx_nm_xfd_non_init-vm #171 NONE
      Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015
      RIP: 0010:exc_device_not_available+0x101/0x110
      Call Trace:
       <TASK>
       asm_exc_device_not_available+0x1a/0x20
      RIP: 0010:restore_fpregs_from_fpstate+0x36/0x90
       switch_fpu_return+0x4a/0xb0
       kvm_arch_vcpu_ioctl_run+0x1245/0x1e40 [kvm]
       kvm_vcpu_ioctl+0x2c3/0x8f0 [kvm]
       __x64_sys_ioctl+0x8f/0xd0
       do_syscall_64+0x62/0x940
       entry_SYSCALL_64_after_hwframe+0x4b/0x53
       </TASK>
      ---[ end trace 0000000000000000 ]---

    This can happen if the guest executes WRMSR(MSR_IA32_XFD) to set XFD[18] = 1,
    and a host IRQ triggers kernel_fpu_begin() prior to the vmexit handler's
    call to fpu_update_guest_xfd().

    and if userspace stuffs XSTATE_BV[i]=1 via KVM_SET_XSAVE:

      ------------[ cut here ]------------
      WARNING: arch/x86/kernel/traps.c:1524 at exc_device_not_available+0x101/0x110, CPU#14: amx_test/867
      Modules linked in: kvm_intel kvm irqbypass
      CPU: 14 UID: 1000 PID: 867 Comm: amx_test Not tainted 6.19.0-rc2-2dace9faccd6-x86_amx_nm_xfd_non_init-vm #168 NONE
      Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015
      RIP: 0010:exc_device_not_available+0x101/0x110
      Call Trace:
       <TASK>
       asm_exc_device_not_available+0x1a/0x20
      RIP: 0010:restore_fpregs_from_fpstate+0x36/0x90
       fpu_swap_kvm_fpstate+0x6b/0x120
       kvm_load_guest_fpu+0x30/0x80 [kvm]
       kvm_arch_vcpu_ioctl_run+0x85/0x1e40 [kvm]
       kvm_vcpu_ioctl+0x2c3/0x8f0 [kvm]
       __x64_sys_ioctl+0x8f/0xd0
       do_syscall_64+0x62/0x940
       entry_SYSCALL_64_after_hwframe+0x4b/0x53
       </TASK>
      ---[ end trace 0000000000000000 ]---

    The new behavior is consistent with the AMX architecture.  Per Intel's SDM,
    XSAVE saves XSTATE_BV as '0' for components that are disabled via XFD
    (and non-compacted XSAVE saves the initial configuration of the state
    component):

      If XSAVE, XSAVEC, XSAVEOPT, or XSAVES is saving the state component i,
      the instruction does not generate #NM when XCR0[i] = IA32_XFD[i] = 1;
      instead, it operates as if XINUSE[i] = 0 (and the state component was
      in its initial state): it saves bit i of XSTATE_BV field of the XSAVE
      header as 0; in addition, XSAVE saves the initial configuration of the
      state component (the other instructions do not save state component i).

    Alternatively, KVM could always do XRSTOR with XFD=0, e.g. by using
    a constant XFD based on the set of enabled features when XSAVEing for
    a struct fpu_guest.  However, having XSTATE_BV[i]=1 for XFD-disabled
    features can only happen in the above interrupt case, or in similar
    scenarios involving preemption on preemptible kernels, because
    fpu_swap_kvm_fpstate()'s call to save_fpregs_to_fpstate() saves the
    outgoing FPU state with the current XFD; and that is (on all but the
    first WRMSR to XFD) the guest XFD.

    Therefore, XFD can only go out of sync with XSTATE_BV in the above
    interrupt case, or in similar scenarios involving preemption on
    preemptible kernels, and it we can consider it (de facto) part of KVM
    ABI that KVM_GET_XSAVE returns XSTATE_BV[i]=0 for XFD-disabled features.

    Reported-by: Paolo Bonzini <pbonzini@redhat.com>
    Cc: stable@vger.kernel.org
    Fixes: 820a6ee944 ("kvm: x86: Add emulation for IA32_XFD", 2022-01-14)
    Signed-off-by: Sean Christopherson <seanjc@google.com>
    [Move clearing of XSTATE_BV from fpu_copy_uabi_to_guest_fpstate
     to kvm_vcpu_ioctl_x86_set_xsave. - Paolo]
    Reviewed-by: Binbin Wu <binbin.wu@linux.intel.com>
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:27 -05:00
Maxim Levitsky 94d2a9127f KVM: selftests: Add ex_str() to print human friendly name of exception vectors
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit df1f294013da715f32521b3d0a69773e660a1af5
Author: Sean Christopherson <seanjc@google.com>
Date:   Fri Sep 19 15:32:51 2025 -0700

    KVM: selftests: Add ex_str() to print human friendly name of exception vectors

    Steal exception_mnemonic() from KVM-Unit-Tests as ex_str() (to keep line
    lengths reasonable) and use it in assert messages that currently print the
    raw vector number.

    Co-developed-by: Chao Gao <chao.gao@intel.com>
    Signed-off-by: Chao Gao <chao.gao@intel.com>
    Link: https://lore.kernel.org/r/20250919223258.1604852-45-seanjc@google.com
    Signed-off-by: Sean Christopherson <seanjc@google.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:27 -05:00
Maxim Levitsky 3d87344ca8 KVM: x86: Define AMD's #HV, #VC, and #SX exception vectors
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit fddd07626baa419c259ad5f3537a57188b5bb415
Author: Sean Christopherson <seanjc@google.com>
Date:   Fri Sep 19 15:32:50 2025 -0700

    KVM: x86: Define AMD's #HV, #VC, and #SX exception vectors

    Add {HV,CP,SX}_VECTOR definitions for AMD's Hypervisor Injection Exception,
    VMM Communication Exception, and SVM Security Exception vectors, along with
    human friendly formatting for trace_kvm_inj_exception().

    Note, KVM is all but guaranteed to never observe or inject #SX, and #HV is
    also unlikely to go unused.  Add the architectural collateral mostly for
    completeness, and on the off chance that hardware goes off the rails.

    Link: https://lore.kernel.org/r/20250919223258.1604852-44-seanjc@google.com
    Signed-off-by: Sean Christopherson <seanjc@google.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:27 -05:00
Maxim Levitsky 0151713c91 KVM: x86: Define Control Protection Exception (#CP) vector
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit f2f5519aa4e3ec4e42b009338f773bebb0bfd8a3
Author: Sean Christopherson <seanjc@google.com>
Date:   Fri Sep 19 15:32:49 2025 -0700

    KVM: x86: Define Control Protection Exception (#CP) vector

    Add a CP_VECTOR definition for CET's Control Protection Exception (#CP),
    along with human friendly formatting for trace_kvm_inj_exception().

    Reviewed-by: Binbin Wu <binbin.wu@linux.intel.com>
    Link: https://lore.kernel.org/r/20250919223258.1604852-43-seanjc@google.com
    Signed-off-by: Sean Christopherson <seanjc@google.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:27 -05:00
Maxim Levitsky a1e85cbbdd KVM: x86: Add human friendly formatting for #XM, and #VE
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit d37cc4819a489bfe32008e50e3a76eb967d95d42
Author: Sean Christopherson <seanjc@google.com>
Date:   Fri Sep 19 15:32:48 2025 -0700

    KVM: x86: Add human friendly formatting for #XM, and #VE

    Add XM_VECTOR and VE_VECTOR pretty-printing for
    trace_kvm_inj_exception().

    Reviewed-by: Binbin Wu <binbin.wu@linux.intel.com>
    Link: https://lore.kernel.org/r/20250919223258.1604852-42-seanjc@google.com
    Signed-off-by: Sean Christopherson <seanjc@google.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:26 -05:00
Maxim Levitsky 24fdc23c87 KVM: selftests: Add support for #DE exception fixup
JIRA: https://issues.redhat.com/browse/RHEL-148618

commit 7b39b6c76942d42d3eecf0844d0f6a76fb64e805
Author: Sean Christopherson <seanjc@google.com>
Date:   Tue Sep 9 13:28:32 2025 -0700

    KVM: selftests: Add support for #DE exception fixup

    Add support for handling #DE (divide error) exceptions in KVM selftests
    so that the fastops test can verify KVM correctly handles #DE when
    emulating DIV or IDIV on behalf of the guest.  Morph #DE to 0xff (i.e.
    to -1) as a mostly-arbitrary vector to indicate #DE, so that '0' (the
    real #DE vector) can still be used to indicate "no exception".

    Link: https://lore.kernel.org/r/20250909202835.333554-2-seanjc@google.com
    Signed-off-by: Sean Christopherson <seanjc@google.com>

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
2026-03-02 13:35:26 -05:00
Jared Kangas b8d626daa4 redhat/configs: automotive: enable NVMEM_S32G_OCOTP
JIRA: https://issues.redhat.com/browse/RHEL-152643
Upstream-status: RHEL-only

The NXP S32G3 family uses the compatible "nxp,s32g2-ocotp" for its
On-Chip One-Time Programming (OCOTP) controller, which requires
NVMEM_S32G_OCOTP. Enable this in automotive as a module.

Signed-off-by: Jared Kangas <jkangas@redhat.com>
2026-03-02 09:22:09 -08:00
Jared Kangas 783876f1cf arm64: dts: s32g: Add device tree information for the OCOTP driver
JIRA: https://issues.redhat.com/browse/RHEL-152643

commit dc8662956496d2bfeee95eca3cf57d7b9a8f2ba4
Author: Dan Carpenter <dan.carpenter@linaro.org>
Date:   Fri Sep 12 18:03:22 2025 +0300

    arm64: dts: s32g: Add device tree information for the OCOTP driver

    Add the device tree information for the S32G On Chip One-Time
    Programmable Controller (OCOTP) chip.

    Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
    Signed-off-by: Shawn Guo <shawnguo@kernel.org>

Signed-off-by: Jared Kangas <jkangas@redhat.com>
2026-03-02 09:22:07 -08:00
Jared Kangas 6e25c7a893 nvmem: s32g-ocotp: Add driver for S32G OCOTP
JIRA: https://issues.redhat.com/browse/RHEL-152643

commit 5a356145e9683ec0b4cba6e455b6370d4fcbcd68
Author: Ciprian Costea <ciprianmarian.costea@nxp.com>
Date:   Fri Sep 12 14:14:12 2025 +0100

    nvmem: s32g-ocotp: Add driver for S32G OCOTP

    Provide access to the On Chip One-Time Programmable Controller (OCOTP)
    pages on the NXP S32G platform.

    Signed-off-by: Ciprian Costea <ciprianmarian.costea@nxp.com>
    Co-developed-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
    Signed-off-by: Ghennadi Procopciuc <ghennadi.procopciuc@nxp.com>
    Co-developed-by: Larisa Grigore <larisa.grigore@nxp.com>
    Signed-off-by: Larisa Grigore <larisa.grigore@nxp.com>
    Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
    Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
    Link: https://lore.kernel.org/r/20250912131415.303407-3-srini@kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Jared Kangas <jkangas@redhat.com>
2026-03-02 09:22:04 -08:00
Jared Kangas ee60e9ab8b dt-bindings: nvmem: Add the nxp,s32g-ocotp yaml file
JIRA: https://issues.redhat.com/browse/RHEL-152643

commit 9b58f88a1f48b75e98ebb03490340c48b54cb804
Author: Ciprian Costea <ciprianmarian.costea@nxp.com>
Date:   Fri Sep 12 14:14:11 2025 +0100

    dt-bindings: nvmem: Add the nxp,s32g-ocotp yaml file

    Add bindings to expose the On Chip One-Time Programmable Controller
    (OCOTP) for the NXP s32g chipset.  There are three versions of this
    chip but they're compatible so we can fall back to the nxp,s32g2-ocotp
    compatible.

    Signed-off-by: Ciprian Costea <ciprianmarian.costea@nxp.com>
    Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
    Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
    Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
    Link: https://lore.kernel.org/r/20250912131415.303407-2-srini@kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Jared Kangas <jkangas@redhat.com>
2026-03-02 09:21:57 -08:00
Paulo Alcantara d07b2942a1 smb: client: fix broken multichannel with krb5+signing
JIRA: https://issues.redhat.com/browse/RHEL-151838

commit d9d1e319b39ea685ede59319002d567c159d23c3
Author: Paulo Alcantara <pc@manguebit.org>
Date:   Wed Feb 25 21:34:55 2026 -0300

    smb: client: fix broken multichannel with krb5+signing
    
    When mounting a share with 'multichannel,max_channels=n,sec=krb5i',
    the client was duplicating signing key for all secondary channels,
    thus making the server fail all commands sent from secondary channels
    due to bad signatures.
    
    Every channel has its own signing key, so when establishing a new
    channel with krb5 auth, make sure to use the new session key as the
    derived key to generate channel's signing key in SMB2_auth_kerberos().
    
    Repro:
    
    $ mount.cifs //srv/share /mnt -o multichannel,max_channels=4,sec=krb5i
    $ sleep 5
    $ umount /mnt
    $ dmesg
      ...
      CIFS: VFS: sign fail cmd 0x5 message id 0x2
      CIFS: VFS: \\srv SMB signature verification returned error = -13
      CIFS: VFS: sign fail cmd 0x5 message id 0x2
      CIFS: VFS: \\srv SMB signature verification returned error = -13
      CIFS: VFS: sign fail cmd 0x4 message id 0x2
      CIFS: VFS: \\srv SMB signature verification returned error = -13
    
    Reported-by: Xiaoli Feng <xifeng@redhat.com>
    Reviewed-by: Enzo Matsumiya <ematsumiya@suse.de>
    Signed-off-by: Paulo Alcantara (Red Hat) <pc@manguebit.org>
    Cc: David Howells <dhowells@redhat.com>
    Cc: linux-cifs@vger.kernel.org
    Cc: stable@vger.kernel.org
    Signed-off-by: Steve French <stfrench@microsoft.com>

Signed-off-by: Paulo Alcantara <paalcant@redhat.com>
2026-03-02 13:57:05 -03:00
Paulo Alcantara 9918e46e06 smb: client: fix regression with signing
JIRA: https://issues.redhat.com/browse/RHEL-151838
Upstream-Status: RHEL-only

Due to a bad backport of upstream commit 62432a3f5145 ("cifs: Clean up
some places where an extra kvec[] was required for rfc1002") in RHEL
10.2, one call to cifs_shash_iter() on request's data iterator was
missed, therefore breaking signing of read and write requests.

This is a serious bug, especially when doing buffered IO as the
requests will fail over the wire due to bad signatures while having
read(2) & write(2) calls to succeed.

Signed-off-by: Paulo Alcantara <paalcant@redhat.com>
2026-03-02 13:57:05 -03:00
CKI KWF Bot b942802663 [redhat] kernel-6.12.0-212.el10
Signed-off-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
kernel-6.12.0-212.el10
2026-03-02 07:53:37 -05:00