Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
344fa79
FROMLIST: rust: export BINDGEN_TARGET from a separate Makefile
Dec 30, 2025
1f3e920
FROMLIST: rust: generate a fatal error if BINDGEN_TARGET is undefined
Dec 30, 2025
1ad0d7a
FROMLIST: rust: add a Kconfig function to test for support of bindgen…
Dec 30, 2025
138cd04
FROMLIST: PCI: cadence: Support platform-specific hooks for RC init/d…
ziyao233 Feb 27, 2026
f258f10
irqchip/gic-phytium-2500: Add adapt for syscore change in v6.19
opsiff Mar 20, 2026
ef0add6
CI: add check depend all workflow
opsiff Feb 6, 2026
2f2975e
CI: check-depend-all: disable process show for ci
opsiff Feb 6, 2026
2928088
deepin: loongarch: disable CONFIG_PERCPU_STATS
opsiff Mar 20, 2026
3194f79
deepin: config: disable DEFERRED_STRUCT_PAGE_INIT
opsiff Mar 20, 2026
78e3d70
media: intel/ipu6: add Intel IPU6 PCI device psys driver 2025-06-26
opsiff Mar 20, 2026
2e5adba
deepin: loongarch: disable kaslr when hibernate is supported
opsiff Mar 27, 2026
ca5e5fc
selftests/x86: Fix sysret_rip assertion failure on FRED systems
laifryiee Mar 24, 2026
5b0eca7
Input: Add Kconfig depend for PixArt PS/2 touchpad
opsiff Apr 7, 2026
da67b25
net: ethernet: add guangruntong nic driver support for 6.18.y
Apr 10, 2026
a19d2ed
config: enable grtnic
opsiff Apr 13, 2026
faef3c2
hwmon: (yogafan) Add support for Lenovo Yoga/Legion fan monitoring
sergiomelas Mar 27, 2026
19c3844
deepin: x86: config: enable yogafan
opsiff Apr 21, 2026
0e3c6f8
deepin: x86: config: enable zram compress algo support
opsiff Apr 21, 2026
6c3f59a
deepin: config: enable dmabuf heap support
opsiff Apr 22, 2026
37c7694
LoongArch: Handle fp, lsx, lasx and lbt assembly symbols
seehearfeel May 7, 2025
31eabe9
LoongArch: Make some signal and ptrace functions non-static
seehearfeel May 7, 2025
ce4918c
LoongArch: Export some signal functions
seehearfeel May 7, 2025
f5d2045
lib/fonts: cjktty: Remove Unicode bidirectional control characters fr…
Avenger-285714 Dec 16, 2025
ba16a6b
config: disable INET{6}_ESPINTCP
opsiff May 14, 2026
ddf1d5a
deepin: defconfig: enable Rust support in deepin configurations
Avenger-285714 May 20, 2026
2e1620f
rust: transmute: add `cast_slice[_mut]` functions
BennoLossin Aug 14, 2025
0dc88a3
rust: create basic untrusted data API
BennoLossin Aug 14, 2025
f1ef24b
rust: validate: add `Validate` trait
BennoLossin Aug 14, 2025
56103b4
FROMEXT: fix cjktty-6.16.patch on 32x32
opsiff May 25, 2026
b99b7bb
scsi: leapraid: update driver to v2.0.1.2
May 25, 2026
7723ff8
deepin: arm64: decrease NR_CPUS to 2048
opsiff May 20, 2026
869d3ed
CI: Bump actions/checkout to v6
opsiff Jun 5, 2026
e0900ba
deepin: defconfig: drop RUST for s390
Avenger-285714 Jun 9, 2026
84677b4
deepin: enable new ntfs driver
opsiff Jun 22, 2026
16c0792
scsi: leapraid: update driver to v2.00.01.05
Jul 2, 2026
54095b9
KVM: x86: Unconditionally recompute CR8 intercept on PPR update
00xc Jul 9, 2026
a4b5460
cgroup: disable kernel memory accounting for all memory cgroups by de…
Dec 22, 2023
de21406
config: LoongArch: deepin: set PWM_LOONGSON builtin
opsiff Jul 31, 2026
54fc65d
ufs: core: add PA_TACTIVATE quirk for Kioxia THGJFGT1E45BAILB
chenchongbiao Aug 3, 2026
65999c6
wifi: cfg80211: add Debian's regdb certificate for wireless-regdb
opsiff Aug 5, 2026
5f82beb
deepin: config: bluetooth: remove all PCMCIA drivers
opsiff Aug 5, 2026
c320c9d
deepin: config: arm64: enable DMA_RESTRICTED_POOL
opsiff Aug 5, 2026
85cd552
readdir: add unlikely hint on len check
ColinIanKing May 27, 2025
40ac3e6
efi/loongarch: Disable EFI KASLR when hibernation is supported
opsiff Aug 5, 2026
097245e
drm/buddy: Restore drm_buddy_* API names as compatibility aliases
opsiff Aug 12, 2026
9530435
drm/fb-helper: Restore drm_fb_helper_*_fbi() names for out-of-tree mo…
opsiff Aug 12, 2026
4739db2
bus: mhi: restore sc8280xp-crd SDX55 id entry dropped by an orphan re…
opsiff Sep 1, 2026
7acafe0
LoongArch: rethook: Do not save/restore percpu base register in tramp…
opsiff Aug 24, 2026
06f8d72
deepin: config: x86: drop defconfig entries removed upstream in 7.2
opsiff Sep 4, 2026
55def54
deepin: config: x86: enable AMD ACP7X audio coprocessor support
opsiff Sep 4, 2026
1b53418
CI: disable kabi upload for loongarch
opsiff Sep 4, 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
153 changes: 153 additions & 0 deletions .github/tools/check_kernel_commits.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
#!/bin/bash

