Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
4944 commits
Select commit Hold shift + click to select a range
9186090
Merge fdce8bd38037 ("Merge tag 'slab-for-6.7' of git://git.kernel.org…
gregkh Nov 8, 2023
7c4c453
Merge b9ff774548cd ("Merge tag 'tpmdd-v6.7' of git://git.kernel.org/p…
gregkh Nov 8, 2023
50a656a
Merge 455cdcb45f8f ("Merge tag 'rust-6.7' of https://github.com/Rust-…
gregkh Nov 7, 2023
df94db3
ANDROID: Add packaging rules for KUnit test modules.
Nov 20, 2023
d0d077e
Revert "ANDROID: Add packaging rules for KUnit test modules."
Nov 28, 2023
4439db7
ANDROID: interconnect: Enable debugfs client
Oct 9, 2023
0e01ee2
Merge 89ed67ef126c ("Merge tag 'net-next-6.7' of git://git.kernel.org…
gregkh Nov 29, 2023
81d02c2
Merge "Merge 89ed67ef126c ("Merge tag 'net-next-6.7' of git://git.ker…
Nov 29, 2023
db07b9d
ANDROID: Fix selftest x86_64 config and add --skip-cvd-kill option to…
Nov 28, 2023
fb30419
Merge 4ac4677fdb76 ("Merge tag 'thermal-6.7-rc1' of git://git.kernel.…
gregkh Nov 29, 2023
484348c
ANDROID: thermal: enable 'Bang Bang thermal governor'
browse-zhang Nov 29, 2023
039b2e0
ANDROID: sched: Add trace_android_rvh_set_user_nice_locked
Rickyiu Nov 21, 2023
a2ebe39
ANDROID: add OWNERS file for kselftests
edliaw Dec 4, 2023
93dd591
ANDROID: kselftests: Use KernelTargetTest and handle skip exit code
edliaw Dec 1, 2023
3390547
ANDROID: mm: cma: introduce __cma_alloc API
Nov 29, 2023
816567b
ANDROID: mm: lru_cache_disable skips lru cache drainnig
Nov 29, 2023
9a034cb
ANDROID: devlink: Select CONFIG_NET_DEVLINK in Kconfig.gki
lambert-mtk Jul 26, 2023
3856301
ANDROID: kselftests: Use tests-dir in kselftest script
edliaw Dec 6, 2023
80979fa
ANDROID: Add futex self tests
Nov 17, 2023
9c5ef7c
ANDROID: Move microdroid and crashdump defconfigs to common
jiyongp Sep 25, 2023
e49cb50
ANDROID: Add timer self tests
Dec 7, 2023
0e4e05e
ANDROID: Add mm self tests
Dec 6, 2023
17a6776
Merge 34aac0a33de2 ("Merge tag 'spi-v6.7' of git://git.kernel.org/pub…
gregkh Nov 29, 2023
804ee29
Merge f9ae180416e0 ("Merge tag 'for-v6.7' of git://git.kernel.org/pub…
gregkh Nov 29, 2023
661cdfd
Merge 4684e928dbee ("Merge tag 'soc-arm-6.7' of git://git.kernel.org/…
gregkh Dec 9, 2023
99d6c4d
Merge 1e0c505e1316 ("Merge tag 'asm-generic-6.7' of git://git.kernel.…
gregkh Dec 9, 2023
49253ab
ANDROID: fix up location of qcom-scm.ko module
gregkh Dec 9, 2023
ee39209
Merge 426ee5196d18 ("Merge tag 'sysctl-6.7-rc1' of git://git.kernel.o…
gregkh Dec 8, 2023
242a024
Merge 21e80f3841c0 ("Merge tag 'modules-6.7-rc1' of git://git.kernel.…
gregkh Dec 8, 2023
2597aed
ANDROID: Update license for selftest build and configs
Dec 7, 2023
77a9b0b
Merge "Merge 4684e928dbee ("Merge tag 'soc-arm-6.7' of git://git.kern…
Dec 11, 2023
0b5d458
Merge "Merge 1e0c505e1316 ("Merge tag 'asm-generic-6.7' of git://git.…
Dec 11, 2023
ed08eac
ANDROID: fix up location of qcom-scm.ko module
gregkh Dec 9, 2023
0db700b
Merge "Merge 426ee5196d18 ("Merge tag 'sysctl-6.7-rc1' of git://git.k…
Dec 11, 2023
64ca2bb
Merge "Merge 21e80f3841c0 ("Merge tag 'modules-6.7-rc1' of git://git.…
Dec 11, 2023
a09213b
Merge e9806ff8a0f9 ("Merge tag 'jfs-6.7' of https://github.com/kleika…
gregkh Dec 11, 2023
193280e
ANDROID: GKI: db845c: add nb7vpq904m.ko
pundiramit Nov 7, 2023
0f15ffb
ANDROID: binderfs: skip when user namespace unavailable
edliaw Dec 7, 2023
efcc947
ANDROID: Disable breakpoints step_after_suspend
edliaw Dec 6, 2023
72d0c10
ANDROID: do not run update, periodic IRQ tests on Android
edliaw Dec 7, 2023
0f5a477
ANDROID: kselftests: Enable get_size test
edliaw Dec 5, 2023
c072379
ANDROID: kselftests: choose build from the target device's abi
edliaw Dec 7, 2023
4ff8382
ANDROID: Run futex tests individually
edliaw Dec 7, 2023
503d529
ANDROID: futex: Skip when futex_waitv/shmget not implemented
edliaw Dec 7, 2023
feb8d05
ANDROID: Don't build futex_waitv test
edliaw Dec 7, 2023
a0b51f5
ANDROID: Run tests from selftest directory
edliaw Dec 7, 2023
3851c83
ANDROID: timers: Use original names for outputs of some timer binaries
edliaw Dec 8, 2023
a04171d
Merge 4ea4ed22b578 ("Merge tag 'for-linus-2023110101' of git://git.ke…
gregkh Dec 12, 2023
4aafd1a
Merge "Merge 4ea4ed22b578 ("Merge tag 'for-linus-2023110101' of git:/…
Dec 12, 2023
5d88b26
Revert "ANDROID: SoC: core: Introduce macro SOC_SINGLE_MULTI_EXT"
gregkh Dec 13, 2023
5032efb
ANDROID: bring back typec charger changes.
gregkh Dec 13, 2023
d23db69
ANDROID: revert out-of-tree Android USB gadget changes
gregkh Dec 13, 2023
cdadc37
Merge edd8e84ae951 ("Merge tag 'sound-6.7-rc1' of git://git.kernel.or…
gregkh Dec 11, 2023
6e65810
UPSTREAM: ASoC: codecs: aw88399: Fix -Wuninitialized in aw_dev_set_vc…
nathanchance Oct 27, 2023
08aa71c
UPSTREAM: drm/amd/display: Increase frame warning limit with KASAN or…
nathanchance Nov 2, 2023
3ee387b
Revert "ALSA: hda: cirrus_scodec: Add KUnit test"
gregkh Dec 14, 2023
634f767
Merge 90a300dc0553 ("Merge tag 'libnvdimm-for-6.7' of git://git.kerne…
gregkh Dec 15, 2023
cf6b5b0
Merge 6ed92e559a2e ("Merge tag 'scsi-misc' of git://git.kernel.org/pu…
gregkh Dec 15, 2023
7cc5934
Merge 43468456c95b ("Merge tag 'for-linus' of git://git.kernel.org/pu…
gregkh Dec 11, 2023
35749bf
Merge 6803bd7956ca ("Merge tag 'for-linus' of git://git.kernel.org/pu…
gregkh Dec 15, 2023
f418eba
Merge bc3012f4e3a9 ("Merge tag 'v6.7-p1' of git://git.kernel.org/pub/…
gregkh Dec 15, 2023
fa422bb
Revert "crypto: pkcs7 - remove sha1 support"
gregkh Dec 15, 2023
d669c8b
Merge ecae0bd5173b ("Merge tag 'mm-stable-2023-11-01-14-33' of git://…
gregkh Dec 15, 2023
56cbb14
ANDROID: android: Export symbols for invoking cpufreq_update_util()
Jun 28, 2021
cc61212
ANDROID: Don't include bits/wordsize.h from psock_tpacket
Dec 8, 2023
98ed5d2
ANDROID: Add net self tests
Dec 8, 2023
07e3cca
ANDROID: Add capabilities and seccomp self tests
Dec 8, 2023
bb9d33b
ANDROID: Add x86 specific self tests
Dec 11, 2023
4e9b6d4
ANDROID: timers: Don't run destructive timer tests
edliaw Dec 9, 2023
fa74132
ANDROID: get_size test does not require mm
edliaw Dec 14, 2023
9090f73
ANDROID: timers: Update dependencies for timer kselftests
edliaw Dec 12, 2023
c010a3f
ANDROID: Add dist rules for tests zip
Dec 7, 2023
95f9b6b
Merge "Merge ecae0bd5173b ("Merge tag 'mm-stable-2023-11-01-14-33' of…
Dec 22, 2023
967e753
ANDROID: ashmem: dynamically allocate the android-ashmem shrinker
pundiramit Nov 7, 2023
6ed7417
ANDROID: Revert "mm: handle read faults under the VMA lock"
willmcvicker Dec 21, 2023
8246e31
Merge 8f6f76a6a29f ("Merge tag 'mm-nonmm-stable-2023-11-02-14-08' of …
gregkh Nov 7, 2023
e7d9a0a
Merge e392ea4d4d00 ("Merge tag 's390-6.7-1' of git://git.kernel.org/p…
gregkh Jan 2, 2024
afb8520
Merge d99b91a99be4 ("Merge tag 'char-misc-6.7-rc1' of git://git.kerne…
gregkh Jan 2, 2024
8ea8f83
Merge b06f58ad8e8c ("Merge tag 'driver-core-6.7-rc1' of git://git.ker…
gregkh Jan 2, 2024
f7c8b50
Merge d934aef6bb9e ("Merge tag 'dmaengine-6.7-rc1' of git://git.kerne…
gregkh Jan 2, 2024
558f3da
Merge bfafa2c19d70 ("Merge tag 'phy-for-6.7' of git://git.kernel.org/…
gregkh Jan 2, 2024
9705471
ANDROID: GKI: Remove GENERIC_PHY from gki_defconfig
gregkh Jan 2, 2024
741bfc0
Merge d2f51b3516da ("Merge tag 'rtc-6.7' of git://git.kernel.org/pub/…
gregkh Nov 7, 2023
ec2e16e
ANDROID: update binary names for timer tests
edliaw Dec 28, 2023
2750472
Merge "Merge bfafa2c19d70 ("Merge tag 'phy-for-6.7' of git://git.kern…
gregkh Jan 3, 2024
68ae8f5
ANDROID: GKI: Remove GENERIC_PHY from gki_defconfig
gregkh Jan 2, 2024
4007f92
Merge "Merge d2f51b3516da ("Merge tag 'rtc-6.7' of git://git.kernel.o…
Jan 3, 2024
2568ddc
Merge be3ca57cfb77 ("Merge tag 'media/v6.7-1' of git://git.kernel.org…
gregkh Jan 3, 2024
7b33d5f
Merge c9d01179e185 ("Merge tag 'bcachefs-2023-11-5' of https://evilpi…
gregkh Jan 2, 2024
5119c6b
Revert "ANDROID: Revert "mm: handle read faults under the VMA lock""
surenbaghdasaryan Jan 2, 2024
4ca8943
FROMGIT: arch/mm/fault: fix major fault accounting when retrying unde…
surenbaghdasaryan Dec 26, 2023
2e57805
Revert "usb: typec: tcpm: fix cc role at port reset"
gregkh Jan 3, 2024
ef3a3d7
ANDROID: Specify arch for kselftest test suites
edliaw Jan 3, 2024
ed3158b
ANDROID: Enable userspace block driver UBLK
dhavale Jan 5, 2024
0fa1f94
Revert "FROMLIST: fs: Generic function to convert iocb to rw flags"
gregkh Jan 3, 2024
9c09afa
ANDROID: fs: Move iocb_to_rw_flags to fuse/passthrough
balsini Jan 5, 2024
dea7652
ANDROID: gki_defconfig: Set CONFIG_IDLE_INJECT and CONFIG_CPU_IDLE_TH…
Jan 5, 2024
188f5a1
Merge db5b5e83eee4 ("ovl: use simpler function to convert iocb to rw …
gregkh Jan 10, 2024
ca5763a
Merge 5f034d34737e ("ovl: propagate IOCB_APPEND flag on writes to rea…
gregkh Jan 10, 2024
c6c7403
Merge 389a4a4a1985 ("ovl: punt write aio completion to workqueue") in…
gregkh Jan 10, 2024
e8b5066
Merge f7621b11e8ac ("ovl: protect copying of realinode attributes to …
gregkh Jan 10, 2024
b7f909e
Merge c002728f6081 ("ovl: add helper ovl_file_modified()") into andro…
gregkh Jan 10, 2024
a7dc8f8
Merge d08d3b3c2caf ("ovl: split ovl_want_write() into two helpers") i…
gregkh Jan 10, 2024
5d54e37
Merge 162d06444070 ("ovl: reorder ovl_want_write() after ovl_inode_lo…
gregkh Jan 10, 2024
5bb2b3e
Merge c63e56a4a652 ("ovl: do not open/llseek lower file with upper sb…
gregkh Jan 10, 2024
a51bcd5
Merge 5b02bfc1e7e3 ("ovl: do not encode lower fh with upper sb_writer…
gregkh Jan 10, 2024
75f677a
Merge 420a62dde6eb ("ovl: Move xattr support to new xattrs.c file") i…
gregkh Jan 10, 2024
4a276d6
Merge d431e652600b ("ovl: Add OVL_XATTR_TRUSTED/USER_PREFIX_LEN macro…
gregkh Jan 10, 2024
9536eef
Merge dad02fad84cb ("ovl: Support escaped overlay.* xattrs") into and…
gregkh Jan 10, 2024
a626071
Merge bc8df7a3dc03 ("ovl: Add an alternative type of whiteout") into …
gregkh Jan 10, 2024
7600655
Merge bb7055a73499 ("ovl: Add documentation on nesting of overlayfs m…
gregkh Jan 10, 2024
28ac3ab
Merge c835110b588a ("ovl: remove unused code in lowerdir param parsin…
gregkh Jan 10, 2024
0298dda
Merge 0cea4c097d97 ("ovl: store and show the user provided lowerdir m…
gregkh Jan 10, 2024
5c16e0e
Merge 819829f0319a ("ovl: refactor layer parsing helpers") into andro…
gregkh Jan 10, 2024
15bc93e
Merge 24e16e385f22 ("ovl: add support for appending lowerdirs one by …
gregkh Jan 10, 2024
1b38c77
Merge 7f851936a0ca ("Merge tag 'ovl-update-6.7' of git://git.kernel.o…
gregkh Jan 10, 2024
2c4c677
Merge 305230142ae0 ("Merge tag 'pm-6.7-rc1-2' of git://git.kernel.org…
gregkh Jan 10, 2024
da8324b
Merge 656d88c3b654 ("Merge tag 'mips_6.7' of git://git.kernel.org/pub…
gregkh Jan 10, 2024
28c2906
Revert "ANDROID: RISC-V: Support 32_PCREL relocation type in kernel m…
gregkh Jan 10, 2024
3a026cd
Merge 56d428ae1c4e ("Merge tag 'riscv-for-linus-6.7-mw2' of git://git…
gregkh Jan 10, 2024
29a042b
Merge tag 'v6.7-rc1' into android-mainline
gregkh Jan 10, 2024
4df28dd
ANDROID: mm: export dump_tasks symbol.
Jan 9, 2024
b8d72cb
ANDROID: debug_kinfo: fix build issue due to module_alloc_base change
Dec 28, 2023
bf309bf
ANDROID: gki_defconfig: enable debug_kinfo
Dec 28, 2023
7688b2b
Merge changes If8883f2c,I29e8e972,I652b6ac7,I515ccd45,If827743c into …
Jan 12, 2024
4d97e4c
Merge tag 'v6.7-rc2' into android-mainline
gregkh Jan 12, 2024
30460ee
Merge tag 'v6.7-rc3' into android-mainline
gregkh Jan 12, 2024
eef10ae
ANDROID: GKI: Enable vsock
Jan 5, 2024
af8564b
ANDROID: GKI: Revert "default enable VHOST_TASK"
rmuthiah Jan 12, 2024
c16f17d
Merge tag 'v6.7-rc4' into android-mainline
gregkh Jan 12, 2024
b5f0c45
Merge tag 'v6.7-rc5' into android-mainline
gregkh Jan 12, 2024
d4053d8
Merge tag 'v6.7-rc6' into android-mainline
gregkh Jan 12, 2024
fd33f2c
Merge tag 'v6.7-rc7' into android-mainline
gregkh Jan 12, 2024
412675d
Merge tag 'v6.7-rc8' into android-mainline
gregkh Jan 12, 2024
818858f
Merge 08bd31ece082 ("Merge tag 'sound-6.7-final' of git://git.kernel.…
gregkh Jan 14, 2024
bf7cf4b
Merge 3eca89454aec ("Merge tag '6.7-rc8-smb3-mchan-fixes' of git://gi…
gregkh Jan 14, 2024
753463b
Merge 6d0dc8559c84 ("Merge tag 'soc-fixes-6.7-3a' of git://git.kernel…
gregkh Jan 14, 2024
56e81eb
Merge 2b5bd1498da5 ("Merge tag 'drm-fixes-2024-01-05' of git://anongi…
gregkh Jan 14, 2024
560c91f
Merge 6c23529c08fc ("Merge tag 'mmc-v6.7-rc4' of git://git.kernel.org…
gregkh Jan 14, 2024
0d8a6c7
Merge a4ab2706bb12 ("Merge tag 'firewire-fixes-6.7-final' of git://gi…
gregkh Jan 14, 2024
1110c3c
Merge 0d3ac66ed81c ("Merge tag 'nfsd-6.7-3' of git://git.kernel.org/p…
gregkh Jan 14, 2024
4b6aa37
ANDROID: GKI: Readd VIRTIO_FS
rmuthiah Jan 11, 2024
9ee857c
ANDROID: db845c: Enable device tree overlay support
pundiramit Jan 11, 2024
b72fd28
ANDROID: GKI: Enable CONFIG_SHADOW_CALL_STACK for RISC-V
samitolvanen Jan 16, 2024
b9f7882
ANDROID: Build kselftests for 32bit arm
edliaw Jan 11, 2024
71f973e
ANDROID: Build kselftests for 32bit x86
edliaw Jan 11, 2024
2285818
ANDROID: Revert "gen_compile_commands.py: fix path resolve with symli…
Jan 16, 2024
34bd5a3
Merge 95c8a35f1c01 ("Merge tag 'mm-hotfixes-stable-2024-01-05-11-35' …
gregkh Jan 14, 2024
2f709c8
Revert "mm: align larger anonymous mappings on THP boundaries"
gregkh Jan 15, 2024
564c96e
Merge 52b1853b080a ("Merge tag 'i2c-for-6.7-final' of git://git.kerne…
gregkh Jan 14, 2024
cb4cf52
Merge tag 'v6.7' into android-mainline
gregkh Jan 14, 2024
caae300
ANDROID: timer: update vendor hook for timer calc index
satyadsprabhala Jan 17, 2024
019f81c
ANDROID: gki_defconfig: enable CONFIG_TASK_DELAY_ACCT
Dec 20, 2023
0511623
ANDROID: gki_defconfig: enable NVME
quic-mapa Jun 8, 2023
c4a0b52
ANDROID: Remove 32bit test config and clean up zip
Jan 19, 2024
671089a
ANDROID: uid_sys_stats: Drop CONFIG_UID_SYS_STATS_DEBUG logic
johnstultz-work Jan 18, 2024
339f191
ANDROID: uid_sys_stats: Fully initialize uid_entry_tmp value
johnstultz-work Jan 18, 2024
af8ff00
ANDROID: Add KUnit test config and packaging rules for tests.zip
Dec 6, 2023
2191289
ANDROID: Update the kselftest.sh with options to specifiy serial & test.
Jan 25, 2024
1f07663
ANDROID: gki_defconfig: Enable CONFIG_NVME_MULTIPATH
danielmentzgoogle Jan 10, 2024
f3583fb
ANDROID: mm: Removing memhealth driver
Jan 17, 2024
73fa701
ANDROID: GKI: enable CONFIG_SPI_SLAVE=y
bumyonglee Dec 18, 2023
573a888
Merge c604110e662a ("Merge tag 'vfs-6.8.misc' of git://git.kernel.org…
gregkh Jan 30, 2024
edba123
Merge 3f6984e7301f ("Merge tag 'vfs-6.8.super' of git://git.kernel.or…
gregkh Jan 30, 2024
b1b26a6
ANDROID: Enable percpu high priority kthreads for erofs
dhavale Jan 29, 2024
aba8785
Merge "Merge c604110e662a ("Merge tag 'vfs-6.8.misc' of git://git.ker…
willmcvicker Jan 30, 2024
a4a067e
Merge "Merge 3f6984e7301f ("Merge tag 'vfs-6.8.super' of git://git.ke…
Jan 31, 2024
43b1ca9
ANDROID: Export kthread_set_per_cpu
arve-android Mar 22, 2023
b04dea9
ANDROID: kernel: Add restricted vendor hook in creds
Jan 31, 2024
4b105ab
ANDROID: mm: Remove direct reclaim tracepoint exports
Feb 2, 2024
afde2de
Reapply "mm: align larger anonymous mappings on THP boundaries"
surenbaghdasaryan Feb 2, 2024
422583e
UPSTREAM: mm: huge_memory: don't force huge page alignment on 32 bit
Jan 18, 2024
90494a3
ANDROID: GKI: Fix typo in prompt of CONFIG_GKI_HIDDEN_USB_CONFIGS
xtexx Feb 6, 2024
4323574
ANDROID: vendor_hooks: Add hooks for ufs scheduler
Mar 18, 2021
b41110b
ANDROID: Reland "gen_compile_commands.py: fix path resolve with symli…
Feb 6, 2024
76deb68
ANDROID: Kleaf: Switch to Clang 18.0.0 (r510928)
myxoid Dec 14, 2023
a7dcf25
UPSTREAM: virtio: Add support for no-reset virtio PCI PM
Dec 8, 2023
af9ed64
ANDROID: GKI: explicit include of stringify.h
Feb 8, 2024
df08ef1
ANDROID: Add Android KUnit README
Feb 12, 2024
272d889
ANDROID: power: wakeup_reason: Move back to upstream logging for susp…
dianders Feb 13, 2024
d7c5789
UPSTREAM: add unique mount ID
Oct 25, 2023
368bf9c
UPSTREAM: mounts: keep list of mounts in an rbtree
Oct 25, 2023
fdc6201
UPSTREAM: namespace: extract show_path() helper
Oct 25, 2023
0242f04
UPSTREAM: add statmount(2) syscall
Oct 25, 2023
7591f31
UPSTREAM: statmount: simplify numeric option retrieval
brauner Nov 19, 2023
8ad13e3
UPSTREAM: statmount: simplify string option retrieval
brauner Nov 19, 2023
b5d7f10
UPSTREAM: add listmount(2) syscall
Oct 25, 2023
d279e8d
ANDROID: Disable arm64 clk KUnit tests.
Feb 15, 2024
1a23443
Merge b4c2bea8ceaa ("add listmount(2) syscall") into android-mainline
gregkh Feb 18, 2024
f0f72ca
Merge d8b0f5465012 ("wire up syscalls for statmount/listmount") into …
gregkh Feb 18, 2024
6b71a75
ANDROID: fix up __NR_compat_syscalls number due to build breakage.
gregkh Feb 18, 2024
95424d7
Merge 8c9440fea774 ("Merge tag 'vfs-6.8.mount' of git://git.kernel.or…
gregkh Feb 18, 2024
f559de3
Merge d9e5d31084b0 ("fsnotify: optionally pass access range in file p…
gregkh Feb 18, 2024
3e3fdad
Merge f91a704f7161 ("fs: prepare for stackable filesystems backing fi…
gregkh Feb 19, 2024
eddf6f8
ANDROID: GKI: enable CONFIG_DEBUG_INFO_COMPRESSED_ZSTD=y
nickdesaulniers Feb 21, 2024
2c76b55
ANDROID: GKI: enable CONFIG_DEBUG_INFO_COMPRESSED_ZSTD for x86+riscv
nickdesaulniers Feb 22, 2024
739a44c
ANDROID: Add more network related test to TEST_MAPPING
Feb 23, 2024
bfa6bfa
ANDROID: Fix the wrong annotation for vts_kernel_net_tests
Feb 23, 2024
b50d182
ANDROID: Move BRANCH back to build.config.common.
jacky8hyf Feb 22, 2024
0150010
ANDROID: Add CtsJobSchedulerTestCases to kernel/sched/TEST_MAPPING
Feb 26, 2024
a608076
ANDROID: GKI: Completely disable module autoloading
SiFiveHolland Feb 27, 2024
4de3e2d
ANDROID: add net tests to more code paths
Feb 27, 2024
ea35d2b
ANDROID: uid_sys_stat: fix data-error of cputime and io
lipeifeng-china Feb 20, 2024
3936c80
Revert "exit: Remove profile_task_exit & profile_munmap"
nkapron Mar 9, 2023
4a5826e
Revert "ANDROID: disble the UID_SYS_STATS driver"
nkapron Mar 9, 2023
f0b67aa
ANDROID: GKI: Enable CONFIG_SWIOTLB_DYNAMIC
isaacmanjarres Oct 13, 2023
c5f9e2f
ANDROID: sched: export update_misfit_status symbol
Jan 22, 2024
703f234
FROMLIST: rust: don't select CONSTRUCTORS
Darksonn Mar 8, 2024
2637706
FROMLIST: rust: add flags for shadow call stack sanitizer
Darksonn Mar 4, 2024
d7e60ad
Revert "ANDROID: overlayfs: override_creds=off option bypass creator_…
lag-google Mar 14, 2024
e72fc12
Merge 6cbf5b3105f31 ("Merge tag 'locking-core-2024-01-08' of git://gi…
lag-google Mar 14, 2024
6e0df9b
Merge 0507d2526f843 ("Merge tag 'erofs-for-6.8-rc1-2' of git://git.ke…
lag-google Mar 14, 2024
2a8e9ff
Revert "ANDROID: GKI: vendor code needs __balance_callbacks access"
lag-google Mar 20, 2024
f6a7931
Revert "ANDROID: sched: Export set_next_entity"
lag-google Mar 20, 2024
96dadf6
ANDROID: mm: omm: Provide prototype for exported dump_tasks()
lag-google Mar 18, 2024
2426ed6
ANDROID: GKI: gki_module: Include internal.h in order to pick-up expo…
lag-google Mar 18, 2024
0a3766b
ANDROID: GKI: gki_module: Provide namespacing for cmp_name()
lag-google Mar 19, 2024
2c09e19
ANDROID: tracepoint: Include header containing prototype for android_…
lag-google Mar 19, 2024
635125d
Revert "Makefile.extrawarn: turn on missing-prototypes globally"
lag-google Mar 19, 2024
3f3b4e2
UPSTREAM: f2fs: fix double free of f2fs_sb_info
ebiggers Jan 13, 2024
9f44f94
ANDROID: Create code coverage helper script and doc.
Mar 21, 2024
cefb5c9
Merge 0c6bc3725592 ("Merge tag 'ubifs-for-linus-6.8-rc1' of git://git…
lag-google Mar 20, 2024
79e6176
ANDROID: gki_defconfig: Remove traces of non-existent symbol WLAN_VEN…
lag-google Mar 22, 2024
874c521
ANDROID: gki_defconfig: Shuffle ARM_SCMI_POWER_DOMAIN to its default …
lag-google Mar 22, 2024
e4e211c
UPSTREAM: libbpf: Call memfd_create() syscall directly
anakryiko Feb 1, 2024
913688d
ANDROID: kleaf: Add 3 more GPU related symbols to _DB845C_MODULE_OUTS
lag-google Mar 22, 2024
6d49233
ANDROID: Ensure DIMLIB is available for kernel_virt_* builds
lag-google Mar 23, 2024
a178998
ANDROID: BUILD.bazel: vm_util needs linux/fs.h header file
edliaw Mar 22, 2024
b1dacbb
ANDROID: Fix spelling/wording in coverage doc.
Mar 25, 2024
66fd9f6
Merge e88481f74fee ("Merge tag 'rproc-v6.8' of git://git.kernel.org/p…
lag-google Mar 26, 2024
849c5e0
Merge ed6c23b17547 ("Merge tag 'pinctrl-v6.8-1' of git://git.kernel.o…
lag-google Mar 27, 2024
7397d36
Merge a3f4a07b5027 ("Merge tag 'i3c/for-6.8' of git://git.kernel.org/…
lag-google Mar 27, 2024
0dd2f32
ANDROID: coverage doc: make examples test specific.
Mar 26, 2024
f98163d
Merge e1aa9df44018 ("Merge tag 'pci-v6.8-changes' of git://git.kernel…
lag-google Mar 27, 2024
3de52a5
Merge 296455ade1fd ("Merge tag 'char-misc-6.8-rc1' of git://git.kerne…
lag-google Mar 27, 2024
b8ed662
Revert "mei: rework Kconfig dependencies"
lag-google Mar 28, 2024
26c3fa8
Merge e38f734add21 ("Merge tag 'staging-6.8-rc1' of git://git.kernel.…
lag-google Mar 28, 2024
66942fe
Merge 8c94ccc7cd69 ("Merge tag 'usb-6.8-rc1' of git://git.kernel.org/…
lag-google Mar 28, 2024
5491639
UPSTREAM: usb: typec: tcpm: fix the PD disabled case
lumag Jan 13, 2024
bc77380
ANDROID: xt_quota2: Replace strlcpy() with compatible and safer varia…
lag-google Mar 26, 2024
20039e6
ANDROID: debug_kinfo: Replace strlcpy() with compatible and safer var…
lag-google Mar 26, 2024
6fe236d
Merge 3cb9871f8160 ("Merge tag 'urgent-rcu.2024.01.24a' of https://gi…
lag-google Mar 28, 2024
cc0a229
Merge d1bba17e20d5 ("Merge tag '6.8-rc1-smb3-client-fixes' of git://g…
lag-google Mar 28, 2024
2cfc63c
ANDROID: gki_defconfig: Re-align defconfigs with saveconfig after lat…
lag-google Mar 25, 2024
b61b6f7
Merge e8f897f4afef ("Linux 6.8") into android-mainline
lag-google Mar 28, 2024
0029c51
Revert "ANDROID: gki_defconfig: Re-align defconfigs with saveconfig a…
lag-google Mar 28, 2024
ad8cdc6
ANDROID: Add pkg_files for TEST_MAPPING.
jacky8hyf Mar 27, 2024
f0dc278
Merge tag 'android-mainline-6.8' into acjl/merge-android-6.8-mainline
ljmf00 Apr 16, 2024
d051a20
Merge remote-tracking branch 'origin/main' into acjl/merge-android-6.…
ljmf00 Apr 21, 2024
5190645
crypto: remove duplicate case for OID_id_ecdsa_with_sha1
ljmf00 Apr 16, 2024
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
  •  
  •  
  •  
2,456 changes: 2,456 additions & 0 deletions BUILD.bazel

Large diffs are not rendered by default.

18 changes: 18 additions & 0 deletions Documentation/ABI/stable/sysfs-module
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,21 @@ Date: Jun 2005
Description:
If the module source has MODULE_VERSION, this file will contain
the version of the source code.

What: /sys/module/MODULENAME/scmversion
Date: November 2020
KernelVersion: 5.12
Contact: Will McVicker <willmcvicker@google.com>
Description: This read-only file will appear if modpost was supplied with an
SCM version for the module. It can be enabled with the config
MODULE_SCMVERSION. The SCM version is retrieved by
scripts/setlocalversion, which means that the presence of this
file depends on CONFIG_LOCALVERSION_AUTO=y. When read, the SCM
version that the module was compiled with is returned. The SCM
version is returned in the following format::

===
Git: g[a-f0-9]\+(-dirty)\?
Mercurial: hg[a-f0-9]\+(-dirty)\?
Subversion: svn[0-9]\+
===
1 change: 1 addition & 0 deletions Documentation/ABI/testing/OWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
per-file sysfs-fs-f2fs=file:/fs/f2fs/OWNERS
70 changes: 70 additions & 0 deletions Documentation/ABI/testing/sysfs-fs-incfs
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
What: /sys/fs/incremental-fs/features/corefs
Date: 2019
Contact: Paul Lawrence <paullawrence@google.com>
Description: Reads 'supported'. Always present.

What: /sys/fs/incremental-fs/features/v2
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Reads 'supported'. Present if all v2 features of incfs are
supported.

What: /sys/fs/incremental-fs/features/zstd
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Reads 'supported'. Present if zstd compression is supported
for data blocks.

What: /sys/fs/incremental-fs/features/bugfix_throttling
Date: January 2023
Contact: Paul Lawrence <paullawrence@google.com>
Description: Reads 'supported'. Present if the throttling lock bug is fixed
https://android-review.git.corp.google.com/c/kernel/common/+/2381827

What: /sys/fs/incremental-fs/instances/[name]
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Folder created when incfs is mounted with the sysfs_name=[name]
option. If this option is used, the following values are created
in this folder.

What: /sys/fs/incremental-fs/instances/[name]/reads_delayed_min
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Returns a count of the number of reads that were delayed as a
result of the per UID read timeouts min time setting.

What: /sys/fs/incremental-fs/instances/[name]/reads_delayed_min_us
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Returns total delay time for all files since first mount as a
result of the per UID read timeouts min time setting.

What: /sys/fs/incremental-fs/instances/[name]/reads_delayed_pending
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Returns a count of the number of reads that were delayed as a
result of waiting for a pending read.

What: /sys/fs/incremental-fs/instances/[name]/reads_delayed_pending_us
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Returns total delay time for all files since first mount as a
result of waiting for a pending read.

What: /sys/fs/incremental-fs/instances/[name]/reads_failed_hash_verification
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Returns number of reads that failed because of hash verification
failures.

What: /sys/fs/incremental-fs/instances/[name]/reads_failed_other
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Returns number of reads that failed for reasons other than
timing out or hash failures.

What: /sys/fs/incremental-fs/instances/[name]/reads_failed_timed_out
Date: April 2021
Contact: Paul Lawrence <paullawrence@google.com>
Description: Returns number of reads that timed out.
16 changes: 16 additions & 0 deletions Documentation/ABI/testing/sysfs-kernel-wakeup_reasons
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
What: /sys/kernel/wakeup_reasons/last_resume_reason
Date: February 2014
Contact: Ruchi Kandoi <kandoiruchi@google.com>
Description:
The /sys/kernel/wakeup_reasons/last_resume_reason is
used to report wakeup reasons after system exited suspend.

What: /sys/kernel/wakeup_reasons/last_suspend_time
Date: March 2015
Contact: jinqian <jinqian@google.com>
Description:
The /sys/kernel/wakeup_reasons/last_suspend_time is
used to report time spent in last suspend cycle. It contains
two numbers (in seconds) separated by space. First number is
the time spent in suspend and resume processes. Second number
is the time spent in sleep state.
6 changes: 5 additions & 1 deletion Documentation/admin-guide/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1859,6 +1859,10 @@
If specified, z/VM IUCV HVC accepts connections
from listed z/VM user IDs only.

hvc_dcc.enable= [ARM,ARM64] Enable DCC driver at runtime. For GKI,
disabled at runtime by default to prevent
crashes in devices which do not support DCC.

hv_nopvspin [X86,HYPER_V] Disables the paravirt spinlock optimizations
which allow the hypervisor to 'idle' the
guest on lock contention.
Expand Down Expand Up @@ -2562,7 +2566,7 @@
CONFIG_KUNIT to be set to be fully enabled. The
default value can be overridden via
KUNIT_DEFAULT_ENABLED.
Default is 1 (enabled)
Default is 0 (disabled)

kvm.ignore_msrs=[KVM] Ignore guest accesses to unhandled MSRs.
Default is 0 (don't ignore, but inject #GP)
Expand Down
221 changes: 217 additions & 4 deletions Documentation/block/inline-encryption.rst
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,10 @@ Basic design
============

We introduce ``struct blk_crypto_key`` to represent an inline encryption key and
how it will be used. This includes the actual bytes of the key; the size of the
key; the algorithm and data unit size the key will be used with; and the number
of bytes needed to represent the maximum data unit number the key will be used
with.
how it will be used. This includes the type of the key (standard or
hardware-wrapped); the actual bytes of the key; the size of the key; the
algorithm and data unit size the key will be used with; and the number of bytes
needed to represent the maximum data unit number the key will be used with.

We introduce ``struct bio_crypt_ctx`` to represent an encryption context. It
contains a data unit number and a pointer to a blk_crypto_key. We add pointers
Expand Down Expand Up @@ -301,3 +301,216 @@ kernel will pretend that the device does not support hardware inline encryption
When the crypto API fallback is enabled, this means that all bios with and
encryption context will use the fallback, and IO will complete as usual. When
the fallback is disabled, a bio with an encryption context will be failed.

.. _hardware_wrapped_keys:

Hardware-wrapped keys
=====================

Motivation and threat model
---------------------------

Linux storage encryption (dm-crypt, fscrypt, eCryptfs, etc.) traditionally
relies on the raw encryption key(s) being present in kernel memory so that the
encryption can be performed. This traditionally isn't seen as a problem because
the key(s) won't be present during an offline attack, which is the main type of
attack that storage encryption is intended to protect from.

However, there is an increasing desire to also protect users' data from other
types of attacks (to the extent possible), including:

- Cold boot attacks, where an attacker with physical access to a system suddenly
powers it off, then immediately dumps the system memory to extract recently
in-use encryption keys, then uses these keys to decrypt user data on-disk.

- Online attacks where the attacker is able to read kernel memory without fully
compromising the system, followed by an offline attack where any extracted
keys can be used to decrypt user data on-disk. An example of such an online
attack would be if the attacker is able to run some code on the system that
exploits a Meltdown-like vulnerability but is unable to escalate privileges.

- Online attacks where the attacker fully compromises the system, but their data
exfiltration is significantly time-limited and/or bandwidth-limited, so in
order to completely exfiltrate the data they need to extract the encryption
keys to use in a later offline attack.

Hardware-wrapped keys are a feature of inline encryption hardware that is
designed to protect users' data from the above attacks (to the extent possible),
without introducing limitations such as a maximum number of keys.

Note that it is impossible to **fully** protect users' data from these attacks.
Even in the attacks where the attacker "just" gets read access to kernel memory,
they can still extract any user data that is present in memory, including
plaintext pagecache pages of encrypted files. The focus here is just on
protecting the encryption keys, as those instantly give access to **all** user
data in any following offline attack, rather than just some of it (where which
data is included in that "some" might not be controlled by the attacker).

Solution overview
-----------------

Inline encryption hardware typically has "keyslots" into which software can
program keys for the hardware to use; the contents of keyslots typically can't
be read back by software. As such, the above security goals could be achieved
if the kernel simply erased its copy of the key(s) after programming them into
keyslot(s) and thereafter only referred to them via keyslot number.

However, that naive approach runs into the problem that it limits the number of
unlocked keys to the number of keyslots, which typically is a small number. In
cases where there is only one encryption key system-wide (e.g., a full-disk
encryption key), that can be tolerable. However, in general there can be many
logged-in users with many different keys, and/or many running applications with
application-specific encrypted storage areas. This is especially true if
file-based encryption (e.g. fscrypt) is being used.

Thus, it is important for the kernel to still have a way to "remind" the
hardware about a key, without actually having the raw key itself. This would
ensure that the number of hardware keyslots only limits the number of active I/O
requests, not other things such as the number of logged-in users, the number of
running apps, or the number of encrypted storage areas that apps can create.

Somewhat less importantly, it is also desirable that the raw keys are never
visible to software at all, even while being initially unlocked. This would
ensure that a read-only compromise of system memory will never allow a key to be
extracted to be used off-system, even if it occurs when a key is being unlocked.

To solve all these problems, some vendors of inline encryption hardware have
made their hardware support *hardware-wrapped keys*. Hardware-wrapped keys
are encrypted keys that can only be unwrapped (decrypted) and used by hardware
-- either by the inline encryption hardware itself, or by a dedicated hardware
block that can directly provision keys to the inline encryption hardware.

(We refer to them as "hardware-wrapped keys" rather than simply "wrapped keys"
to add some clarity in cases where there could be other types of wrapped keys,
such as in file-based encryption. Key wrapping is a commonly used technique.)

The key which wraps (encrypts) hardware-wrapped keys is a hardware-internal key
that is never exposed to software; it is either a persistent key (a "long-term
wrapping key") or a per-boot key (an "ephemeral wrapping key"). The long-term
wrapped form of the key is what is initially unlocked, but it is erased from
memory as soon as it is converted into an ephemerally-wrapped key. In-use
hardware-wrapped keys are always ephemerally-wrapped, not long-term wrapped.

As inline encryption hardware can only be used to encrypt/decrypt data on-disk,
the hardware also includes a level of indirection; it doesn't use the unwrapped
key directly for inline encryption, but rather derives both an inline encryption
key and a "software secret" from it. Software can use the "software secret" for
tasks that can't use the inline encryption hardware, such as filenames
encryption. The software secret is not protected from memory compromise.

Key hierarchy
-------------

Here is the key hierarchy for a hardware-wrapped key::

Hardware-wrapped key
|
|
<Hardware KDF>
|
-----------------------------
| |
Inline encryption key Software secret

The components are:

- *Hardware-wrapped key*: a key for the hardware's KDF (Key Derivation
Function), in ephemerally-wrapped form. The key wrapping algorithm is a
hardware implementation detail that doesn't impact kernel operation, but a
strong authenticated encryption algorithm such as AES-256-GCM is recommended.

- *Hardware KDF*: a KDF (Key Derivation Function) which the hardware uses to
derive subkeys after unwrapping the wrapped key. The hardware's choice of KDF
doesn't impact kernel operation, but it does need to be known for testing
purposes, and it's also assumed to have at least a 256-bit security strength.
All known hardware uses the SP800-108 KDF in Counter Mode with AES-256-CMAC,
with a particular choice of labels and contexts; new hardware should use this
already-vetted KDF.

- *Inline encryption key*: a derived key which the hardware directly provisions
to a keyslot of the inline encryption hardware, without exposing it to
software. In all known hardware, this will always be an AES-256-XTS key.
However, in principle other encryption algorithms could be supported too.
Hardware must derive distinct subkeys for each supported encryption algorithm.

- *Software secret*: a derived key which the hardware returns to software so
that software can use it for cryptographic tasks that can't use inline
encryption. This value is cryptographically isolated from the inline
encryption key, i.e. knowing one doesn't reveal the other. (The KDF ensures
this.) Currently, the software secret is always 32 bytes and thus is suitable
for cryptographic applications that require up to a 256-bit security strength.
Some use cases (e.g. full-disk encryption) won't require the software secret.

Example: in the case of fscrypt, the fscrypt master key (the key that protects a
particular set of encrypted directories) is made hardware-wrapped. The inline
encryption key is used as the file contents encryption key, while the software
secret (rather than the master key directly) is used to key fscrypt's KDF
(HKDF-SHA512) to derive other subkeys such as filenames encryption keys.

Note that currently this design assumes a single inline encryption key per
hardware-wrapped key, without any further key derivation. Thus, in the case of
fscrypt, currently hardware-wrapped keys are only compatible with the "inline
encryption optimized" settings, which use one file contents encryption key per
encryption policy rather than one per file. This design could be extended to
make the hardware derive per-file keys using per-file nonces passed down the
storage stack, and in fact some hardware already supports this; future work is
planned to remove this limitation by adding the corresponding kernel support.

Kernel support
--------------

The inline encryption support of the kernel's block layer ("blk-crypto") has
been extended to support hardware-wrapped keys as an alternative to standard
keys, when hardware support is available. This works in the following way:

- A ``key_types_supported`` field is added to the crypto capabilities in
``struct blk_crypto_profile``. This allows device drivers to declare that
they support standard keys, hardware-wrapped keys, or both.

- ``struct blk_crypto_key`` can now contain a hardware-wrapped key as an
alternative to a standard key; a ``key_type`` field is added to
``struct blk_crypto_config`` to distinguish between the different key types.
This allows users of blk-crypto to en/decrypt data using a hardware-wrapped
key in a way very similar to using a standard key.

- A new method ``blk_crypto_ll_ops::derive_sw_secret`` is added. Device drivers
that support hardware-wrapped keys must implement this method. Users of
blk-crypto can call ``blk_crypto_derive_sw_secret()`` to access this method.

- The programming and eviction of hardware-wrapped keys happens via
``blk_crypto_ll_ops::keyslot_program`` and
``blk_crypto_ll_ops::keyslot_evict``, just like it does for standard keys. If
a driver supports hardware-wrapped keys, then it must handle hardware-wrapped
keys being passed to these methods.

blk-crypto-fallback doesn't support hardware-wrapped keys. Therefore,
hardware-wrapped keys can only be used with actual inline encryption hardware.

Currently, the kernel only works with hardware-wrapped keys in
ephemerally-wrapped form. No generic kernel interfaces are provided for
generating or importing hardware-wrapped keys in the first place, or converting
them to ephemerally-wrapped form. In Android, SoC vendors are required to
support these operations in their KeyMint implementation (a hardware abstraction
layer in userspace); for details, see the `Android documentation
<https://source.android.com/security/encryption/hw-wrapped-keys>`_.

Testability
-----------

Both the hardware KDF and the inline encryption itself are well-defined
algorithms that don't depend on any secrets other than the unwrapped key.
Therefore, if the unwrapped key is known to software, these algorithms can be
reproduced in software in order to verify the ciphertext that is written to disk
by the inline encryption hardware.

However, the unwrapped key will only be known to software for testing if the
"import" functionality is used. Proper testing is not possible in the
"generate" case where the hardware generates the key itself. The correct
operation of the "generate" mode thus relies on the security and correctness of
the hardware RNG and its use to generate the key, as well as the testing of the
"import" mode as that should cover all parts other than the key generation.

For an example of a test that verifies the ciphertext written to disk in the
"import" mode, see the fscrypt hardware-wrapped key tests in xfstests, or
`Android's vts_kernel_encryption_test
<https://android.googlesource.com/platform/test/vts-testcase/kernel/+/refs/heads/master/encryption/>`_.
9 changes: 9 additions & 0 deletions Documentation/dev-tools/kunit/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,15 @@ KUnit - Linux Kernel Unit Testing
faq
running_tips

.. warning::
AOSP only supports running tests loaded with modules. Built-in
test execution support has been disabled. In addition, in order
to fully enable running module loaded tests both CONFIG_KUNIT
needs to be enabled and kernel command line argument
`kunit.enable` needs to be set to 1.

The remaining KUnit documentation has been left as-is.

This section details the kernel unit testing framework.

Introduction
Expand Down
1 change: 1 addition & 0 deletions Documentation/filesystems/OWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
per-file f2fs**=file:/fs/f2fs/OWNERS
Loading