From aa7fb658080ab04b716c9ee0b61a1e07d507b624 Mon Sep 17 00:00:00 2001 From: Rory Li <736729045@qq.com> Date: Mon, 30 Sep 2024 04:07:51 +0000 Subject: [PATCH] update news/README.md. Signed-off-by: Rory Li <736729045@qq.com> --- news/README.md | 689 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 689 insertions(+) diff --git a/news/README.md b/news/README.md index 368a701..660c6be 100644 --- a/news/README.md +++ b/news/README.md @@ -8,6 +8,695 @@ * [2024 年 - 上半年](2024-1st-half.md) +## 20240930:第 111 期 + +### 内核动态 + +#### RISC-V 架构支持 + +**[v1: riscv: mm: check the SV39 rule](http://lore.kernel.org/linux-riscv/20240928155626.267348-1-cs.os.kernel@gmail.com/)** + +> SV39 rule: the address of bits[63..39] should be the same as bit[38], +> it is easy to violate if configure PAGE_OFFSET too small. + +**[v2: riscv: add Svukte extension](http://lore.kernel.org/linux-riscv/20240927-dev-maxh-svukte-rebase-2-v2-0-9afe57c33aee@sifive.com/)** + +> RISC-V privileged spec will be added with Svukte extension + +**[v2: Introduce support for T-head TH1520 Mailbox](http://lore.kernel.org/linux-riscv/20240927094207.1650085-1-m.wilczynski@samsung.com/)** + +> The T-head TH1520 SoC supports a hardware mailbox that enables two cores +> within the SoC to communicate and coordinate. + +**[v2: Add the dwmac driver support for T-HEAD TH1520 SoC](http://lore.kernel.org/linux-riscv/20240926-th1520-dwmac-v2-0-f34f28ad1dc9@tenstorrent.com/)** + +**[v2: Add initial support for Canaan Kendryte K230 pinctrl](http://lore.kernel.org/linux-riscv/20240926-k230-pinctrl-v2-0-a9a36fba4b34@163.com/)** + +> This patch series introduces support for the pinctrl driver of the Canaan +> K230 SoC. + +**[v1: irqchip/sifive-plic: Unmask interrupt in plic_irq_enable()](http://lore.kernel.org/linux-riscv/20240926154315.1244200-1-namcao@linutronix.de/)** + +> An example where interrupt is both disabled and masked is when +> handle_fasteoi_irq() is the handler, and IRQS_ONESHOT is set. + +**[v2: Support SSTC while PM operations](http://lore.kernel.org/linux-riscv/20240926065422.226518-1-nick.hu@sifive.com/)** + +> When the cpu is going to be hotplug, stop the stimecmp to prevent pending +> interrupt. + +**[v3: riscv: Idle thread using Zawrs extension](http://lore.kernel.org/linux-riscv/20240925131547.42396-1-luxu.kernel@bytedance.com/)** + +> This patch series introduces a new implementation of idle thread using +> Zawrs extension. + +**[v3: Add Framework FRANME0000 dts](http://lore.kernel.org/linux-riscv/20240925053123.1364574-1-sandie.cao@deepcomputing.io/)** + +> This is a developer-focused +> product, aimed at making tinkering with RISC-V more accessible. + +**[v1: mmc: core: Only set maximum DMA segment size if DMA is supported](http://lore.kernel.org/linux-riscv/20240924210123.2288529-1-linux@roeck-us.net/)** + +> Since upstream commit 334304ac2bac ("dma-mapping: don't return errors +> from dma_set_max_seg_size") calling dma_set_max_seg_size() on a device +> not supporting DMA results in a warning traceback. This is seen when +> booting the sifive_u machine from SD. + +**[GIT PULL: RISC-V Patches for the 6.12 Merge Window, Part 1](http://lore.kernel.org/linux-riscv/mhng-664fc7b8-c82b-414e-9c10-8fe7840f2c76@palmer-ri-x1c9/)** + +> There are two conflicts here. The IRQ one seems pretty straight-forward, just +> two features colliding. + +**[v1: Add initial support for Canaan Kendryte K230 reset controller](http://lore.kernel.org/linux-riscv/20240924-k230-reset-v1-0-d0cdc11989eb@outlook.com/)** + +> This patch series add reset controller support for the Canaan Kendryte +> K230 SoC. + +**[v2: CAST Controller Area Network driver support](http://lore.kernel.org/linux-riscv/20240922145151.130999-1-hal.feng@starfivetech.com/)** + +> This patchset adds support for the CAST Controller Area Network Bus +> Controller (version fd-7x10N00S00) which is used in StarFive JH7110 SoC. + +#### LoongArch 架构支持 + +**[v6: Consolidate IO memcpy functions](http://lore.kernel.org/loongarch/20240925132420.821473-1-jvetter@kalrayinc.com/)** + +> Thank you Catalin for the feedback. It's not a nitpick. I have addressed +> it, and added the architecture before the message for the 3 commits that +> modify arch code. + +**[v5: Add EDAC driver for loongson memory controller](http://lore.kernel.org/loongarch/20240925024038.9844-1-zhaoqunqin@loongson.cn/)** + +> Add a simple EDAC driver which report single bit errors (CE) only on +> loongson platform. + +**[v2: ASoC: Some issues about loongson i2s](http://lore.kernel.org/loongarch/cover.1727056789.git.zhoubinbin@loongson.cn/)** + +> This patch set is mainly about Loongson i2s related issues. + +**[v1: compiler.h: Specify correct attribute for .rodata..c_jump_table](http://lore.kernel.org/loongarch/20240924062710.1243-1-yangtiezhu@loongson.cn/)** + +> Currently, there is an assembler message when generating kernel/bpf/core.o +> under CONFIG_OBJTOOL with LoongArch compiler toolchain. + +#### ARM 架构支持 + +**[v1: ARM: topology: Allow missing CPU clock-frequency device-tree property](http://lore.kernel.org/linux-arm-kernel/20240929181936.644910-1-paulk@sys-base.io/)** + +> Allow the fallback mechanism to continue by assuming the same nominal +> frequency for all CPU cores, while still benefiting from the static +> coefficient provided by the compatible-driven table entries. + +**[v1: KVM: arm64: Another reviewer reshuffle](http://lore.kernel.org/linux-arm-kernel/20240927104956.1223658-1-maz@kernel.org/)** + +> It has been a while since James had any significant bandwidth to +> review KVM/arm64 patches. + +**[v2: Add minimal boot support for IPQ5424](http://lore.kernel.org/linux-arm-kernel/20240927065244.3024604-1-quic_srichara@quicinc.com/)** + +> This series adds minimal board boot support for ipq5424-rdp466 board. + +**[v1: PCI: add enabe(disable)_device() hook for bridge](http://lore.kernel.org/linux-arm-kernel/20240926-imx95_lut-v1-0-d0c62087dbab@nxp.com/)** + +> Some system's IOMMU stream(master) ID bits(such as 6bits) less than +> pci_device_id (16bit). + +**[v3: Add initial support for QCS615 SoC and QCS615 RIDE board](http://lore.kernel.org/linux-arm-kernel/20240926-add_initial_support_for_qcs615-v3-0-e37617e91c62@quicinc.com/)** + +> Introduces the Device Tree for the QCS615 platform. + +**[v1: Add I2C mux on BUS 14 for yosemite4](http://lore.kernel.org/linux-arm-kernel/20240926032821.4171466-1-Delphine_CC_Chiu@wiwynn.com/)** + +> - Add i2c-mux for ADC monitor on Spider Board. +> - Revise adc128d818 adc mode on Fan Boards. +> - Change the address of Fan IC on fan boards. +> - Remove led gpio pca9552 on fan boards. +> - Add i2c mux for for two fan boards. + +**[v2: soc: imx8m: Probe the SoC driver as platform driver](http://lore.kernel.org/linux-arm-kernel/20240925220552.149551-1-marex@denx.de/)** + +> With driver_async_probe=* on kernel command line, the following trace is +> produced because on i.MX8M Plus hardware because the soc-imx8m.c driver +> calls of_clk_get_by_name() which returns -EPROBE_DEFER because the clock +> driver is not yet probed. This was not detected during regular testing +> without driver_async_probe. + +**[v5: Add support for new IMX8MP based board](http://lore.kernel.org/linux-arm-kernel/20240925124903.1837869-1-michal.vokac@ysoft.com/)** + +> This series originally included the dt-binding for that Type-C +> port controller but I finally removed it based on a good comment +> from Krzysztof. + +**[v2: Add initial support for QCS8300 SoC and QCS8300 RIDE board](http://lore.kernel.org/linux-arm-kernel/20240925-qcs8300_initial_dtsi-v2-0-494c40fa2a42@quicinc.com/)** + +> Introduce the Device Tree for the QCS8300 platform. + +**[v5: Initial device trees for A7-A11 based Apple devices](http://lore.kernel.org/linux-arm-kernel/20240925071939.6107-1-towinchenmi@gmail.com/)** + +> This series adds device trees for all A7-A11 SoC based iPhones, iPads, +> iPod touches and Apple TVs. + +**[v1: Revise Meta (Facebook) Minerva BMC (AST2600)](http://lore.kernel.org/linux-arm-kernel/20240924140215.2484170-1-yangchen.openbmc@gmail.com/)** + +> Revise linux device tree entry related to Meta (Facebook) Minerva specific +> devices connected to BMC (AST2600) SoC. + +**[v5: Do not shatter hugezeropage on wp-fault](http://lore.kernel.org/linux-arm-kernel/20240924101654.1777697-1-dev.jain@arm.com/)** + +> It was observed at [1] and [2] that the current kernel behaviour of +> shattering a hugezeropage is inconsistent and suboptimal. + +**[v2: Adjust the setting for SPI flash of yosemite4](http://lore.kernel.org/linux-arm-kernel/20240924094430.272074-1-Delphine_CC_Chiu@wiwynn.com/)** + +> - Split the patches for different targets. + +**[v2: ARM: bcm: Support BCMBCA debug UART](http://lore.kernel.org/linux-arm-kernel/20240923-bcm-arm-bcm6846-v2-1-f4a7191b501a@linaro.org/)** + +> The debug UART on the BCMBCA SoCs are in a different place +> than on the other BCM platforms. Support this with a static +> map when debugging is explicitly configured. + +#### X86 架构支持 + +**[v6: platform/x86: introduce asus-armoury driver](http://lore.kernel.org/lkml/20240930000046.51388-1-luke@ljones.dev/)** + +> The idea for this originates from a conversation with Mario Limonciello +> https://lore.kernel.org/platform-driver-x86/371d4109-a3bb-4c3b-802f-4ec27a945c99@amd.com/ + +**[GIT PULL: locking changes for v6.12](http://lore.kernel.org/lkml/Zvj9aYsNdWNGJbed@gmail.com/)** + +**[v1: x86/apic: Stop the TSC Deadline timer during lapic timer shutdown](http://lore.kernel.org/lkml/20240929063521.17284-1-rui.zhang@intel.com/)** + +> This stops the local APIC timer for one-shot and periodic mode +> only. In TSC deadline mode, the timer is not properly stopped. + +**[v1: x86/ibt: FineIBT-BHI](http://lore.kernel.org/lkml/20240927194856.096003183@infradead.org/)** + +> The thing I picked was FineIBT-BHI, an alternative mitigation for the +> native-BHI issue, something that I implemented somewhere late last year while +> the whole thing was still embargoed. + +**[v1: Handle MMIO during event delivery error on SVM](http://lore.kernel.org/lkml/20240927161657.68110-1-iorlov@amazon.com/)** + +> This patch series eliminates this difference by returning a KVM internal +> error with suberror = KVM_INTERNAL_ERROR_DELIVERY_EV when guest is +> performing MMIO during event delivery, for both VMX and SVM. + +**[v3: platform/x86/tuxedo: Add virtual LampArray for TUXEDO NB04 devices](http://lore.kernel.org/lkml/20240927141745.145176-1-wse@tuxedocomputers.com/)** + +> The TUXEDO Sirius 16 Gen1 and TUXEDO Sirius 16 Gen2 devices have a per-key +> controllable RGB keyboard backlight. The firmware API for it is implemented +> via WMI. + +**[v1: "custom" ACPI platform profile support](http://lore.kernel.org/lkml/20240926025955.1728766-1-superm1@kernel.org/)** + +> There are two major ways to tune platform performance in Linux: +> * ACPI platform profile +> * Manually tuning APU performance + +**[v7: mm: multi-gen LRU: Walk secondary MMU page tables while aging](http://lore.kernel.org/lkml/20240926013506.860253-1-jthoughton@google.com/)** + +> This patchset makes it possible for MGLRU to consult secondary MMUs +> while doing aging, not just during eviction. This allows for more +> accurate reclaim decisions, which is especially important for proactive +> reclaim. + +**[v1: x86: Rely on toolchain for relocatable code](http://lore.kernel.org/lkml/20240925150059.3955569-30-ardb+git@google.com/)** + +> The x86_64 port has a number of historical quirks that result in a +> reliance on toolchain features that are either poorly specified or +> basically implementation details of the toolchain. + +#### 进程调度 + +**[v1: sched: Complete Renaming of scheduler_tick() to sched_tick()](http://lore.kernel.org/lkml/tencent_6DEF4AAC658C70E251EC42D0A870E8581805@qq.com/)** + +> scheduler_tick() was already renamed to sched_tick(), but this was missed. +> The previous commit record can be found at +> https://lore.kernel.org/all/Zer1o5bhkiq1cxaj@gmail.com/ + +#### 内存管理 + +**[v1: Introduce ptr_eq() to preserve address dependency](http://lore.kernel.org/linux-mm/20240929111608.1016757-1-mathieu.desnoyers@efficios.com/)** + +> Introduce ptr_eq() to compare two addresses while preserving the address +> dependencies for later use of the address. It should be used when +> comparing an address returned by rcu_dereference(). + +**[v8: mm: zswap swap-out of large folios](http://lore.kernel.org/linux-mm/20240928021620.8369-1-kanchana.p.sridhar@intel.com/)** + +> This patch-series enables zswap_store() to accept and store large +> folios. The most significant contribution in this series is from the +> earlier RFC submitted by Ryan Roberts [1]. + +**[v1: compiler.h: Introduce ptr_eq() to preserve address dependency](http://lore.kernel.org/linux-mm/20240927203334.976821-1-mathieu.desnoyers@efficios.com/)** + +> Compiler CSE and SSA GVN optimizations can cause the address dependency +> of addresses returned by rcu_dereference to be lost when comparing those +> pointers with either constants or previously loaded pointers. + +**[[RFC/PATCH bpf-next 0/3] bpf: Add kmem_cache iterator and kfunc (v2)](http://lore.kernel.org/linux-mm/20240927184133.968283-1-namhyung@kernel.org/)** + +> I'm proposing a new iterator and a kfunc for the slab memory allocator +> to get information of each kmem_cache like in /proc/slabinfo or +> /sys/kernel/slab in more flexible way. + +**[v1: implement lightweight guard pages](http://lore.kernel.org/linux-mm/cover.1727440966.git.lorenzo.stoakes@oracle.com/)** + +> This series takes a different approach - an idea suggested by Vlasimil +> Babka (and before him David Hildenbrand and Jann Horn - perhaps more - the +> provenance becomes a little tricky to ascertain after this - please forgive +> any omissions!) - rather than locating the guard pages at the VMA layer, +> instead placing them in page tables mapping the required ranges. + +**[v1: zswap: improve memory.zswap.writeback inheritance](http://lore.kernel.org/linux-mm/20240926225531.700742-1-intelfx@intelfx.name/)** + +> Improve the inheritance behavior of the `memory.zswap.writeback` cgroup +> attribute introduced during the 6.11 cycle. + +**[v1: mm/huge_memory: check pmd_special() only after pmd_present()](http://lore.kernel.org/linux-mm/20240926154234.2247217-1-david@redhat.com/)** + +> This fixes confusing migration entries as PFN mappings, and not +> doing what we are supposed to do in the "is_swap_pmd()" case further +> down in the function -- including messing up COW, page table handling +> and accounting. + +**[v3: mm/madvise: unrestrict process_madvise() for current process](http://lore.kernel.org/linux-mm/20240926151019.82902-1-lorenzo.stoakes@oracle.com/)** + +> The process_madvise() call was introduced in commit ecb8ac8b1f14 +> ("mm/madvise: introduce process_madvise() syscall: an external memory +> hinting API") as a means of performing madvise() operations on another +> process. + +**[v2: Support large folios for tmpfs](http://lore.kernel.org/linux-mm/cover.1727338549.git.baolin.wang@linux.alibaba.com/)** + +> This RFC patch series attempts to support large folios for tmpfs. + +**[[RFC/PATCH bpf-next 0/3] bpf: Add slab iterator and kfunc (v1)](http://lore.kernel.org/linux-mm/20240925223023.735947-1-namhyung@kernel.org/)** + +> I'm proposing a new iterator and a kfunc for the slab memory allocator +> to get information of each kmem_cache like in /proc/slabinfo or +> /sys/kernel/slab. + +**[v2: Introduce panic function when slub leaks](http://lore.kernel.org/linux-mm/20240925132505.21278-1-fangzheng.zhang@unisoc.com/)** + +> A method to detect slub leaks by monitoring its usage in real time +> on the page allocation path of the slub. + +**[v1: memblock: Initialized the memory of memblock.reserve to the MIGRATE_MOVABL](http://lore.kernel.org/linux-mm/20240925110235.3157-1-suhua1@kingsoft.com/)** + +> After sparse_init function requests memory for struct page in memblock and +> adds it to memblock.reserved, this memory area is present in both +> memblock.memory and memblock.reserved. + +**[v1: mm: migrate LRU_REFS_MASK bits in folio_migrate_flags](http://lore.kernel.org/linux-mm/20240925030225.236143-1-zhaoyang.huang@unisoc.com/)** + +> Bits of LRU_REFS_MASK are not inherited during migration which lead to +> new_folio start from tier0. Fix this by migrate the bits domain. + +**[v1: dcssblk: Mark DAX broken](http://lore.kernel.org/linux-mm/172721874675.497781.3277495908107141898.stgit@dwillia2-xfh.jf.intel.com/)** + +> The dcssblk driver has long needed special case supoprt to enable +> limited dax operation, so called CONFIG_FS_DAX_LIMITED. + +**[v3: mm: Make SPLIT_PTE_PTLOCKS depend on SMP](http://lore.kernel.org/linux-mm/20240924154205.1491376-1-linux@roeck-us.net/)** + +> This in turn causes the m68k +> "q800" and "virt" machines to crash in qemu if debugging options are +> enabled. + +**[v1: exec: add a flag for "reasonable" execveat() comm](http://lore.kernel.org/linux-mm/20240924141001.116584-1-tycho@tycho.pizza/)** + +> This patch adds an AT_ flag to fix up /proc/pid/comm to instead be the +> contents of argv[0], instead of the fdno. + +**[v2: unrestrict process_madvise() for current process](http://lore.kernel.org/linux-mm/cover.1727176176.git.lorenzo.stoakes@oracle.com/)** + +> This patch series eliminates both limitations. +> This series also introduces a series of self-tests for this feature +> asserting that the flag functions as expected. + +**[v1: mm/memory_hotplug: Print the correct pfn in do_migrate_range()](http://lore.kernel.org/linux-mm/20240924101555.327091-1-lizhijian@fujitsu.com/)** + +> The pfn value needs to be retrieved correctly when PageTransHuge(page) +> is true. Fix it by replacing the usage of 'pfn' with 'page_to_pfn(page)' +> to ensure the correct pfn is printed in warning messages when isolation +> fails. + +**[v1: mm: do not export const kfree and kstrdup variants](http://lore.kernel.org/linux-mm/20240924050351.675925-1-senozhatsky@chromium.org/)** + +> Both kfree_const() and kstrdup_const() use __start_rodata +> and __end_rodata, which do not work for modules. This is +> especially important for kfree_const(). + +**[v1: Userspace Can Control Memory Failure Recovery](http://lore.kernel.org/linux-mm/20240924043924.3562257-1-jiaqiyan@google.com/)** + +> Recently there is an enforcement on the userspace control over how kernel +> handles memory with corrected memory errors [1]. This RFC wants to extend +> userspace's control to how the kernel deals with uncorrectable memory errors, +> so userspace can now control all aspects of memory failure recovery (MFR). + +#### 文件系统 + +**[v1: add group restriction bitmap](http://lore.kernel.org/linux-fsdevel/20240929211510.53112-1-stsp2@yandex.ru/)** + +> This patch adds the group restriction bitmap. + +**[v2: vfs: Add a sysctl for automated deletion of dentry](http://lore.kernel.org/linux-fsdevel/20240929122831.92515-1-laoar.shao@gmail.com/)** + +> This patch seeks to reintroduce the concept conditionally, where the +> associated dentry is deleted only when the user explicitly opts for it +> during file removal. + +**[v3: fuse: folio conversions](http://lore.kernel.org/linux-fsdevel/cover.1727469663.git.josef@toxicpanda.com/)** + +**[v1: fanotify: allow reporting errors on failure to open fd](http://lore.kernel.org/linux-fsdevel/20240927125624.2198202-1-amir73il@gmail.com/)** + +> When working in "fd mode", fanotify_read() needs to open an fd +> from a dentry to report event->fd to userspace. + +**[v1: netfs: Advance iterator correctly rather than jumping it](http://lore.kernel.org/linux-fsdevel/2238548.1727424522@warthog.procyon.org.uk/)** + +> This becomes more problematic when we use a +> bounce buffer made out of single-page folios to cover a multipage pagecache +> folio. + +**[v1: pidfs: check for valid pid namespace](http://lore.kernel.org/linux-fsdevel/20240926-klebt-altgedienten-0415ad4d273c@brauner/)** + +> The user namespace is fine because it is only released when the last +> reference to struct task_struct is put and exit_creds() is called. + +**[v1: rust: add PidNamespace wrapper](http://lore.kernel.org/linux-fsdevel/20240926-pocht-sittlich-87108178c093@brauner/)** + +> Ok, so here's my feeble attempt at getting something going for wrapping +> struct pid_namespace as struct pid_namespace indirectly came up in the +> file abstraction thread. + +**[v1: Miscdevices in Rust](http://lore.kernel.org/linux-fsdevel/20240926-b4-miscdevice-v1-0-7349c2b2837a@google.com/)** + +> A misc device is generally the best place to start with your first Rust +> driver, so having abstractions for miscdevice in Rust will be important +> for our ability to teach Rust to kernel developers. + +**[v1: sysctl: Reduce dput(child) calls in proc_sys_fill_cache()](http://lore.kernel.org/linux-fsdevel/7be4c6d7-4da1-43bb-b081-522a8339fd99@web.de/)** + +**[v2: fs: ext4: support relative path for `journal_path` in mount option.](http://lore.kernel.org/linux-fsdevel/20240925015624.3817878-1-lihongbo22@huawei.com/)** + +> The `fs_lookup_param` did not consider the relative path for +> block device. When we mount ext4 with `journal_path` option using +> relative path, `param->dirfd` was not set which will cause mounting +> error. + +**[v1: add block size > page size support to ramfs](http://lore.kernel.org/linux-fsdevel/20240924192351.74728-1-kernel@pankajraghav.com/)** + +> Add block size > page size to ramfs as we support minimum folio order +> allocation in the page cache. + +**[GIT PULL: BPF struct_fd changes for 6.12](http://lore.kernel.org/linux-fsdevel/20240924163423.76635-1-alexei.starovoitov@gmail.com/)** + +> This pull includes struct_fd BPF changes from Al and Andrii. + +**[v6: per-io hints and FDP](http://lore.kernel.org/linux-fsdevel/20240924092457.7846-1-joshi.k@samsung.com/)** + +> Another spin to incorporate the feedback from LPC and previous +> iteration. The series adds two capabilities: +> - FDP support at NVMe level (patch #1) +> - Per-io hinting via io_uring (patch #3) + +**[GIT PULL: sysctl changes for v6.12-rc1](http://lore.kernel.org/linux-fsdevel/20240923140501.b2i7xggemwvmqcs7@joelS2.panther.com/)** + +> * Bug fix: Avoid evaluating non-mount ctl_tables as a sysctl_mount_point by +> removing the unlikely (but possible) chance that the permanently empty +> ctl_table array shares its address with another ctl_table. +> * Update Joel Granados' contact info in MAINTAINERS. + +**[v1: xarray: rename xa_lock/xa_unlock to xa_enter/xa_leave](http://lore.kernel.org/linux-fsdevel/20240923-xa_enter_leave-v1-1-6ff365e8520a@google.com/)** + +> Functions such as __xa_store() may temporarily unlock the internal +> spinlock if allocation is necessary. + +**[git pull: struct fd layout changes](http://lore.kernel.org/linux-fsdevel/20240923034731.GF3413968@ZenIV/)** + +> Just the layout change and conversion to accessors (invariable +> branch in vfs.git#stable-struct_fd). + +**[v1: blk: optimization for classic polling](http://lore.kernel.org/linux-fsdevel/3578876466-3733-1-git-send-email-nj.shetty@samsung.com/)** + +> This removes the dependency on interrupts to wake up task. Set task +> state as TASK_RUNNING, if need_resched() returns true, +> while polling for IO completion. + +#### 网络设备 + +**[v2: vhost/vsock: specify module version](http://lore.kernel.org/netdev/20240929182103.21882-1-aleksandr.mikhalitsyn@canonical.com/)** + +> Add an explicit MODULE_VERSION("0.0.1") specification for the vhost_vsock module. + +**[v1: bpf: Prevent infinite loops with bpf_redirect_peer](http://lore.kernel.org/netdev/20240929170219.1881536-1-jrife@google.com/)** + +> It is possible to create cycles using bpf_redirect_peer which lead to an +> an infinite loop inside __netif_receive_skb_core. + +**[v1: net: bridge: mcast: Fail MDB get request on empty entry](http://lore.kernel.org/netdev/20240929123640.558525-1-idosch@nvidia.com/)** + +> When user space deletes a port from an MDB entry, the port is removed +> synchronously. If this was the last port in the entry and the entry is +> not joined by the host itself, then the entry is scheduled for deletion +> via a timer. + +**[v1: arcnet: com20020-pci: Add check devm_kasprintf() returned value](http://lore.kernel.org/netdev/20240929023721.17338-1-hanchunchao@inspur.com/)** + +> devm_kasprintf() can return a NULL pointer on failure but this +> returned value in com20020pci_probe() is not checked. + +**[v6: PCIe TPH and cache direct injection support](http://lore.kernel.org/netdev/20240927215653.1552411-1-wei.huang2@amd.com/)** + +> This series introduces generic TPH support in Linux, allowing STs to be +> retrieved and used by PCIe endpoint drivers as needed. + +**[v2: iwl-net: ice: Flush FDB entries before reset](http://lore.kernel.org/netdev/20240927123801.14853-1-wojciech.drewek@intel.com/)** + +> Triggering the reset while in switchdev mode causes +> errors[1]. Rules are already removed by this time +> because switch content is flushed in case of the reset. + +**[v1: net: phy: realtek: Check the index value in led_hw_control_get](http://lore.kernel.org/netdev/20240927114610.1278935-1-hui.wang@canonical.com/)** + +> Just like rtl8211f_led_hw_is_supported() and +> rtl8211f_led_hw_control_set(), the rtl8211f_led_hw_control_get() also +> needs to check the index value, otherwise the caller is likely to get +> an incorrect rules. + +**[v1: net: ppp: do not assume bh is held in ppp_channel_bridge_input()](http://lore.kernel.org/netdev/20240927074553.341910-1-edumazet@google.com/)** + +> Networking receive path is usually handled from BH handler. + +**[v1: net: retain NOCARRIER on protodown interfaces](http://lore.kernel.org/netdev/20240927073331.80425-1-boyko.cxx@gmail.com/)** + +> Make interface with enabled protodown to retain NOCARRIER state during +> transfer of operstate from its lower device. + +**[v2: net-next: net/smc: Introduce a hook to modify syn_smc at runtime](http://lore.kernel.org/netdev/1727408549-106551-1-git-send-email-alibuda@linux.alibaba.com/)** + +> The introduction of IPPROTO_SMC enables eBPF programs to determine +> whether to use SMC based on the context of socket creation, such as +> network namespaces, PID and comm name, etc. + +**[v5: net: systemport: Add error pointer checks in bcm_sysport_map_queues() and bcm_sysport_unmap_queues()](http://lore.kernel.org/netdev/20240926160513.7252-1-kdipendra88@gmail.com/)** + +> Add error pointer checks in bcm_sysport_map_queues() and +> bcm_sysport_unmap_queues() after calling dsa_port_from_netdev(). + +**[GIT PULL: Networking for v6.12-rc1](http://lore.kernel.org/netdev/20240926151325.43239-1-pabeni@redhat.com/)** + +> It looks like that most people are still traveling: both the ML volume +> and the processing capacity are low. + +**[v1: net-next: gve: Link IRQs, queues, and NAPI instances](http://lore.kernel.org/netdev/20240926030025.226221-1-jdamato@fastly.com/)** + +> This RFC uses the netdev-genl API to link IRQs and queues to NAPI IDs so +> that this information is queryable by user apps. + +**[v1: net-next: idpf: Don't hardcode napi_struct size](http://lore.kernel.org/netdev/20240925180017.82891-1-jdamato@fastly.com/)** + +> I'm submitting this as an RFC so the Intel folks have time to take a +> look and request changes, but I plan to submit this next week when +> net-next reopens. + +**[v2: net-next: e1000/e1000e: Link IRQs, NAPIs, and queues](http://lore.kernel.org/netdev/20240925162937.2218-1-jdamato@fastly.com/)** + +> This RFC v2 follows from an RFC submission I sent [1] for e1000e. The +> original RFC added netdev-genl support for e1000e, but this new RFC +> includes a patch to add support for e1000, as well. + +**[v2: net-next: tg3: Link IRQs, NAPIs, and queues](http://lore.kernel.org/netdev/20240925162048.16208-1-jdamato@fastly.com/)** + +> This RFC v2 follows from a PATCH submission which received some feedback +> from broadcom on shortening the patch. + +**[v2: net/ncsi: Disable the ncsi work before freeing the associated structure](http://lore.kernel.org/netdev/20240925155523.1017097-1-eajames@linux.ibm.com/)** + +> The work function can run after the ncsi device is freed, resulting +> in use-after-free bugs or kernel panic. + +**[v1: r8169: Potential divizion by zero in rtl_set_coalesce()](http://lore.kernel.org/netdev/20240925135106.2084111-1-g.ryurikov@securitycode.ru/)** + +> Variable 'scale', whose possible value set allows a zero value in a check +> at r8169_main.c:2014, is used as a denominator at r8169_main.c:2040 and +> r8169_main.c:2042. + +#### 安全增强 + +**[v1: coredump: Do not lock during 'comm' reporting](http://lore.kernel.org/linux-hardening/20240928210830.work.307-kees@kernel.org/)** + +> The 'comm' member will always be NUL terminated, and this is not +> fast-path, so we can just perform a direct memcpy during a coredump +> instead of potentially deadlocking while holding the task struct lock. + +**[v1: hardening: Adjust dependencies in selection of MODVERSIONS](http://lore.kernel.org/linux-hardening/20240928-fix-randstruct-modversions-kconfig-warning-v1-1-27d3edc8571e@kernel.org/)** + +> MODVERSIONS recently grew a dependency on !COMPILE_TEST so that Rust +> could be more easily tested. +> Add the !COMPILE_TEST dependency to the selections to clear up the +> warning. + +#### 异步 IO + +**[v2: RESEND: io_uring/fdinfo: add timeout_list to fdinfo](http://lore.kernel.org/io-uring/20240925085800.1729-1-ruyi.zhang@samsung.com/)** + +> io_uring fdinfo contains most of the runtime information,which is +> helpful for debugging io_uring applications; + +#### Rust For Linux + +**[v3: rust: add trylock method support for lock backend](http://lore.kernel.org/rust-for-linux/BL0PR02MB4914579914884B5D7473B3D6E96A2@BL0PR02MB4914.namprd02.prod.outlook.com/)** + +> Add a non-blocking trylock method to lock backend interface, mutex +> and spinlock implementations. It includes a C helper for spin_trylock. + +**[v1: rust: kernel: sort Rust modules](http://lore.kernel.org/rust-for-linux/20240926124751.345471-1-ojeda@kernel.org/)** + +> Rust modules are intended to be sorted, thus do so. +> This makes `rustfmtcheck` to pass again. + +**[v1: rust: KASAN+RETHUNK requires rustc 1.83.0](http://lore.kernel.org/rust-for-linux/20240926093849.1192264-1-aliceryhl@google.com/)** + +> This is caused by the -Zfunction-return=thunk-extern flag in rustc not +> properly informing LLVM about the mitigation, which means that the KASAN +> functions asan.module_ctor and asan.module_dtor are generated without +> the rethunk mitigation. + +**[v5: Extended MODVERSIONS Support](http://lore.kernel.org/rust-for-linux/20240925233854.90072-1-mmaurer@google.com/)** + +> This patch series is intended for use alongside the Implement +> MODVERSIONS for RUST [1] series as a replacement for the symbol name +> hashing approach used there to enable RUST and MODVERSIONS at the same +> time. + +**[v2: Untrusted Data Abstraction](http://lore.kernel.org/rust-for-linux/20240925205244.873020-1-benno.lossin@proton.me/)** + +> Enable marking certain data as untrusted. For example data coming from +> userspace, hardware or any other external data source. + +**[GIT PULL: Rust for 6.12](http://lore.kernel.org/rust-for-linux/20240924221023.197610-1-ojeda@kernel.org/)** + +> This is the next round of the Rust support. + +**[v3: Implement DWARF modversions](http://lore.kernel.org/rust-for-linux/20240923181846.549877-22-samitolvanen@google.com/)** + +> Here's v3 of the DWARF modversions series [1][2]. The main +> motivation remains modversions support for Rust, which is important +> for distributions like Android that are eager to ship Rust kernel +> modules. + +#### BPF + +**[[RFC/PATCH bpf-next 0/3] bpf: Add kmem_cache iterator and kfunc (v2)](http://lore.kernel.org/bpf/20240927184133.968283-1-namhyung@kernel.org/)** + +> I'm proposing a new iterator and a kfunc for the slab memory allocator +> to get information of each kmem_cache like in /proc/slabinfo or +> /sys/kernel/slab in more flexible way. + +**[v1: cpufreq_ext: Introduce cpufreq ext governor](http://lore.kernel.org/bpf/20240927101342.3240263-1-zouyipeng@huawei.com/)** + +> I am currently working on a patch for a CPU frequency governor based on +> BPF, which can use BPF to customize and implement various frequency +> scaling strategies. + +**[v2: uprobes: Improve the usage of xol slots for better scalability](http://lore.kernel.org/bpf/20240927094549.3382916-1-liaochang1@huawei.com/)** + +> The uprobe handler allocates xol slot from xol_area and quickly release +> it in the single-step handler. + +**[v2: bpf-next: Implement mechanism to signal other threads](http://lore.kernel.org/bpf/20240926115328.105634-1-puranjay@kernel.org/)** + +> This set implements a kfunc called bpf_send_signal_remote() that is similar +> to sigqueue() as it can send a signal along with a cookie to a thread or +> thread group. + +**[v1: bpf: Call kfree(obj) only once in free_one()](http://lore.kernel.org/bpf/08987123-668c-40f3-a8ee-c3038d94f069@web.de/)** + +**[v2: bpf-next: bpf: Add kfuncs for read-only string operations](http://lore.kernel.org/bpf/cover.1727335530.git.vmalik@redhat.com/)** + +> Kernel contains highly optimised implementation of traditional string +> operations. Expose them as kfuncs to allow BPF programs leverage the +> kernel implementation instead of needing to reimplement the operations. + +**[v2: Add BPF Kernel Function bpf_ptrace_vprintk](http://lore.kernel.org/bpf/20240926072755.2007-1-eric.yan@oppo.com/)** + +> add a kfunc 'bpf_ptrace_vprintk' printing bpf msg with trace_marker +> format requirement so that these msgs can be retrieved by android +> perfetto by default and well represented in perfetto UI. + +**[GIT PULL: BPF struct_fd changes for 6.12](http://lore.kernel.org/bpf/20240924163423.76635-1-alexei.starovoitov@gmail.com/)** + +> This pull includes struct_fd BPF changes from Al and Andrii. + +**[v3: bpf-next: Support eliding map lookup nullness](http://lore.kernel.org/bpf/cover.1727174358.git.dxu@dxuuu.xyz/)** + +> This patch allows progs to elide a null check on statically known map +> lookup keys. In other words, if the verifier can statically prove that +> the lookup will be in-bounds, allow the prog to drop the null check. + +**[v1: net-next: virtio-net: support AF_XDP zero copy (tx)](http://lore.kernel.org/bpf/20240924013204.13763-1-xuanzhuo@linux.alibaba.com/)** + +> Because the merge window is closed, so this is RFC. + +### 周边技术动态 + +#### Qemu + +**[v1: hw/riscv/virt: Comment absence of #msi-cells](http://lore.kernel.org/qemu-devel/20240925163908.215456-2-ajones@ventanamicro.com/)** + +> commit 6df664f87c73 ("Revert "hw/riscv/virt.c: imsics DT: add +> '#msi-cells'"") removed #msi-cells. Now that we have a Linux +> commit to reference add a comment explaining why it was removed +> to avoid it getting added back due to DT validation failures. + +**[v2: target/riscv: Add support for Smdbltrp and Ssdbltrp extensions](http://lore.kernel.org/qemu-devel/20240925115808.77874-1-cleger@rivosinc.com/)** + +> This series adds support for Ssdbltrp and Smdbltrp ratified ISA +> extensions [1]. It is based on the Smrnmi series [6]. + +**[v2: riscv-to-apply queue](http://lore.kernel.org/qemu-devel/20240924221751.2688389-1-alistair.francis@wdc.com/)** + +> The following changes since commit 01dc65a3bc262ab1bec8fe89775e9bbfa627becb: +> Merge tag 'pull-target-arm-20240919' of https://git.linaro.org/people/pmaydell/qemu-arm into staging (2024-09-19 14:15:15 +0100) + +**[v1: target/riscv/kvm: add riscv-aia bool props](http://lore.kernel.org/qemu-devel/20240924124407.766495-1-dbarboza@ventanamicro.com/)** + +> This series adds 3 new riscv-aia bool options for the KVM accel driver, +> each one representing the possible values (emul, hwaccel and auto). +> We're also deprecating the existing 'riscv-aia' string option. + +#### U-Boot + +**[v6: efi: Add a test for EFI bootmeth](http://lore.kernel.org/u-boot/20240926215950.1265143-1-sjg@chromium.org/)** + +> This series creates a simple test for this purpose. It includes a few +> patches to make this work. + + ## 20240922:第 110 期 ### 内核动态 -- Gitee