Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
70 commits
Select commit Hold shift + click to select a range
8ef1526
crypto: jitter - replace LFSR with SHA3-256
jallisonciq Aug 28, 2024
94e951f
crypto: aead,cipher - zeroize key buffer after use
jallisonciq Aug 28, 2024
0f7ad2e
SUSE: patch: crypto-dh-implement-FIPS-PCT.patch
jallisonciq Aug 29, 2024
0d20aa9
SUSE: patch: crypto-ecdh-implement-FIPS-PCT.patch
jallisonciq Aug 29, 2024
5224c93
crypto: jitter - add oversampling of noise source
jallisonciq Sep 18, 2024
b57aeaa
crypto: ecdh - explicitly zeroize private_key
jallisonciq Sep 23, 2024
e4a1276
KEYS: use kfree_sensitive with key
jallisonciq Sep 23, 2024
0954f8e
In essiv_aead_setkey(), use the same logic as crypto_authenc_esn_setk…
jallisonciq Sep 23, 2024
8f01857
github actions: Incorporate feedback on workflows
gvrose8192 Oct 22, 2024
5702e91
configs: x86_64: Sync with dist-git
bmastbergen Apr 14, 2025
cce2d04
github actions: Remove demo job
bmastbergen Apr 21, 2025
4eb293c
github actions: Remove push checks
bmastbergen Apr 21, 2025
14c4222
github actions: Add upstream commit checker
bmastbergen Aug 11, 2025
627b6ab
github actions: Add kabi checks
bmastbergen Aug 1, 2025
05b39b1
github actions: Fix upstream commit check for forks
bmastbergen Aug 12, 2025
ef78e9f
github actions: Fix process-pull-request for forks
bmastbergen Sep 2, 2025
8b03435
github actions: remove old pr checker
PlaidCat Nov 13, 2025
49bbdcd
github actions: Use reusable validate kernel commits workflow
bmastbergen Oct 17, 2025
f3138a6
github actions: Add kernelCI for rlc-8
roxanan1996 Mar 12, 2026
35a87d8
github actions: Use trigger for kernelCI
roxanan1996 Mar 26, 2026
b8cf1d5
Revert "xfrm: esp: avoid in-place decrypt on shared skb frags"
PlaidCat May 13, 2026
4ba666b
xfrm: esp: avoid in-place decrypt on shared skb frags
PlaidCat May 7, 2026
101b205
net/mlx5e: Fix features validation check for tunneled UDP (non-VXLAN)…
PlaidCat Aug 7, 2024
68e432b
tipc: Fix use-after-free of kernel socket in cleanup_bearer().
dvdgomez Feb 18, 2025
02dbab3
nvme-tcp: fix potential memory corruption in nvme_tcp_recv_pdu()
bmastbergen May 13, 2025
4f021c4
netdevsim: Fix memory leak of nsim_dev->fa_cookie
bmastbergen Jun 18, 2025
312f4c4
gso: fix udp gso fraglist segmentation after pull from frag_list
PlaidCat Sep 19, 2025
4c09070
bpf: Fix a segment issue when downgrading gso_size
PlaidCat Sep 24, 2025
be568be
net: fix udp gso skb_segment after pull from frag_list
PlaidCat Sep 25, 2025
d008a34
x86/sev-es: Set x86_virt_bits to the correct value straight away, ins…
ciq-sahlberg Oct 11, 2023
870825a
x86/boot: Move x86_cache_alignment initialization to correct spot
ciq-sahlberg Oct 11, 2023
3338e50
x86/cpu: Allow reducing x86_phys_bits during early_identify_cpu()
PlaidCat Dec 26, 2024
62f5817
x86/cpu: Get rid of an unnecessary local variable in get_cpu_address_…
PlaidCat Dec 26, 2024
4031d52
x86/cpu: Provide default cache line size if not enumerated
PlaidCat Dec 26, 2024
7e598db
net: mana: Enable MANA driver on ARM64 with 4K page size
shreeya-patel98 Aug 19, 2025
160e41a
net: mana: Add support for page sizes other than 4KB on ARM64
shreeya-patel98 Aug 19, 2025
9f4ae1f
RDMA/mana_ib: Fix bug in creation of dma regions
shreeya-patel98 Aug 19, 2025
7e6624a
RDMA/mana_ib: use the correct page size for mapping user-mode doorbel…
shreeya-patel98 Aug 18, 2025
a3bec87
RDMA/mana_ib: use the correct page table index based on hardware page…
shreeya-patel98 Aug 19, 2025
c7c4c0e
tipc: fix NULL deref in cleanup_bearer()
PlaidCat Nov 13, 2025
75cbf6f
scsi: storvsc: Prefer returning channel with the same CPU as on the I…
shreeya-patel98 Dec 17, 2025
ff091dc
PCI: Batch BAR sizing operations
bmastbergen Feb 10, 2026
729094b
libeth: add Tx buffer completion helpers
roxanan1996 Feb 25, 2026
810fb3f
idpf: convert to libeth Tx buffer completion
alobakin Sep 4, 2024
35866f9
netdevice: add netdev_tx_reset_subqueue() shorthand
roxanan1996 Feb 25, 2026
93831fd
idpf: refactor Tx completion routines
jahay1 Sep 4, 2024
8d8e524
idpf: set completion tag for "empty" bufs associated with a packet
roxanan1996 Feb 25, 2026
64e8457
idpf: add support for Tx refillqs in flow scheduling mode
roxanan1996 Feb 23, 2026
1fd0b16
idpf: improve when to set RE bit logic
roxanan1996 Feb 23, 2026
53bf03d
idpf: simplify and fix splitq Tx packet rollback error path
jahay1 Jul 25, 2025
4672e69
idpf: replace flow scheduling buffer ring with buffer pool
jahay1 Jul 25, 2025
940f8b8
idpf: stop Tx if there are insufficient buffer resources
jahay1 Jul 25, 2025
d1d4f05
idpf: remove obsolete stashing code
jahay1 Jul 25, 2025
782fa3e
sched: fix exit_mm vs membarrier (v4)
roxanan1996 May 15, 2026
e38763e
arm64: Add part number for Arm Cortex-A78AE
PlaidCat Jun 11, 2026
81720ee
arm64: Add Neoverse-V2 part
PlaidCat Jun 11, 2026
6fd19b6
arm64: cputype: Add Cortex-X4 definitions
PlaidCat Jun 11, 2026
3ba06f8
arm64: cputype: Add Neoverse-V3 definitions
PlaidCat Jun 11, 2026
e58c03f
arm64: cputype: Add Cortex-X3 definitions
PlaidCat Jun 11, 2026
1fc9833
arm64: cputype: Add Cortex-X925 definitions
PlaidCat Jun 11, 2026
ee76f8e
arm64: cputype: Add Cortex-X1C definitions
PlaidCat Jun 11, 2026
950d02f
arm64: cputype: Add MIDR_CORTEX_A76AE
PlaidCat Jun 11, 2026
a5ab0a1
arm64: cputype: Add Neoverse-V3AE definitions
PlaidCat Jun 11, 2026
1d4fd5e
arm64: cputype: Add C1-Ultra definitions
PlaidCat Jun 11, 2026
790f6fa
arm64: cputype: Add C1-Premium definitions
PlaidCat Jun 11, 2026
fbdcb3c
arm64: cputype: Add NVIDIA Olympus definitions
PlaidCat Jun 11, 2026
74babe8
arm64: Subscribe Microsoft Azure Cobalt 100 to ARM Neoverse N2 errata
bmastbergen Jun 11, 2026
21f61e3
arm64: errata: Mitigate TLBI errata on various Arm CPUs
bmastbergen Jun 11, 2026
3c888cc
arm64: errata: Mitigate TLBI errata on NVIDIA Olympus CPU
PlaidCat Jun 11, 2026
bb1fc3e
arm64: errata: Mitigate TLBI errata on Microsoft Azure Cobalt 100 CPU
PlaidCat Jun 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .container_build_image
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rocky-8-kernel-builder
5 changes: 5 additions & 0 deletions .github/workflows/build-check_aarch64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,8 @@ jobs:
cp configs/kernel-aarch64.config .config
make olddefconfig
make -j8
- name: Check kabi
run: |
git clone --branch r8 --single-branch https://git.rockylinux.org/staging/rpms/kernel.git kernel-dist-git
git -C kernel-dist-git reset --hard imports/r8/kernel-4.18.0-553.16.1.el8_10
./kernel-dist-git/SOURCES/check-kabi -k ./kernel-dist-git/SOURCES/Module.kabi_aarch64 -s Module.symvers
5 changes: 5 additions & 0 deletions .github/workflows/build-check_x86_64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,8 @@ jobs:
cp configs/kernel-x86_64.config .config
make olddefconfig
make -j8
- name: Check kabi
run: |
git clone --branch r8 --single-branch https://git.rockylinux.org/staging/rpms/kernel.git kernel-dist-git
git -C kernel-dist-git reset --hard imports/r8/kernel-4.18.0-553.16.1.el8_10
./kernel-dist-git/SOURCES/check-kabi -k ./kernel-dist-git/SOURCES/Module.kabi_x86_64 -s Module.symvers
129 changes: 129 additions & 0 deletions .github/workflows/diffdiff.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
#!/usr/bin/env python3
# coding: utf-8
#