set -euo pipefail

REMOTE_NAME="${REMOTE_NAME:-torvalds}"
REMOTE_URL="${REMOTE_URL:-https://github.com/torvalds/linux.git}"
TARGET_BRANCH="${2:-master}"

log_info() { echo -e "\033[32m[INFO]\033[0m $*" >&2; }
log_error() { echo -e "\033[31m[ERROR]\033[0m $*" >&2; }

main() {
[ $# -lt 1 ] && { echo "Usage: $0 <range> [branch]" >&2; exit 1; }

local range="$1"

if ! git remote get-url torvalds >/dev/null 2>&1; then
git remote add torvalds "${REMOTE_URL}"
else
git remote set-url torvalds "${REMOTE_URL}"
fi

git fetch torvalds

if ! git rev-parse --verify "$TARGET_BRANCH^{commit}" >/dev/null 2>&1; then
log_error "目标分支不存在: $TARGET_BRANCH"
exit 1
fi

local tmp_target=$(mktemp)

log_info "正在导出 $TARGET_BRANCH 标题..."
git log --format="%s" "$TARGET_BRANCH" 2>/dev/null > "$tmp_target"
local target_count=$(wc -l < "$tmp_target")
log_info "目标分支共 $target_count 个标题"

local total=$(git rev-list --count "$range" 2>/dev/null || echo "0")
log_info "检查范围 $range (共 $total 个提交)..."

log_info "开始筛选..."
echo "========================================"

# 使用标准AWK(兼容mawk/gawk),避免match()数组捕获
git log --format="%H%n%s%n%b%n---COMMIT_END---" --reverse "$range" 2>/dev/null | \
awk -v target_file="$tmp_target" -v total="$total" '
BEGIN {
# 加载目标分支标题到数组
while ((getline line < target_file) > 0) {
if (length(line) > 0) target[line] = 1
}
close(target_file)

matched = 0
dup = 0
no_fixes = 0
no_ref = 0
processed = 0

# 读取状态:0=读hash, 1=读subject, 2=读body
state = 0
}

/---COMMIT_END---/ {
# 处理完一个commit
if (hash != "") {
processed++

# 条件1:标题是否已存在?
if (subject in target) {
dup++
} else {
# 条件2:查找 Fixes: 行
has_fixes = 0
ref_found = 0

# 分割body行查找 Fixes:
n = split(body, lines, /\n/)
for (i=1; i<=n; i++) {
if (lines[i] ~ /^Fixes:/) {
has_fixes = 1

# 提取 ("...") 中的内容(兼容所有awk版本)
line_content = lines[i]
start_pos = index(line_content, "(\"")

if (start_pos > 0) {
# 找到 (" 的位置,提取到 ") 结束
temp = substr(line_content, start_pos + 2)
end_pos = index(temp, "\")")

if (end_pos > 0) {
ref_title = substr(temp, 1, end_pos - 1)

# 检查引用是否在目标分支
if (ref_title in target) {
ref_found = 1
break
}
}
}
}
}

if (!has_fixes) {
no_fixes++
} else if (!ref_found) {
no_ref++
} else {
# 符合条件:有Fixes且引用存在,且标题不重复
matched++
print hash " " subject
}
}
}

state = 0
hash = ""
subject = ""
body = ""
next
}

state == 0 {
hash = $0
state = 1
next
}

state == 1 {
subject = $0
state = 2
next
}

state == 2 {
# 累积body行
if (body == "") body = $0
else body = body "\n" $0
next
}

END {
printf "\r\033[K" > "/dev/stderr"
print "[INFO] 完成: 总计 " processed " | 匹配 " matched " | 重复 " dup " | 无Fixes " no_fixes " | 缺依赖 " no_ref > "/dev/stderr"
}
'

echo "========================================" >&2

rm -f "$tmp_target"
}

main "$@"
2 changes: 1 addition & 1 deletion .github/workflows/build-kernel-arm64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
build-kernel:
runs-on: [self-hosted, linux, ARM64]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: "Install Deps"
run: |
git config --global user.email $email
Expand Down
7 changes: 1 addition & 6 deletions .github/workflows/build-kernel-loong64.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
build-kernel:
runs-on: [self-hosted, linux, x64]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: "Install Deps"
run: |
git config --global user.email $email
Expand All @@ -32,8 +32,3 @@ jobs:
time make ARCH=loongarch CROSS_COMPILE=loongarch64-linux-gnu- deepin_loongarch_desktop_defconfig
time make ARCH=loongarch CROSS_COMPILE=loongarch64-linux-gnu- -j$(nproc)

- name: 'Upload Kernel Artifact'
uses: actions/upload-artifact@v4
with:
name: Kernel-ABI-loong64
path: "Module.symvers"
2 changes: 1 addition & 1 deletion .github/workflows/build-kernel-s390.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
build-kernel:
runs-on: [self-hosted, linux, S390]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: "Install Deps"
run: |
git config --global user.email $email
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build-kernel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
build-kernel:
runs-on: [self-hosted, linux, x64]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: "Install Deps"
run: |
git config --global user.email $email
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/check-config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Install build dependencies
run: |
Expand Down
34 changes: 34 additions & 0 deletions .github/workflows/check-depend-all.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: check depend all
on:
pull_request:
workflow_dispatch:

env:
KBUILD_BUILD_USER: deepin-kernel-sig
KBUILD_BUILD_HOST: deepin-kernel-builder
email: support@deepin.org

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions:
pull-requests: read

jobs:
check-depend-all:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: '0'
- name: "Install Deps"
run: |
git config --global user.email $email
git config --global user.name $KBUILD_BUILD_USER

- name: "Check Depend for all commit"
run: |
# Use commits in v6.6..torvalds which has Fixes Tag to check (0,pr_sha) to checkdepends
bash .github/tools/check_kernel_commits.sh v6.18..torvalds/master ${{ github.event.pull_request.head.sha }}

2 changes: 1 addition & 1 deletion .github/workflows/package-kernel-amd64-daily.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
build-kernel:
runs-on: [self-hosted, linux, x64]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: "Install Deps"
run: |
git config --global user.email $email
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/package-kernel-arm64-daily.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
build-kernel:
runs-on: [self-hosted, linux, ARM64]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: "Install Deps"
run: |
git config --global user.email $email
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/package-kernel-loong64-daily.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
build-kernel:
runs-on: [self-hosted, linux, loong64]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v6
- name: "Install Deps"
run: |
git config --global user.email $email
Expand Down
6 changes: 3 additions & 3 deletions Documentation/admin-guide/cgroup-v1/memory.rst
Original file line number Diff line number Diff line change
Expand Up @@ -328,9 +328,9 @@ the amount of kernel memory used by the system. Kernel memory is fundamentally
different than user memory, since it can't be swapped out, which makes it
possible to DoS the system by consuming too much of this precious resource.

Kernel memory accounting is enabled for all memory cgroups by default. But
it can be disabled system-wide by passing cgroup.memory=nokmem to the kernel
at boot time. In this case, kernel memory will not be accounted at all.
Kernel memory accounting is disabled for all memory cgroups by default. But
it can be enabled system-wide by passing cgroup.memory=kmem to the kernel
at boot time. In this case, kernel memory will all be accounted.

Kernel memory limits are not imposed for the root cgroup. Usage for the root
cgroup may or may not be accounted. The memory used is accumulated into
Expand Down
1 change: 1 addition & 0 deletions Documentation/admin-guide/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -760,6 +760,7 @@ Kernel parameters
Format: <string>
nosocket -- Disable socket memory accounting.
nokmem -- Disable kernel memory accounting.
kmem -- Enable kernel memory accounting.
nobpf -- Disable BPF memory accounting.

check_pages= [MM,EARLY] Enable sanity checking of pages after
Expand Down
1 change: 0 additions & 1 deletion Documentation/hwmon/yogafan.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
.. SPDX-License-Identifier: GPL-2.0-only

===============================================================================================
Kernel driver yogafan
===============================================================================================
Expand Down
3 changes: 2 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -742,9 +742,10 @@ ifneq ($(findstring clang,$(CC_VERSION_TEXT)),)
include $(srctree)/scripts/Makefile.clang
endif

ifdef need-compiler
include $(srctree)/scripts/Makefile.rust
# Include this also for config targets because some architectures need
# cc-cross-prefix to determine CROSS_COMPILE.
ifdef need-compiler
include $(srctree)/scripts/Makefile.compiler
endif

Expand Down
11 changes: 9 additions & 2 deletions arch/arm64/configs/deepin_arm64_desktop_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ CONFIG_EXPERT=y
CONFIG_SGETMASK_SYSCALL=y
CONFIG_KALLSYMS_ALL=y
CONFIG_PROFILING=y
CONFIG_RUST=y
CONFIG_KEXEC=y
CONFIG_KEXEC_FILE=y
CONFIG_ARCH_ACTIONS=y
Expand Down Expand Up @@ -96,7 +97,7 @@ CONFIG_ARCH_VISCONTI=y
CONFIG_ARCH_XGENE=y
CONFIG_ARCH_ZYNQMP=y
CONFIG_ARM64_VA_BITS_48=y
CONFIG_NR_CPUS=4096
CONFIG_NR_CPUS=2048
CONFIG_NUMA=y
CONFIG_HZ_1000=y
CONFIG_XEN=y
Expand Down Expand Up @@ -299,7 +300,6 @@ CONFIG_IPV6_ROUTE_INFO=y
CONFIG_INET6_AH=m
CONFIG_INET6_ESP=m
CONFIG_INET6_ESP_OFFLOAD=m
CONFIG_INET6_ESPINTCP=y
CONFIG_INET6_IPCOMP=m
CONFIG_IPV6_MIP6=m
CONFIG_IPV6_ILA=m
Expand Down Expand Up @@ -1496,6 +1496,7 @@ CONFIG_WIZNET_BUS_DIRECT=y
CONFIG_PHYTMAC=m
CONFIG_PHYTMAC_PLATFORM=m
CONFIG_PHYTMAC_PCI=m
CONFIG_GRTNIC_XGB=m
CONFIG_FDDI=m
CONFIG_DEFXX=m
CONFIG_SKFP=m
Expand Down Expand Up @@ -3841,6 +3842,9 @@ CONFIG_STM32_DMAMUX=y
CONFIG_STM32_MDMA=y
CONFIG_ASYNC_TX_DMA=y
CONFIG_SW_SYNC=y
CONFIG_DMABUF_HEAPS=y
CONFIG_DMABUF_HEAPS_SYSTEM=y
CONFIG_DMABUF_HEAPS_CMA=y
CONFIG_UIO_CIF=m
CONFIG_UIO_PDRV_GENIRQ=m
CONFIG_UIO_DMEM_GENIRQ=m
Expand Down Expand Up @@ -4051,6 +4055,8 @@ CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_UTF8=y
CONFIG_EXFAT_FS=m
CONFIG_NTFS_FS=m
CONFIG_NTFS_FS_POSIX_ACL=y
CONFIG_NTFS3_FS=m
CONFIG_NTFS3_64BIT_CLUSTER=y
CONFIG_NTFS3_LZX_XPRESS=y
Expand Down Expand Up @@ -4264,6 +4270,7 @@ CONFIG_CRYPTO_DEV_HISI_TRNG=m
# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_INDIRECT_PIO=y
CONFIG_DMA_RESTRICTED_POOL=y
CONFIG_PRINTK_TIME=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=4
CONFIG_DYNAMIC_DEBUG=y
Expand Down
Loading
Loading