Skip to content

[rocky10_0] History Rebuild to kernel-6.12.0-55.18.1.el10_0 #382

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 160 commits into from
Jul 2, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
160 commits
Select commit Hold shift + click to select a range
f23e4b2
scsi: mpi3mr: Synchronize access to ioctl data buffer
PlaidCat Jul 1, 2025
39df9c6
scsi: mpi3mr: Fix corrupt config pages PHY state is switched in sysfs
PlaidCat Jul 1, 2025
7cba46a
scsi: mpi3mr: Start controller indexing from 0
PlaidCat Jul 1, 2025
52cb1b3
scsi: mpi3mr: Handling of fault code for insufficient power
PlaidCat Jul 1, 2025
39f6113
scsi: mpi3mr: Fix possible crash when setting up bsg fails
PlaidCat Jul 1, 2025
421dd14
scsi: mpi3mr: Avoid reply queue full condition
PlaidCat Jul 1, 2025
f6cce1f
scsi: mpi3mr: Synchronous access b/w reset and tm thread for reply queue
PlaidCat Jul 1, 2025
cb03df4
scsi: mpi3mr: Update driver version to 8.12.1.0.50
PlaidCat Jul 1, 2025
f540db7
powerpc: export MIN RMA size
PlaidCat Jul 1, 2025
08b12c6
powerpc/fadump: fix additional param memory reservation for HASH MMU
PlaidCat Jul 1, 2025
c4a4cef
powerpc: increase MIN RMA size for CAS negotiation
PlaidCat Jul 1, 2025
1449ced
Documentation/powerpc/fadump: add additional parameter feature details
PlaidCat Jul 1, 2025
8dbe3bd
arm64: mm: Fix zone_dma_limit calculation
PlaidCat Jul 1, 2025
b34cd6c
RDMA/mlx5: Fix a WARN during dereg_mr for DM type
PlaidCat Jul 1, 2025
dc35584
scsi: sg: Fix slab-use-after-free read in sg_release()
PlaidCat Jul 1, 2025
8646ae7
scsi: qla2xxx: Fix use after free on unload
PlaidCat Jul 1, 2025
65dddf4
Bluetooth: btusb: mediatek: move Bluetooth power off command position
PlaidCat Jul 1, 2025
9d9082b
Bluetooth: btusb: mediatek: add callback function in btusb_disconnect
PlaidCat Jul 1, 2025
d6e5c3e
Bluetooth: btusb: mediatek: add intf release flow when usb disconnect
PlaidCat Jul 1, 2025
02b3398
Bluetooth: btusb: mediatek: change the conditions for ISO interface
PlaidCat Jul 1, 2025
069f9a9
Bluetooth: btmtk: adjust the position to init iso data anchor
PlaidCat Jul 1, 2025
23652b3
Bluetooth: btmtk: avoid UAF in btmtk_process_coredump
PlaidCat Jul 1, 2025
7865703
Bluetooth: btmtk: Fix failed to send func ctrl for MediaTek devices.
PlaidCat Jul 1, 2025
eb3578e
Bluetooth: btusb: Add new VID/PID 13d3/3628 for MT7925
PlaidCat Jul 1, 2025
ef63e9f
pps: Fix a use-after-free
PlaidCat Jul 1, 2025
0575d6e
phy: tegra: xusb: reset VBUS & ID OVERRIDE
PlaidCat Jul 1, 2025
2684c2d
fs/proc: fix softlockup in __read_vmcore (part 2)
PlaidCat Jul 1, 2025
0c5986c
wifi: mt76: mt7925: fix the unfinished command of regd_notifier befor…
PlaidCat Jul 1, 2025
8b6dfa2
wifi: mt76: mt7925: fix CLC command timeout when suspend/resume
PlaidCat Jul 1, 2025
b9a3473
wifi: mt76: mt7925: add handler to hif suspend/resume event
PlaidCat Jul 1, 2025
b64ab56
nfs: Fix oops in nfs_netfs_init_request() when copying to cache
PlaidCat Jul 1, 2025
92b6fbe
arm64: cacheinfo: Avoid out-of-bounds write to cacheinfo array
PlaidCat Jul 1, 2025
fc2d236
crypto: api - Fix larval relookup type and mask
PlaidCat Jul 1, 2025
ff7f595
net: stmmac: dwmac-tegra: Read iommu stream id from device tree
PlaidCat Jul 1, 2025
dd06390
af_packet: fix vlan_get_protocol_dgram() vs MSG_PEEK
PlaidCat Jul 1, 2025
f3ec80d
net: mana: Increase the DEF_RX_BUFFERS_PER_QUEUE to 1024
PlaidCat Jul 1, 2025
a5ec916
net: mana: Add get_link and get_link_ksettings in ethtool
PlaidCat Jul 1, 2025
d9d4531
net: mana: Enable debugfs files for MANA device
PlaidCat Jul 1, 2025
2a32e17
net :mana :Request a V2 response version for MANA_QUERY_GF_STAT
PlaidCat Jul 1, 2025
83eed61
net: mana: Fix memory leak in mana_gd_setup_irqs
PlaidCat Jul 1, 2025
c9db5ae
net: mana: Fix irq_contexts memory leak in mana_gd_setup_irqs
PlaidCat Jul 1, 2025
35addda
net: mana: Cleanup "mana" debugfs dir after cleanup of all children
PlaidCat Jul 1, 2025
8afb204
net: mana: cleanup mana struct after debugfs_remove()
PlaidCat Jul 1, 2025
64bfce5
net: mana: use ethtool string helpers
PlaidCat Jul 1, 2025
6ce7bec
mm/hugetlb: fix hugepage allocation for interleaved memory nodes
PlaidCat Jul 1, 2025
a2bae40
smb: client: fix chmod(2) regression with ATTR_READONLY
PlaidCat Jul 1, 2025
7852c02
scsi: storvsc: Set correct data length for sending SCSI command witho…
PlaidCat Jul 1, 2025
e366f81
nvme-tcp: fix potential memory corruption in nvme_tcp_recv_pdu()
PlaidCat Jul 1, 2025
e21ccfa
ice: Implement ice_ptp_pin_desc
PlaidCat Jul 1, 2025
3aacbd1
ice: Add SDPs support for E825C
PlaidCat Jul 1, 2025
25d68a4
ice: Align E810T GPIO to other products
PlaidCat Jul 1, 2025
2321034
ice: Cache perout/extts requests and check flags
PlaidCat Jul 1, 2025
77273ea
ice: Disable shared pin on E810 on setfunc
PlaidCat Jul 1, 2025
e42db00
ice: Read SDP section from NVM for pin definitions
PlaidCat Jul 1, 2025
3a8fcca
ice: Enable 1PPS out from CGU for E825C products
PlaidCat Jul 1, 2025
873c210
ice: Introduce ice_get_phy_model() wrapper
PlaidCat Jul 1, 2025
1d1ea60
ice: Add ice_get_ctrl_ptp() wrapper to simplify the code
PlaidCat Jul 1, 2025
eba086c
ice: Initial support for E825C hardware in ice_adapter
PlaidCat Jul 1, 2025
c48f1f1
ice: Use ice_adapter for PTP shared data instead of auxdev
PlaidCat Jul 1, 2025
ea86f4a
ice: Drop auxbus use for PTP to finalize ice_adapter move
PlaidCat Jul 1, 2025
ca72095
ice: fix PHY Clock Recovery availability check
PlaidCat Jul 1, 2025
42ae0dd
ice: ensure periodic output start time is in the future
PlaidCat Jul 1, 2025
2c3240a
nfs/localio: add direct IO enablement with sync and async IO support
PlaidCat Jul 1, 2025
453681f
nfsd: add nfsd_file_{get,put} to 'nfs_to' nfsd_localio_operations
PlaidCat Jul 1, 2025
8b30af3
nfs_common: rename functions that invalidate LOCALIO nfs_clients
PlaidCat Jul 1, 2025
48f6158
nfs_common: move localio_lock to new lock member of nfs_uuid_t
PlaidCat Jul 1, 2025
8b5bd96
nfs: cache all open LOCALIO nfsd_file(s) in client
PlaidCat Jul 1, 2025
44cdec9
nfsd: update percpu_ref to manage references on nfsd_net
PlaidCat Jul 1, 2025
31a1acc
nfsd: rename nfsd_serv_ prefixed methods and variables with nfsd_net_
PlaidCat Jul 1, 2025
8442b07
nfsd: nfsd_file_acquire_local no longer returns GC'd nfsd_file
PlaidCat Jul 1, 2025
2146c99
nfs_common: rename nfslocalio nfs_uuid_lock to nfs_uuids_lock
PlaidCat Jul 1, 2025
eb57de2
nfs_common: track all open nfsd_files per LOCALIO nfs_client
PlaidCat Jul 1, 2025
9a5c4e1
nfs_common: add nfs_localio trace events
PlaidCat Jul 1, 2025
fd674ef
nfs/localio: remove redundant code and simplify LOCALIO enablement
PlaidCat Jul 1, 2025
73ce6fe
nfs: probe for LOCALIO when v4 client reconnects to server
PlaidCat Jul 1, 2025
aebf393
nfs: probe for LOCALIO when v3 client reconnects to server
PlaidCat Jul 1, 2025
3e5f28f
nfs: fix incorrect error handling in LOCALIO
PlaidCat Jul 1, 2025
bb817d5
pnfs/flexfiles: retry getting layout segment for reads
PlaidCat Jul 1, 2025
2a01edb
smb: client: fix regression with guest option
PlaidCat Jul 1, 2025
2aa50ee
Comment out configs/*.config in .gitignore for kernel-6.12.0-55.11.1.…
PlaidCat Jul 1, 2025
ce19035
Rebuild rocky10_0 with kernel-6.12.0-55.11.1.el10_0
PlaidCat Jul 1, 2025
91006f5
iscsi_ibft: Fix UBSAN shift-out-of-bounds warning in ibft_attr_show_n…
PlaidCat Jul 1, 2025
afb7e15
ice: put Rx buffers after being done with current frame
PlaidCat Jul 1, 2025
aa87e77
ice: gather page_count()'s of each frag right before XDP prog call
PlaidCat Jul 1, 2025
23f272b
ice: stop storing XDP verdict within ice_rx_buf
PlaidCat Jul 1, 2025
ebf93b5
dm-flakey: Fix memory corruption in optional corrupt_bio_byte feature
PlaidCat Jul 1, 2025
63ada64
scsi: core: Fix command pass through retry regression
PlaidCat Jul 1, 2025
d3c6fc1
Rebuild rocky10_0 with kernel-6.12.0-55.12.1.el10_0
PlaidCat Jul 1, 2025
1481cda
smb: client: don't retry IO on failed negprotos with soft mounts
PlaidCat Jul 1, 2025
2cf2450
ixgbe: Add support for E610 FW Admin Command Interface
PlaidCat Jul 1, 2025
63f91f1
ixgbe: Add support for E610 device capabilities detection
PlaidCat Jul 1, 2025
e4c8c6e
ixgbe: Add link management support for E610 device
PlaidCat Jul 1, 2025
f526bfe
ixgbe: Add support for NVM handling in E610 device
PlaidCat Jul 1, 2025
e472807
ixgbe: Add support for EEPROM dump in E610 device
PlaidCat Jul 1, 2025
07d8bea
ixgbe: Add ixgbe_x540 multiple header inclusion protection
PlaidCat Jul 1, 2025
30ae1ab
ixgbe: Clean up the E610 link management related code
PlaidCat Jul 1, 2025
e7aa7e8
ixgbe: Enable link management in E610 device
PlaidCat Jul 1, 2025
5b69203
ixgbe: fix media cage present detection for E610 device
PlaidCat Jul 1, 2025
37ccc99
PCI: Add PCI_VDEVICE_SUB helper macro
PlaidCat Jul 1, 2025
bcd43e0
ixgbevf: Add support for Intel(R) E610 device
PlaidCat Jul 1, 2025
cc42e78
ixgbe: fix media type detection for E610 device
PlaidCat Jul 1, 2025
d1b9919
resolve_btfids: Fix compiler warnings
PlaidCat Jul 1, 2025
227b173
fortify: Hide run-time copy size from value range tracking
PlaidCat Jul 1, 2025
b9e32b1
media: uvcvideo: Skip parsing frames of type UVC_VS_UNDEFINED in uvc_…
PlaidCat Jul 1, 2025
5057a08
idpf: call set_real_num_queues in idpf_open
PlaidCat Jul 1, 2025
ad86956
bpf, vsock: Invoke proto::close on close()
PlaidCat Jul 1, 2025
a9cc46f
vsock: Keep the binding until socket destruction
PlaidCat Jul 1, 2025
ff47676
vsock: Orphan socket after transport release
PlaidCat Jul 1, 2025
abf881e
Rebuild rocky10_0 with kernel-6.12.0-55.13.1.el10_0
PlaidCat Jul 1, 2025
9d5b3f3
ext4: fix OOB read when checking dotdot dir
PlaidCat Jul 1, 2025
c01d4e3
cifs: Fix integer overflow while processing acregmax mount option
PlaidCat Jul 1, 2025
fd9cb13
drm/mgag200: Added support for the new device G200eH5
PlaidCat Jul 1, 2025
776487c
drm/i915/display: Check whether platform supports joiner
PlaidCat Jul 1, 2025
69232e1
drm/i915/display: Simplify intel_joiner_num_pipes and its usage
PlaidCat Jul 1, 2025
603555c
drm/i915/display: Use joined pipes in intel_dp_joiner_needs_dsc
PlaidCat Jul 1, 2025
5bb463b
drm/i915/display: Use joined pipes in intel_mode_valid_max_plane_size
PlaidCat Jul 1, 2025
adc860f
drm/i915/display: Use joined pipes in dsc helpers for slices, bpp
PlaidCat Jul 1, 2025
4288107
drm/i915/dp_mst: Handle error during DSC BW overhead/slice calculation
PlaidCat Jul 1, 2025
6e8a41b
drm/i915/dp_mst: Don't require DSC hblank quirk for a non-DSC compati…
PlaidCat Jul 1, 2025
fd8f860
sched/fair: Fix potential memory corruption in child_cfs_rq_on_list
PlaidCat Jul 1, 2025
defbb73
Rebuild rocky10_0 with kernel-6.12.0-55.14.1.el10_0
PlaidCat Jul 1, 2025
36a3c1e
wifi: ath12k: Fix invalid data access in ath12k_dp_rx_h_undecap_nwifi
PlaidCat Jul 1, 2025
3928260
xsk: fix an integer overflow in xp_create_and_assign_umem()
PlaidCat Jul 1, 2025
1d23022
net: gso: fix ownership in __udp_gso_segment
PlaidCat Jul 1, 2025
1c01856
vsock/virtio: discard packets if the transport changes
PlaidCat Jul 1, 2025
2b4766b
net: fix geneve_opt length integer overflow
PlaidCat Jul 1, 2025
31b726f
Rebuild rocky10_0 with kernel-6.12.0-55.16.1.el10_0
PlaidCat Jul 1, 2025
bdd122e
wifi: cfg80211: cancel wiphy_work before freeing wiphy
PlaidCat Jul 1, 2025
c6a7ed2
wifi: cfg80211: init wiphy_work before allocating rfkill fails
PlaidCat Jul 1, 2025
79069fc
ovl: fix UAF in ovl_dentry_update_reval by moving dput() in ovl_link_up
PlaidCat Jul 1, 2025
76b830e
cifs: Fix integer overflow while processing closetimeo mount option
PlaidCat Jul 1, 2025
902a394
Bluetooth: L2CAP: Fix slab-use-after-free Read in l2cap_send_cmd
PlaidCat Jul 1, 2025
575fb20
Bluetooth: L2CAP: Fix corrupted list in hci_chan_del
PlaidCat Jul 1, 2025
27dda39
vfio/pci: Align huge faults to order
PlaidCat Jul 1, 2025
18e9028
net: add dev_net_rcu() helper
PlaidCat Jul 1, 2025
5856c4f
ipv6: use RCU protection in ip6_default_advmss()
PlaidCat Jul 1, 2025
303dc9b
ndisc: use RCU protection in ndisc_alloc_skb()
PlaidCat Jul 1, 2025
2737a10
keys: Fix UAF in key_put()
PlaidCat Jul 1, 2025
7f4c7b8
sched/fair: Fix CPU bandwidth limit bypass during CPU hotplug
PlaidCat Jul 1, 2025
f20edb6
smb: client: fix UAF in decryption with multichannel
PlaidCat Jul 1, 2025
9baccc3
cifs: Fix integer overflow while processing acdirmax mount option
PlaidCat Jul 1, 2025
17611bf
ice: use read_poll_timeout_atomic in ice_read_phy_tstamp_ll_e810
PlaidCat Jul 1, 2025
1d142ea
ice: rename TS_LL_READ* macros to REG_LL_PROXY_H_*
PlaidCat Jul 1, 2025
156f7a6
ice: add lock to protect low latency interface
PlaidCat Jul 1, 2025
7241346
ice: check low latency PHY timer update firmware capability
PlaidCat Jul 1, 2025
073f497
ice: implement low latency PHY timer updates
PlaidCat Jul 1, 2025
035a968
block: fix 'kmem_cache of name 'bio-108' already exists'
PlaidCat Jul 1, 2025
2d427fd
vmxnet3: unregister xdp rxq info in the reset path
PlaidCat Jul 1, 2025
71d4955
Rebuild rocky10_0 with kernel-6.12.0-55.17.1.el10_0
PlaidCat Jul 1, 2025
d7e2d76
r8169: enable RTL8168H/RTL8168EP/RTL8168FP ASPM support
PlaidCat Jul 1, 2025
a7e480a
r8169: disable RTL8126 ZRX-DC timeout
PlaidCat Jul 1, 2025
60871a9
ext4: fix off-by-one error in do_split
PlaidCat Jul 1, 2025
60ca212
nvme-fabrics: handle zero MAXCMD without closing the connection
PlaidCat Jul 1, 2025
980ae36
ext4: ignore xattrs past end
PlaidCat Jul 1, 2025
ab79caa
proc: fix UAF in proc_get_inode()
PlaidCat Jul 1, 2025
feb4a78
block: make sure ->nr_integrity_segments is cloned in blk_rq_prep_clone
PlaidCat Jul 1, 2025
65b36c2
mm/vmalloc: combine all TLB flush operations of KASAN shadow virtual …
PlaidCat Jul 1, 2025
bf99b36
sched/rt: Fix race in push_rt_task
PlaidCat Jul 1, 2025
4de01b5
Rebuild rocky10_0 with kernel-6.12.0-55.18.1.el10_0
PlaidCat Jul 1, 2025
54d36d9
github actions: Add build checks for Rocky10 on supported Architectures
PlaidCat Jul 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
38 changes: 38 additions & 0 deletions .github/workflows/build-check_aarch64-rt.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: aarch64-RT CI
on:
pull_request:
branches:
- '**'
- '!mainline'

jobs:
kernel-build-job:
runs-on:
labels: kernel-build-arm64
container:
image: rockylinux/rockylinux:10
env:
ROCKY_ENV: rocky10
ports:
- 80
options: --cpus 8
steps:
- name: Install tools and Libraries
run: |
dnf update -y
dnf install 'dnf-command(config-manager)' -y
dnf config-manager --set-enabled devel
dnf install --enablerepo=crb bc dwarves kernel-devel openssl-devel elfutils-libelf-devel -y
dnf groupinstall 'Development Tools' -y
dnf install openssl -y
- name: Checkout code
uses: actions/checkout@v4
with:
ref: "${{ github.event.pull_request.head.sha }}"
fetch-depth: 0
- name: Build the Kernel
run: |
git config --global --add safe.directory /__w/kernel-src-tree/kernel-src-tree
cp configs/kernel-aarch64-rt-rhel.config .config
make olddefconfig
make -j8
38 changes: 38 additions & 0 deletions .github/workflows/build-check_aarch64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: aarch64 CI
on:
pull_request:
branches:
- '**'
- '!mainline'

jobs:
kernel-build-job:
runs-on:
labels: kernel-build-arm64
container:
image: rockylinux/rockylinux:10
env:
ROCKY_ENV: rocky10
ports:
- 80
options: --cpus 8
steps:
- name: Install tools and Libraries
run: |
dnf update -y
dnf install 'dnf-command(config-manager)' -y
dnf config-manager --set-enabled devel
dnf install --enablerepo=crb bc dwarves kernel-devel openssl-devel elfutils-libelf-devel -y
dnf groupinstall 'Development Tools' -y
dnf install openssl -y
- name: Checkout code
uses: actions/checkout@v4
with:
ref: "${{ github.event.pull_request.head.sha }}"
fetch-depth: 0
- name: Build the Kernel
run: |
git config --global --add safe.directory /__w/kernel-src-tree/kernel-src-tree
cp configs/kernel-aarch64-rhel.config .config
make olddefconfig
make -j8
38 changes: 38 additions & 0 deletions .github/workflows/build-check_x86_64-rt.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: x86_64-RT CI
on:
pull_request:
branches:
- '**'
- '!mainline'

jobs:
kernel-build-job:
runs-on:
labels: kernel-build
container:
image: rockylinux/rockylinux:10
env:
ROCKY_ENV: rocky10
ports:
- 80
options: --cpus 8
steps:
- name: Install tools and Libraries
run: |
dnf update -y
dnf install 'dnf-command(config-manager)' -y
dnf config-manager --set-enabled devel
dnf install --enablerepo=crb bc dwarves kernel-devel openssl-devel elfutils-libelf-devel -y
dnf groupinstall 'Development Tools' -y
dnf install openssl -y
- name: Checkout code
uses: actions/checkout@v4
with:
ref: "${{ github.event.pull_request.head.sha }}"
fetch-depth: 0
- name: Build the Kernel
run: |
git config --global --add safe.directory /__w/kernel-src-tree/kernel-src-tree
cp configs/kernel-x86_64-rt-rhel.config .config
make olddefconfig
make -j8
38 changes: 38 additions & 0 deletions .github/workflows/build-check_x86_64.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: x86_64 CI
on:
pull_request:
branches:
- '**'
- '!mainline'

jobs:
kernel-build-job:
runs-on:
labels: kernel-build
container:
image: rockylinux/rockylinux:10
env:
ROCKY_ENV: rocky19
ports:
- 80
options: --cpus 8
steps:
- name: Install tools and Libraries
run: |
dnf update -y
dnf install 'dnf-command(config-manager)' -y
dnf config-manager --set-enabled devel
dnf install --enablerepo=crb bc dwarves kernel-devel openssl-devel elfutils-libelf-devel -y
dnf groupinstall 'Development Tools' -y
dnf install openssl -y
- name: Checkout code
uses: actions/checkout@v4
with:
ref: "${{ github.event.pull_request.head.sha }}"
fetch-depth: 0
- name: Build the Kernel
run: |
git config --global --add safe.directory /__w/kernel-src-tree/kernel-src-tree
cp configs/kernel-x86_64-rhel.config .config
make olddefconfig
make -j8
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ x509.genkey
#
# Red Hat
#
configs/*.config
# configs/*.config
redhat/rhdocs/*
redhat/rhdocs
localversion
Expand Down
File renamed without changes.
3 changes: 2 additions & 1 deletion Documentation/ABI/testing/sysfs-kernel-fadump
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,5 @@ Date: May 2024
Contact: linuxppc-dev@lists.ozlabs.org
Description: read/write
This is a special sysfs file available to setup additional
parameters to be passed to capture kernel.
parameters to be passed to capture kernel. For HASH MMU it
is exported only if RMA size higher than 768MB.
22 changes: 22 additions & 0 deletions Documentation/arch/powerpc/firmware-assisted-dump.rst
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,28 @@ to ensure that crash data is preserved to process later.
e.g.
# echo 1 > /sys/firmware/opal/mpipl/release_core

-- Support for Additional Kernel Arguments in Fadump
Fadump has a feature that allows passing additional kernel arguments
to the fadump kernel. This feature was primarily designed to disable
kernel functionalities that are not required for the fadump kernel
and to reduce its memory footprint while collecting the dump.

Command to Add Additional Kernel Parameters to Fadump:
e.g.
# echo "nr_cpus=16" > /sys/kernel/fadump/bootargs_append

The above command is sufficient to add additional arguments to fadump.
An explicit service restart is not required.

Command to Retrieve the Additional Fadump Arguments:
e.g.
# cat /sys/kernel/fadump/bootargs_append

Note: Additional kernel arguments for fadump with HASH MMU is only
supported if the RMA size is greater than 768 MB. If the RMA
size is less than 768 MB, the kernel does not export the
/sys/kernel/fadump/bootargs_append sysfs node.

Implementation details:
-----------------------

Expand Down
104 changes: 52 additions & 52 deletions Documentation/filesystems/nfs/localio.rst
Original file line number Diff line number Diff line change
Expand Up @@ -218,64 +218,30 @@ NFS Client and Server Interlock
===============================

LOCALIO provides the nfs_uuid_t object and associated interfaces to
allow proper network namespace (net-ns) and NFSD object refcounting:

We don't want to keep a long-term counted reference on each NFSD's
net-ns in the client because that prevents a server container from
completely shutting down.

So we avoid taking a reference at all and rely on the per-cpu
reference to the server (detailed below) being sufficient to keep
the net-ns active. This involves allowing the NFSD's net-ns exit
code to iterate all active clients and clear their ->net pointers
(which are needed to find the per-cpu-refcount for the nfsd_serv).

Details:

- Embed nfs_uuid_t in nfs_client. nfs_uuid_t provides a list_head
that can be used to find the client. It does add the 16-byte
uuid_t to nfs_client so it is bigger than needed (given that
uuid_t is only used during the initial NFS client and server
LOCALIO handshake to determine if they are local to each other).
If that is really a problem we can find a fix.

- When the nfs server confirms that the uuid_t is local, it moves
the nfs_uuid_t onto a per-net-ns list in NFSD's nfsd_net.

- When each server's net-ns is shutting down - in a "pre_exit"
handler, all these nfs_uuid_t have their ->net cleared. There is
an rcu_synchronize() call between pre_exit() handlers and exit()
handlers so any caller that sees nfs_uuid_t ->net as not NULL can
safely manage the per-cpu-refcount for nfsd_serv.

- The client's nfs_uuid_t is passed to nfsd_open_local_fh() so it
can safely dereference ->net in a private rcu_read_lock() section
to allow safe access to the associated nfsd_net and nfsd_serv.

So LOCALIO required the introduction and use of NFSD's percpu_ref to
interlock nfsd_destroy_serv() and nfsd_open_local_fh(), to ensure each
nn->nfsd_serv is not destroyed while in use by nfsd_open_local_fh(), and
allow proper network namespace (net-ns) and NFSD object refcounting.

LOCALIO required the introduction and use of NFSD's percpu nfsd_net_ref
to interlock nfsd_shutdown_net() and nfsd_open_local_fh(), to ensure
each net-ns is not destroyed while in use by nfsd_open_local_fh(), and
warrants a more detailed explanation:

nfsd_open_local_fh() uses nfsd_serv_try_get() before opening its
nfsd_open_local_fh() uses nfsd_net_try_get() before opening its
nfsd_file handle and then the caller (NFS client) must drop the
reference for the nfsd_file and associated nn->nfsd_serv using
nfs_file_put_local() once it has completed its IO.
reference for the nfsd_file and associated net-ns using
nfsd_file_put_local() once it has completed its IO.

This interlock working relies heavily on nfsd_open_local_fh() being
afforded the ability to safely deal with the possibility that the
NFSD's net-ns (and nfsd_net by association) may have been destroyed
by nfsd_destroy_serv() via nfsd_shutdown_net() -- which is only
possible given the nfs_uuid_t ->net pointer managemenet detailed
above.

All told, this elaborate interlock of the NFS client and server has been
verified to fix an easy to hit crash that would occur if an NFSD
instance running in a container, with a LOCALIO client mounted, is
shutdown. Upon restart of the container and associated NFSD the client
would go on to crash due to NULL pointer dereference that occurred due
to the LOCALIO client's attempting to nfsd_open_local_fh(), using
nn->nfsd_serv, without having a proper reference on nn->nfsd_serv.
by nfsd_destroy_serv() via nfsd_shutdown_net().

This interlock of the NFS client and server has been verified to fix an
easy to hit crash that would occur if an NFSD instance running in a
container, with a LOCALIO client mounted, is shutdown. Upon restart of
the container and associated NFSD, the client would go on to crash due
to NULL pointer dereference that occurred due to the LOCALIO client's
attempting to nfsd_open_local_fh() without having a proper reference on
NFSD's net-ns.

NFS Client issues IO instead of Server
======================================
Expand Down Expand Up @@ -306,10 +272,26 @@ is issuing IO to the underlying local filesystem that it is sharing with
the NFS server. See: fs/nfs/localio.c:nfs_local_doio() and
fs/nfs/localio.c:nfs_local_commit().

With normal NFS that makes use of RPC to issue IO to the server, if an
application uses O_DIRECT the NFS client will bypass the pagecache but
the NFS server will not. The NFS server's use of buffered IO affords
applications to be less precise with their alignment when issuing IO to
the NFS client. But if all applications properly align their IO, LOCALIO
can be configured to use end-to-end O_DIRECT semantics from the NFS
client to the underlying local filesystem, that it is sharing with
the NFS server, by setting the 'localio_O_DIRECT_semantics' nfs module
parameter to Y, e.g.:

echo Y > /sys/module/nfs/parameters/localio_O_DIRECT_semantics

Once enabled, it will cause LOCALIO to use end-to-end O_DIRECT semantics
(but again, this may cause IO to fail if applications do not properly
align their IO).

Security
========

Localio is only supported when UNIX-style authentication (AUTH_UNIX, aka
LOCALIO is only supported when UNIX-style authentication (AUTH_UNIX, aka
AUTH_SYS) is used.

Care is taken to ensure the same NFS security mechanisms are used
Expand All @@ -324,6 +306,24 @@ client is afforded this same level of access (albeit in terms of the NFS
protocol via SUNRPC). No other namespaces (user, mount, etc) have been
altered or purposely extended from the server to the client.

Module Parameters
=================

/sys/module/nfs/parameters/localio_enabled (bool)
controls if LOCALIO is enabled, defaults to Y. If client and server are
local but 'localio_enabled' is set to N then LOCALIO will not be used.

/sys/module/nfs/parameters/localio_O_DIRECT_semantics (bool)
controls if O_DIRECT extends down to the underlying filesystem, defaults
to N. Application IO must be logical blocksize aligned, otherwise
O_DIRECT will fail.

/sys/module/nfsv3/parameters/nfs3_localio_probe_throttle (uint)
controls if NFSv3 read and write IOs will trigger (re)enabling of
LOCALIO every N (nfs3_localio_probe_throttle) IOs, defaults to 0
(disabled). Must be power-of-2, admin keeps all the pieces if they
misconfigure (too low a value or non-power-of-2).

Testing
=======

Expand Down
2 changes: 1 addition & 1 deletion Documentation/networking/device_drivers/atm/cxacru-cf.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python
#! /usr/bin/python3 -s
# Copyright 2009 Simon Arlott
#
# This program is free software; you can redistribute it and/or modify it
Expand Down
2 changes: 1 addition & 1 deletion Documentation/sphinx/kernel_include.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python3
#! /usr/bin/python3 -s
# -*- coding: utf-8; mode: python -*-
# pylint: disable=R0903, C0330, R0914, R0912, E0401

Expand Down
2 changes: 1 addition & 1 deletion Documentation/sphinx/maintainers_include.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python
#! /usr/bin/python3 -s
# SPDX-License-Identifier: GPL-2.0
# -*- coding: utf-8; mode: python -*-
# pylint: disable=R0903, C0330, R0914, R0912, E0401
Expand Down
2 changes: 1 addition & 1 deletion Documentation/sphinx/rstFlatTable.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python3
#! /usr/bin/python3 -s
# -*- coding: utf-8; mode: python -*-
# pylint: disable=C0330, R0903, R0912

Expand Down
2 changes: 1 addition & 1 deletion Documentation/trace/postprocess/decode_msr.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/usr/bin/env python
#! /usr/bin/python3 -s
# add symbolic names to read_msr / write_msr in trace
# decode_msr msr-index.h < trace
import sys
Expand Down
4 changes: 2 additions & 2 deletions Makefile.rhelver
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ RHEL_MINOR = 0
#
# Use this spot to avoid future merge conflicts.
# Do not trim this comment.
RHEL_RELEASE = 55
RHEL_RELEASE = 55.18.1

#
# RHEL_REBASE_NUM
Expand Down Expand Up @@ -47,7 +47,7 @@ RHEL_REBASE_NUM = 1
# (when you give RHDISTGIT_BRANCH on the command line, in which case the Z
# number will be incremented instead of the Y).
#
ZSTREAM ?= no
ZSTREAM ?= yes

#
# Early y+1 numbering
Expand Down
Loading