import argparse
import copy
import difflib
import io
import git
import os
import re
import subprocess
import sys
import tempfile

verbose = False


def get_upstream_commit(upstream, c):
for l in c.message.splitlines():
try:
sha = re.match('\s*commit\s+(?P<sha>\S+)', l).groups()[0].upper()
return upstream.commit(sha)
except:
True

def get_diff(d):
dif = ''
df = False
for l in d.splitlines():
if l[:10] == 'diff --git':
df = True
if not df:
continue
dif = dif + l + '\n'
return dif


def trim_unchanged_files(lines):
dl = []
ld = 0 # Last line with a 'diff --git' we saw
hd = False # Have we seen a changed line since ld?
i = 0
for i, l in enumerate(lines):
if l[:4] == '+++ ' or l[:4] == '--- ' :
continue
if l[0] == '+' or l[0] == '-':
hd = True
if l[:11] == ' diff --git':
if ld: # We are at a new diff now, last one started at 'ld'
if not hd:
dl.insert(0, (ld, i+1),)
ld = i
hd = False # Reset hasdiff to False as we start a new section
# and check the tail
if not hd:
dl.insert(0, (ld, i+1),)
# delete the unchanged file sections
for d in dl:
del lines[d[0]:d[1]]
return lines


if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('-v', action='store_true', help='Verbose')
parser.add_argument('--colour', action='store_true', help='Colorize the diff. Green for additions, red for deletions')
parser.add_argument('--commit', help='Commit in current tree to diffdiff. Default is the most recent commit.')
parser.add_argument('--upstream', help='A directory that contains the current upstream of linus kernel tree where we can find the commits we reference. Default is the current repo')
args = parser.parse_args()


