Occasionally, I will forget to link something from the mailing list in this post. To see my full mailing list activity (patches, reviews, and reports), you can view it on lore.kernel.org.
Linux kernel patches
-
Downstream fixes: These are fixes and improvements that occur in a downstream Linux tree, such as Android or ChromeOS, which our continuous integration regularly tests.
-
Miscellaneous fixes and improvements: These are fixes and improvements that don’t fit into a particular category but are important to ClangBuiltLinux.
powerpc: Prepare for clang's per-task stack protector support
(v1
,v2
)HID: Remove default case statement in fetch_item()
(v1
)um: Fix a couple of issues with stub_exe when building with clang
(v1
)kprobes: Adjustments for __counted_by addition
(v1
)powerpc/vdso: Drop -mstack-protector-guard flags in 32-bit files with clang
(v1
)
-
Warning fixes: These are patches to fix various warnings that appear with LLVM. I used to go into detail about the different warnings and what they mean, but the important takeaway for this section is that the kernel should build warning free, as all developers should be using
CONFIG_WERROR
, which will turn these all into failures. Maybe these should be in the build failures section…
Patch review and input
For the next sections, I link directly to my first response in the thread when possible but there are times where the link is to the main post. My responses can be seen inline by going to the bottom of the thread and clicking on my name.
Reviewing patches that are submitted is incredibly important, as it helps ensure good code quality due to catching mistakes before the patches get accepted and it can help get patches accepted faster, as some maintainers will blindly pick up patches that have been reviewed by someone that they trust.
Re: [PATCH v1] RISC-V: disallow gcc + rust builds
Enable measuring the kernel's Source-based Code Coverage and MC/DC with Clang (v2
Re: [PATCH] Bluetooth: Fix type of len in rfcomm_sock_{bind,getsockopt_old}()
Re: [PATCH] mm/vmstat: Fix -Wenum-enum-conversion warning in vmstat.h
[PowerPC][ISelLowering] Support -mstack-protector-guard=tls
Re: [PATCH] kbuild: refactor cc-option-yn, cc-disable-warning, rust-option-yn macros
Re: [PATCH v2] x86/stackprotector: Work around strict Clang TLS symbol requirements
Re: [PATCH -v2] resource: Remove dependency on SPARSEMEM from GET_FREE_REGION
Re: [REGRESSION][BISECTED] erroneous buffer overflow detected in bch2_xattr_validate
Re: [PATCH] rtw89: -Wenum-compare-conditional warnings
Re: [PATCH] media: mtk-vcodec: venc: avoid -Wenum-compare-conditional warning
Re: [PATCH] media: mediatek: vcodec: mark vdec_vp9_slice_map_counts_eob_coef noinline
Re: [PATCH] um: fix stub exe build with CONFIG_GCOV
Re: [PATCH v6 0/7] Add AutoFDO and Propeller support for Clang build
Re: [PATCH] kbuild: rust: avoid errors with old `rustc`s without LLVM patch version
Re: [PATCH v3 1/2] sparc/build: Put usage of -fcall-used* flags behind cc-option
Re: [PATCH v3 2/2] sparc/build: Add SPARC target flags for compiling with clang
Re: [PATCH 2/3] tmpfs: Fix type for sysfs' casefold attribute
Re: [PATCH 3/3] tmpfs: Initialize sysfs during tmpfs init
Issue triage, input, and reporting
The unfortunate thing about working at the intersection of two projects is we will often find bugs that are not strictly related to the project, which require some triage and reporting back to the original author of the breakage so that they can be fixed and not impact our own testing. Some of these bugs fall into that category while others are issues strictly related to this project.
Re: linux-6.12-rc1/drivers/iio/imu/bmi323/bmi323_core.c:133: Array contents defined but not used ?
Re: [PATCH] acl: Annotate struct posix_acl with __counted_by()
Re: [PATCH v13 11/40] arm64/gcs: Provide basic EL2 setup to allow GCS usage at EL0 and EL1
New instance of -Wframe-larger-than with sanitizers enabled after commit d2408c417cfa
Re: [PATCH] HID: simplify code in fetch_item()
Re: [PATCH v5 6/8] x86/module: perpare module loading for ROX allocations of text
Re: [PATCH v9 02/10] um: use execveat to create userspace MMs
Re: [PATCH v6 6/8] x86/module: prepare module loading for ROX allocations of text
Re: [PATCH 1/3] kprobes: Annotate structs with __counted_by()
[PowerPC] Expand global named register support
Re: [uml:next 25/45] InstrProfilingUtil.c:(.text.lprofAtExit+0x1): undefined reference to `atexit'
Re: [weiny2:dcd-v4-2024-10-29 9/28] drivers/cxl/cxlmem.h:755:35: error: use of undeclared identifier 'regions_retunred'
Re: [PATCH v8 8/9] tmpfs: Expose filesystem features via sysfs
Tooling improvements
These are changes to various tools that we use, such as our continuous integration setup, booting utilities, toolchain building scripts, or other closely related projects such as AOSP’s distribution of LLVM and TuxMake.
patches: Remove patch disabling CONFIG_BUILTIN_MODULE_RANGES
patches: mainline: Add patch to avoid timeout with Hexagon
Update DEFAULT_KERNEL_FOR_PGO to 6.11.0 and bump known good revision
tc_build: kernel: Silence new ruff warning (SIM115)
patches: Remove iio bmi323 patch
patches: Apply iio bmi323 change to arm64 and arm64-fixes tree
patches: arm64: Apply afa9b48f327c9ef36bfba4c643a29385a633252b
Behind the scenes
-
Every day that there is a new linux-next release, I rebase and build a few different kernel trees then boot and runtime test them on several different machines, including a Raspberry Pi 4, a Raspberry Pi 3, a SolidRun Honeycomb LX2, an Ampere Altra Developer Platform, two Intel-based desktops, an AMD-based desktop, and an Intel-based laptop. This is not always visible because I do not report anything unless there is something broken but it can take up to a few hours each day, depending on the amount of churn and issues uncovered.
-
I continue to upload prebuilt, fast versions of LLVM for kernel developers and our continuous integration to use.
-
I ran the October 2nd, October 16th, and October 30th ClangBuiltLinux bi-weekly meetings.
Special thanks
Special thanks to Google and the Linux Foundation for sponsoring my work.