if args.v:
verbose = True

srcgit = git.Repo.init('.')
upstream = git.Repo.init(args.upstream)
c = srcgit.head.commit if not args.commit else srcgit.commit(args.commit)
uc = get_upstream_commit(upstream, c)

dc = get_diff(srcgit.git.show(c))
duc = get_diff(upstream.git.show(uc))

with open('c.diff', 'w') as f:
f.write(dc)
with open('u.diff', 'w') as f:
f.write(duc)

res = subprocess.run(['diff', '-u', 'u.diff', 'c.diff'],
check=False, stdout=subprocess.PIPE)
lines = res.stdout.splitlines()
dd = []
for l in lines:
l = str(l)[2:-1]
if l[:6] == '-index':
continue
if l[:6] == '+index':
continue
if l[:3] == '-@@':
continue
if l[:3] == '+@@':
dd.append(' ' + l[1:])
continue
dd.append(l)

# trim diffs for files that did not change
lines = trim_unchanged_files(dd)

# colorize the diff
diffs = 0
if args.colour:
dd = []
for l in lines:
if l[0:4] != '+++ ' and l[0:4] != '--- ':
if l[0] == '+':
l = '\033[42m' + l + '\033[0m'
diffs = diffs + 1
if l[0] == '-':
l = '\033[41m' + l + '\033[0m'
diffs = diffs + 1
dd.append(l)
lines = dd


if diffs:
for l in lines:
print(l)

sys.exit(diffs)
11 changes: 11 additions & 0 deletions .github/workflows/kernel-build-and-test-multiarch-trigger.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: Trigger Automated kernel build and test (multi-arch)

on:
push:
branches:
- '*_rlc-8/**'

jobs:
kernelCI:
uses: ctrliq/kernel-src-tree/.github/workflows/kernel-build-and-test-multiarch-trigger.yml@main
secrets: inherit
140 changes: 140 additions & 0 deletions .github/workflows/process-git-request.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
require 'open3'

requestors = { "gvrose8192" => "" }

def file_prepend(file, str)
new_contents = ""
File.open(file, 'r') do |fd|
contents = fd.read
new_contents = str << contents
end
# Overwrite file but now with prepended string on it
File.open(file, 'w') do |fd|
fd.write(new_contents)
end
end

def process_git_request(fname, target_branch, source_branch, prj_dir)
retcode = 200 #presume success
# puts "Opening file " + fname
file = File.new(fname, "w")
working_dir = prj_dir
# puts "Working Dir : " + working_dir
Dir.chdir working_dir
# puts "pwd : " + Dir.pwd
git_cmd = "git log --oneline --no-abbrev-commit base_repo/" + target_branch + ".." + "origin/" + source_branch
# puts git_cmd
out, err, status = Open3.capture3(git_cmd)
if status.exitstatus != 0
puts "Command error output is " + err
file.write("Command error output is " + err)
file.close
retcode = 201
return retcode
end
output_lines = out.split(' ')
# we just want the commit sha IDs
output_lines.each { |x|
# puts "This is output_lines " + x
upstream_diff = false
if !x[/\H/]
if x.length < 40
next
end
git_cmd = "git show " + x
gitlog_out, gitlog_err, gitlog_status = Open3.capture3(git_cmd)
if gitlog_status.exitstatus != 0
file.write("git show command error output is " + gitlog_err)
retcode = 201
end
loglines = gitlog_out.lines.map(&:chomp)
lines_counted = 0
local_diffdiff_sha = ""
upstream_diffdiff_sha = ""
loglines.each { |logline|
lines_counted = lines_counted + 1
if lines_counted == 1
local_commit_sha = logline.match("[0-9a-f]\{40\}")
local_diffdiff_sha = local_commit_sha.to_s
# puts "Local : " + local_diffdiff_sha
file.write("Merge Request sha: " + local_diffdiff_sha)
file.write("\n")
end
if lines_counted == 2 #email address
if !logline.downcase.include? "ciq.com"
# Bad Author
s = "error:\nBad " + logline + "\n"
puts s
file.write(s)
retcode = 201
else
file.write("\t" + logline + "\n")
end
end
if lines_counted > 1
if logline.downcase.include? "jira"
file.write("\t" + logline + "\n")
end
if logline.downcase.include? "upstream-diff"
upstream_diff = true
end
if logline.downcase.include? "commit"
commit_sha = logline.match("[0-9a-f]\{40\}")
upstream_diffdiff_sha = commit_sha.to_s
# puts "Upstream : " + upstream_diffdiff_sha
if (!upstream_diffdiff_sha.empty?)
file.write("\tUpstream sha: " + upstream_diffdiff_sha)
file.write("\n")
end
end
end
if lines_counted > 8 #Everything we need should be in the first 8 lines
break
end
}
if !local_diffdiff_sha.empty? && !upstream_diffdiff_sha.empty?
diff_cmd = Dir.pwd + "/.github/workflows/diffdiff.py --colour --commit " + local_diffdiff_sha
puts "diffdiff: " + diff_cmd
diff_out, diff_err, diff_status = Open3.capture3(diff_cmd)
if diff_status.exitstatus != 0 && !upstream_diff
puts "diffdiff out: " + diff_out
puts "diffdiff err: " + diff_err
retcode = 201
file.write("error:\nCommit: " + local_diffdiff_sha + " differs with no upstream tag in commit message\n")
end
end
end
}
file.close
return retcode
end

first_arg, *argv_in = ARGV
if argv_in.length < 5
puts "Not enough arguments: fname, target_branch, source_branch, prj_dir, pull_request, requestor"
exit
end
fname = first_arg.to_s
fname = "tmp-" + fname
# puts "filename is " + fname
target_branch = argv_in[0].to_s
# puts "target branch is " + target_branch
source_branch = argv_in[1].to_s
# puts "source branch is " + source_branch
prj_dir = argv_in[2].to_s
# puts "project dir is " + prj_dir
pullreq = argv_in[3].to_s
# puts "pull request is " + pullreq
requestor = argv_in[4].to_s
retcode = process_git_request(fname, target_branch, source_branch, prj_dir)
if retcode != 200
File.open(fname, 'r') do |fd|
contents = fd.read
puts contents
end
exit(1)
else
puts "Done"
end
exit(0)

10 changes: 10 additions & 0 deletions .github/workflows/validate-kernel-commits.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: Validate Kernel Commits

on:
pull_request:
types: [opened, synchronize, reopened]

jobs:
check:
uses: ctrliq/kernel-src-tree/.github/workflows/validate-kernel-commits.yml@main
secrets: inherit
47 changes: 47 additions & 0 deletions Documentation/arm64/silicon-errata.rst
Original file line number Diff line number Diff line change
Expand Up @@ -88,16 +88,58 @@ stable kernels.
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A76 | #1463225 | ARM64_ERRATUM_1463225 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A76 | #4193800 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A76AE | #4193801 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A77 | #4193798 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A78 | #4193791 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A78AE | #4193793 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A78C | #4193794 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A710 | #4193788 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A55 | #1530923 | ARM64_ERRATUM_1530923 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-A77 | #1508412 | ARM64_ERRATUM_1508412 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-X1 | #4193791 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-X1C | #4193792 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-X2 | #4193788 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-X3 | #4193786 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-X4 | #4118414 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Cortex-X925 | #4193781 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-N1 | #1349291 | N/A |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-N1 | #1188873,1418040| ARM64_ERRATUM_1418040 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-N1 | #1349291 | N/A |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-N1 | #1542419 | ARM64_ERRATUM_1542419 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-N1 | #4193800 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-N2 | #4193789 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-V1 | #4193790 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-V3 | #4193784 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | Neoverse-V3AE | #4193784 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | C1-Premium | #4193780 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | C1-Ultra | #4193780 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
| ARM | MMU-500 | #841119,826419 | N/A |
+----------------+-----------------+-----------------+-----------------------------+
+----------------+-----------------+-----------------+-----------------------------+
Expand Down Expand Up @@ -132,6 +174,8 @@ stable kernels.
+----------------+-----------------+-----------------+-----------------------------+
| NVIDIA | Carmel Core | N/A | NVIDIA_CARMEL_CNP_ERRATUM |
+----------------+-----------------+-----------------+-----------------------------+
| NVIDIA | Olympus core | T410-OLY-1029 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
+----------------+-----------------+-----------------+-----------------------------+
| Freescale/NXP | LS2080A/LS1043A | A-008585 | FSL_ERRATUM_A008585 |
+----------------+-----------------+-----------------+-----------------------------+
Expand Down Expand Up @@ -164,3 +208,6 @@ stable kernels.
+----------------+-----------------+-----------------+-----------------------------+
| Fujitsu | A64FX | E#010001 | FUJITSU_ERRATUM_010001 |
+----------------+-----------------+-----------------+-----------------------------+
+----------------+-----------------+-----------------+-----------------------------+
| Microsoft | Azure Cobalt 100| #4193789 | ARM64_ERRATUM_4118414 |
+----------------+-----------------+-----------------+-----------------------------+
Loading
Loading