diff --git a/news/README.md b/news/README.md index dcfc5173b5b7619419258209b6692f2623ec700b..0cb312020ffa04c7a34887fad7d9669bcd33e9df 100644 --- a/news/README.md +++ b/news/README.md @@ -8,6 +8,854 @@ * [2024 年 - 上半年](2024-1st-half.md) +## 20240916:第 109 期 + +### 内核动态 + +#### RISC-V 架构支持 + +**[v1: Add initial support for Canaan Kendryte K230 pinctrl](http://lore.kernel.org/linux-riscv/ZubtZKlxqejnCFx_@jean.localdomain/)** + +> This patch series introduces support for the pinctrl driver of the Canaan +> K230 SoC. + +**[v2: pinctrl: Add T-Head TH1520 SoC pin controllers](http://lore.kernel.org/linux-riscv/20240914-th1520-pinctrl-v2-0-3ba67dde882c@tenstorrent.com/)** + +> This adds a pin control driver created by Emil for the T-Head TH1520 +> RISC-V SoC used on the Lichee Pi 4A and BeagleV Ahead boards and updates +> the device trees to make use of it. + +**[GIT PULL: KVM/riscv changes for 6.12](http://lore.kernel.org/linux-riscv/CAAhSdy0fHNoSx9KAG9nL=sc9=L+zeComyJjctD7kYOhuMNxLdg@mail.gmail.com/)** + +> There +> are quite a few in-flight patches waiting for more +> reviews and these will be included in 6.13. + +**[v1: riscv: Prevent a bad reference count on CPU nodes](http://lore.kernel.org/linux-riscv/20240913080053.36636-1-mikisabate@gmail.com/)** + +> Moreover, the previous function did not check for errors when acquiring +> the device node, so a return -ENOENT has been added for that case. + +**[v2: riscv: hwprobe: export Zicntr and Zihpm extensions](http://lore.kernel.org/linux-riscv/20240913051324.8176-1-mikisabate@gmail.com/)** + +> Export Zicntr and Zihpm ISA extensions through the hwprobe syscall. + +**[v4: riscv control-flow integrity for usermode](http://lore.kernel.org/linux-riscv/20240912231650.3740732-1-debug@rivosinc.com/)** + +> To get more information on zicfilp and zicfiss riscv CPU extensions, +> patch series adds documentation for `zicfilp` and `zicfiss` + +**[v1: Add Microchip IPC mailbox and remoteproc support](http://lore.kernel.org/linux-riscv/20240912170025.455167-1-valentina.fernandezalanis@microchip.com/)** + +> This series adds support for the Microchip Inter-Processor Communication +> (IPC) mailbox controller, as well as an IPC remoteproc platform driver. + +**[v3: riscv: Add perf support to collect KVM guest statistics from host side](http://lore.kernel.org/linux-riscv/cover.1726126795.git.zhouquan@iscas.ac.cn/)** + +> Add basic guest support to RISC-V perf, enabling it to distinguish +> whether PMU interrupts occur in the host or the guest, and then +> collect some basic guest information from the host side +> (guest os callchain is not supported for now). + +**[v10: riscv: Add support for xtheadvector](http://lore.kernel.org/linux-riscv/20240911-xtheadvector-v10-0-8d3930091246@rivosinc.com/)** + +> xtheadvector is a custom extension that is based upon riscv vector +> version 0.7.1 [1]. + +**[v2: pwm: Add pwm driver for Sophgo SG2042](http://lore.kernel.org/linux-riscv/cover.1725931796.git.unicorn_wang@outlook.com/)** + +> Add driver for pwm controller of Sophgo SG2042 SoC. + +**[v6: riscv: sophgo: Add pinctrl support for CV1800 series SoC](http://lore.kernel.org/linux-riscv/IA1PR20MB49538E389C866882FAF35B8CBB992@IA1PR20MB4953.namprd20.prod.outlook.com/)** + +> Add basic pinctrl driver for Sophgo CV1800 series SoCs. + +**[v1: 6.6: membarrier: riscv: Add full memory barrier in switch_mm()](http://lore.kernel.org/linux-riscv/10F34E3A3BFBC534+20240909025701.1101397-1-wangyuli@uniontech.com/)** + +> The membarrier system call requires a full memory barrier after storing +> to rq->curr, before going back to user-space. + +#### LoongArch 架构支持 + +**[v3: Consolidate IO memcpy functions](http://lore.kernel.org/loongarch/20240910134341.2537407-1-jvetter@kalrayinc.com/)** + +> Fixed compilation problems on 32bit architectures. + +**[v3: Added Interrupt controller emulation for loongarch kvm](http://lore.kernel.org/loongarch/20240910114400.4062433-1-lixianglai@loongson.cn/)** + +> In order to reduce the loss caused by frequent +> switching of the virtual machine monitor from kernel mode to user mode +> when the guest accesses the interrupt controller, we add the interrupt +> controller simulation in kvm. + +**[v4: Add EDAC driver for loongson memory controller](http://lore.kernel.org/loongarch/20240909032124.18819-1-zhaoqunqin@loongson.cn/)** + +> Add a simple EDAC driver which report single bit errors (CE) only on +> loongson platform. + +**[v1: LoongArch: Enable ACPI BGRT handling](http://lore.kernel.org/loongarch/20240909015514.597253-1-maobibo@loongson.cn/)** + +> Add ACPI BGRT support on LoongArch so it can display image provied by +> acpi table at boot stage and switch to graphical UI smoothly. + +#### ARM 架构支持 + +**[v3: Initial device trees for A7-A11 based Apple devices](http://lore.kernel.org/linux-arm-kernel/20240915080733.3565-1-towinchenmi@gmail.com/)** + +> This series adds device trees for all A7-A11 SoC based iPhones, iPads, +> iPod touches and Apple TVs. + +**[v2: perf arm-spe: Refactor data source encoding](http://lore.kernel.org/linux-arm-kernel/20240914220901.756177-1-leo.yan@arm.com/)** + +> This patch series is dependent on the metadata version 2 series [1] for +> retrieving CPU MIDR. It has been verified for per CPU mode and per +> thread mode on Cortex-A725 CPUs. + +**[v2: perf arm-spe: Introduce metadata version 2](http://lore.kernel.org/linux-arm-kernel/20240914215458.751802-1-leo.yan@arm.com/)** + +> This patch series enhances Arm SPE metadata in the Perf file to a +> version 2 format and maintains backward compatibility for metadata v1. + +**[v4: Add support for Ariaboard Photonicat RK3568](http://lore.kernel.org/linux-arm-kernel/20240914145549.879936-1-bigfoot@classfun.cn/)** + +> Add dts for Ariaboard Photonicat RK3568. + +**[v5: Add support for RK3588S Evaluation board](http://lore.kernel.org/linux-arm-kernel/20240914095456.2347532-1-damon.ding@rock-chips.com/)** + +> RK3588S EVB1 board features + +**[GIT PULL: Emulated one-byte cmpxchg() for ARC and sh](http://lore.kernel.org/linux-arm-kernel/c22df1ae-42b4-4a57-91f7-a02e50176ad0@paulmck-laptop/)** + +> This series provides emulated one-byte cmpxchg() support for ARM and +> sh using the cmpxchg_emu_u8() function that uses a four-byte cmpxchg() +> to emulate the one-byte variant. + +**[v1: Add minimal boot support for IPQ5424](http://lore.kernel.org/linux-arm-kernel/20240913121250.2995351-1-quic_srichara@quicinc.com/)** + +> This series adds minimal board boot support for ipq5424-rdp466 board. + +**[v3: Correct perf sampling with Guest VMs](http://lore.kernel.org/linux-arm-kernel/20240912205133.4171576-1-coltonlewis@google.com/)** + +**[v1: Adding support of ADI ARMv8 ADSP-SC598 SoC.](http://lore.kernel.org/linux-arm-kernel/20240912-test-v1-0-458fa57c8ccf@analog.com/)** + +> This set of patches based on ADI fork of Linux Kerenl that support family of ADSP-SC5xx +> SoC's and used by customers for some time . +**[v2: perf: cs-etm: Coresight decode and disassembly improvements](http://lore.kernel.org/linux-arm-kernel/20240912151143.1264483-1-james.clark@linaro.org/)** + +> A set of changes that came out of the issues reported here [1]. + +**[v3: Add support Relfor Saib board which is based on Rockchip RV1109 SoC](http://lore.kernel.org/linux-arm-kernel/20240912142451.2952633-1-karthikeyan@linumiz.com/)** + +> Rockchip RV1109 is compatible with Rockchip RV1126. +> In this series, adding required missing peripheral in +> RV1126 and its pin mux. + +**[linux-next: duplicate patch in the sound-asoc tree](http://lore.kernel.org/linux-arm-kernel/20240912144459.634e3e09@canb.auug.org.au/)** + +> The following commit is also in the arm-soc tree as a different commit +> (but the same patch): + +**[v4: Add mfd, pinctrl and pwm support to EN7581 SoC](http://lore.kernel.org/linux-arm-kernel/20240911-en7581-pinctrl-v4-0-60ac93d760bb@kernel.org/)** + +> Introduce airoha-mfd driver in order to load pinctrl and pwm drivers for +> EN7581 SoC. + +**[v1: support for mm-local memory allocations and use it](http://lore.kernel.org/linux-arm-kernel/20240911143421.85612-1-faresx@amazon.de/)** + +> In a series posted a few years ago [1], a proposal was put forward to allow the +> kernel to allocate memory local to a mm and thus push it out of reach for +> current and future speculation-based cross-process attacks. + +**[v1: Add generic overlay for MikroBUS addon boards](http://lore.kernel.org/linux-arm-kernel/20240911-mikrobus-dt-v1-0-3ded4dc879e7@beagleboard.org/)** + +> This is an attempt to add MikroBUS addon support using the approach +> described by Grove connector patch series. + +#### X86 架构支持 + +**[v1: x86: add more x86-64 micro-architecture levels](http://lore.kernel.org/lkml/W22JX8eWQctCiWIDKGjx4IUU4ZgYmKa1zPOZSKHHVZ74zpUEmVV1VoPMMNcyc-zhraUayW0d4d7OIUYZHuiEqllnAc1tB8DthZahsHZuw0Y=@proton.me/)** + +> This commit +> adds them as options accessible under + +**[v15: tracing: fprobe: function_graph: Multi-function graph and fprobe on fgraph](http://lore.kernel.org/lkml/172639136989.366111.11359590127009702129.stgit@devnote2/)** + +> Here is the 15th version of the series to re-implement the fprobe on +> function-graph tracer. + +**[GIT PULL: KVM: x86: VMX changes for 6.12](http://lore.kernel.org/lkml/20240914011348.2558415-8-seanjc@google.com/)** + +> The highlight is a fix for nested posted interrupts that shows up on CPUs with +> IPI virtualization. + +**[GIT PULL: KVM: x86: SVM changes for 6.12](http://lore.kernel.org/lkml/20240914011348.2558415-7-seanjc@google.com/)** + +> I got nothing clever or interesting to say for this one. + +**[GIT PULL: KVM: x86: MMU changes for 6.12](http://lore.kernel.org/lkml/20240914011348.2558415-4-seanjc@google.com/)** + +> The bulk of the changes are to clean up the thorny "unprotect and retry" mess +> that grew over time. + +**[GIT PULL: KVM: x86: Misc changes for 6.12](http://lore.kernel.org/lkml/20240914011348.2558415-3-seanjc@google.com/)** + +> The highlight is a rework of the userspace MSR access code to automatically +> suppress errors on disallowed accesses to advertised-but-unsupported MSRs. + +**[GIT PULL: KVM: Common changes for 6.12](http://lore.kernel.org/lkml/20240914011348.2558415-2-seanjc@google.com/)** + +> Fix a long-standing goof in the coalesced IO code, and a lurking bug in +> kvm_clear_guest(). + +**[GIT PULL: KVM: x86 pull requests for 6.12](http://lore.kernel.org/lkml/20240914011348.2558415-1-seanjc@google.com/)** + +> There's a trivial (and amusing) conflict with KVM s390 in the selftests pull +> request (we both added "config" to the .gitignore, within a few days of each +> other, after the goof being around for a good year or more). + +**[v1: kthread: Unpark only parked kthread](http://lore.kernel.org/lkml/20240913214634.12557-1-frederic@kernel.org/)** + +> Calling into kthread unparking unconditionally is mostly harmless when +> the kthread is already unparked. + +**[v11: x86: Trenchboot secure dynamic launch Linux kernel support](http://lore.kernel.org/lkml/20240913200517.3085794-1-ross.philipson@oracle.com/)** + +> The larger focus of the TrenchBoot project (https://github.com/TrenchBoot) is to +> enhance the boot security and integrity in a unified manner. + +**[v2: firmware: coreboot: Don't register a pdev if screen_info data is present](http://lore.kernel.org/lkml/20240913191428.1539653-1-javierm@redhat.com/)** + +> On Coreboot platforms, a system framebuffer may be provided to the Linux +> kernel by filling a LB_TAG_FRAMEBUFFER entry in the Coreboot table. + +**[v5: Add per-core RAPL energy counter support for AMD CPUs](http://lore.kernel.org/lkml/20240913152149.6317-1-Dhananjay.Ugwekar@amd.com/)** + +> This patchset adds a new "power_per_core" PMU alongside the existing +> "power" PMU, which will be responsible for collecting the new +> "energy-per-core" event. + +**[GIT PULL: vfs file](http://lore.kernel.org/lkml/20240913-vfs-file-53bf57c94647@brauner/)** + +> This is the work to cleanup and shrink struct file significantly. + +**[v1: net:yt6801: Add Motorcomm yt6801 PCIe driver](http://lore.kernel.org/lkml/20240913124113.9174-1-Frank.Sae@motor-comm.com/)** + +> This patch is to add the ethernet device driver for the PCIe interface of +> Motorcomm YT6801 Gigabit Ethernet. + +#### 进程调度 + +**[v1: sched/eevdf: Reduce the computation frequency of avg_vruntime](http://lore.kernel.org/lkml/20240912091454.801033-1-xavier_qy@163.com/)** + +> The current code subtracts the value of curr from avg_vruntime and avg_load +> during runtime. Then, every time avg_vruntime() is called, it adds the +> value of curr to the avg_vruntime and avg_load. Afterward, it divides these +> and adds min_vruntime to obtain the actual avg_vruntime. + +**[v2: sched: Don't try to catch up excess steal time.](http://lore.kernel.org/lkml/20240911111522.1110074-1-suleiman@google.com/)** + +> When steal time exceeds the measured delta when updating clock_task, we +> currently try to catch up the excess in future updates. + +**[v1: sched, cgroup: cgroup1 can also take the non-RUNTIME_INF min](http://lore.kernel.org/lkml/20240910074832.62536-1-liusong@linux.alibaba.com/)** + +> For the handling logic of child_quota, there is no need to distinguish +> between cgroup1 and cgroup2, so unify the handling logic here. + +**[v2: sched: Improve cache locality of RSEQ concurrency IDs](http://lore.kernel.org/lkml/20240909211506.326648-1-mathieu.desnoyers@efficios.com/)** + +> This series addresses this shortcoming. + +#### 内存管理 + +**[v8: fs: multigrain timestamp redux](http://lore.kernel.org/linux-mm/20240914-mgtime-v8-0-5bd872330bed@kernel.org/)** + +> This is a fairly small update to the v7 set. + +**[v1: -next: tmpfs: fault in smaller chunks if large folio allocation not allowed](http://lore.kernel.org/linux-mm/20240914140613.2334139-1-wangkefeng.wang@huawei.com/)** + +> The tmpfs supports large folio, but there is some configurable options +> to enable/disable large folio allocation, and for huge=within_size, +> large folio only allowabled if it fully within i_size, so there is +> performance issue when perform write without large folio, the issue is +> similar to commit 4e527d5841e2 ("iomap: fault in smaller chunks for +> non-large folio mappings"). + +**[v1: mm: mglru: provide a separate list for lazyfree anon folios](http://lore.kernel.org/linux-mm/20240914063746.46290-1-21cnbao@gmail.com/)** + +> This follows up on the discussion regarding Gaoxu's work. + +**[v1: mm/huge_memory: ensure huge_zero_folio won't have large_rmappable flag set](http://lore.kernel.org/linux-mm/20240914015306.3656791-1-linmiaohe@huawei.com/)** + +> Ensure huge_zero_folio won't have large_rmappable flag set. So it can be +> reported as thp,zero correctly through stable_page_flags(). + +**[v1: mm: Compute mTHP order efficiently](http://lore.kernel.org/linux-mm/20240913091902.1160520-1-dev.jain@arm.com/)** + +> We use pte_range_none() to determine whether contiguous PTEs are empty +> for an mTHP allocation. + +**[v2: mm/memcontrol: add per-memcg pgpgin/pswpin counter](http://lore.kernel.org/linux-mm/20240913084453.3605621-1-jingxiangzeng.cas@gmail.com/)** + +> In proactive memory reclamation scenarios, it is necessary to estimate the +> pswpin and pswpout metrics of the cgroup to determine whether to continue +> reclaiming anonymous pages in the current batch. + +**[v1: maple_tree: root node could be handled by !p_slot too](http://lore.kernel.org/linux-mm/20240913063128.27391-1-richard.weiyang@gmail.com/)** + +> For a root node, mte_parent_slot() return 0, this exactly fits the +> following !p_slot check. + +**[v1: bootmem: Stop using page->index](http://lore.kernel.org/linux-mm/20240912185602.2342148-1-willy@infradead.org/)** + +> Encode the type into the bottom four bits of page->private and the +> info into the remaining bits. + +**[v2: Provide a new two step DMA API mapping API](http://lore.kernel.org/linux-mm/cover.1726138681.git.leon@kernel.org/)** + +> Instead of waiting and waiting when I finally fix NVMe patch which +> doesn't work correctly in DMA direct mode (it causes to failures in +> module reload), I decided to send the series as is to at least get +> a feedback about API and the overall direction. + +**[v1: rust: shrinker: add shrinker abstraction](http://lore.kernel.org/linux-mm/20240912-shrinker-v1-1-18b7f1253553@google.com/)** + +> Rust Binder holds incoming transactions in a read-only mmap'd region +> where it manually manages the pages. + +**[v1: mm: mmap: Allow mmap(MAP_STACK) to map growable stack](http://lore.kernel.org/linux-mm/ZuHtb43Ar21ZptNz@p100/)** + +> This is a RFC to change the behaviour of mmap(MAP_STACK) to be +> sufficient to map memory for usage as stack on all architectures. + +**[v4: tmpfs: Add case-insensitive support for tmpfs](http://lore.kernel.org/linux-mm/20240911144502.115260-1-andrealmeid@igalia.com/)** + +> This patchset adds support for case-insensitive file names lookups in +> tmpfs. + +**[v1: refine mas_mab_cp()](http://lore.kernel.org/linux-mm/20240911142759.20989-1-richard.weiyang@gmail.com/)** + +> By analysis the code, one condition check could be removed and one case would +> hit a redundant assignment. + +**[v12: EDAC: Scrub: introduce generic EDAC RAS control feature driver + CXL/ACPI-RAS2 drivers](http://lore.kernel.org/linux-mm/20240911090447.751-1-shiju.jose@huawei.com/)** + +> Previously known as "ras: scrub: introduce subsystem + CXL/ACPI-RAS2 drivers". + +#### 文件系统 + +**[v1: fs/exfat: resolve memory leak from exfat_create_upcase_table()](http://lore.kernel.org/linux-fsdevel/20240915064404.221474-1-danielyangkang@gmail.com/)** + +> If exfat_load_upcase_table reaches end and returns -EINVAL, +> allocated memory doesn't get freed and while +> exfat_load_default_upcase_table allocates more memory, leading to a +> memory leak. + +**[v1: fuse: use exclusive lock when FUSE_I_CACHE_IO_MODE is set](http://lore.kernel.org/linux-fsdevel/20240914085131.3871317-1-yangyun50@huawei.com/)** + +> This may be a typo. The comment has said shared locks are +> not allowed when this bit is set. If using shared lock, the +> wait in `fuse_file_cached_io_open` may be forever. + +**[v1: filemap: filemap_read() should check that the offset is positive or zero](http://lore.kernel.org/linux-fsdevel/482ee0b8a30b62324adb9f7c551a99926f037393.1726257832.git.trond.myklebust@hammerspace.com/)** + +> We do check that the read offset is less than the filesystem limit, +> however for good measure we should also check that it is positive or +> zero, and return EINVAL if that is not the case. + +**[v1: proc: Add mmap callback for /proc//mem](http://lore.kernel.org/linux-fsdevel/20240913174003.1786581-1-hmiraj@cisco.com/)** + +> This patch introduces memory mapping (mmap) support for the /proc//mem +> interface. The new functionality allows users to map the memory of a +> process into their address space reusing the same pages + +**[GIT PULL: vfs netfs](http://lore.kernel.org/linux-fsdevel/20240913-vfs-netfs-39ef6f974061@brauner/)** + +> This contains the work to improve read/write performance for the new +> netfs library. + +**[v1: -next: fs/inode: Modify mismatched function name](http://lore.kernel.org/linux-fsdevel/20240913011004.128859-1-jiapeng.chong@linux.alibaba.com/)** + +> No functional modification involved. + +**[v2: unicode: change the reference of database file](http://lore.kernel.org/linux-fsdevel/20240912031932.1161-1-ganjie182@gmail.com/)** + +> Commit 2b3d04787012 ("unicode: Add utf8-data module") changed +> the database file from 'utf8data.h' to 'utf8data.c' to build +> separate module, but it seems forgot to update README.utf8data +> , which may causes confusion. Update the README.utf8data and +> the default 'UTF8_NAME' in 'mkutf8data.c'. + +**[v1: ext4: Implement support for extsize hints](http://lore.kernel.org/linux-fsdevel/cover.1726034272.git.ojaswin@linux.ibm.com/)** + +> This patchset implements extsize hint feature for ext4. Posting this RFC to get +> some early review comments on the design and implementation bits. + +**[v5: data placement hints and FDP](http://lore.kernel.org/linux-fsdevel/20240910150200.6589-1-joshi.k@samsung.com/)** + +> The series extends the infrastructure with a new temperature-agnostic +> placement-type hint. + +**[v1: uidgid: make sure we fit into one cacheline](http://lore.kernel.org/linux-fsdevel/20240910-work-uid_gid_map-v1-1-e6bc761363ed@kernel.org/)** + +> This is also what we +> rely on in struct_group() and friends. This of course relies on +> non-strict aliasing which we don't do. + +**[v1: proc: fold kmalloc() + strcpy() into kmemdup()](http://lore.kernel.org/linux-fsdevel/90af27c1-0b86-47a6-a6c8-61a58b8aa747@p183/)** + +> strcpy() will recalculate string length second time which is +> unnecessary in this case. + +**[v1: VFS: check i_nlink count before trying to unlink](http://lore.kernel.org/linux-fsdevel/20240907172111.127817-1-ghanshyam1898@gmail.com/)** + +> Reported-by: syzbot+41b43444de86db4c5ed1@syzkaller.appspotmail.com +> Closes: https://syzkaller.appspot.com/bug?extid=41b43444de86db4c5ed1 + +**[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. + +#### 网络设备 + +**[v1: net: dsa: mv88e6xxx: correct CC scale factor for 88E6393X](http://lore.kernel.org/netdev/b940ddf9-745f-4f2a-a29e-d6efe64de9a8@shenghaoyang.info/)** + +> Sending this as an RFC: no datasheet access - this +> scaling factor may not be correct for all boards if this +> 4ns vs 8ns discrepancy is down to physical design. + +**[v1: e1000e: makes e1000_watchdog_task use queue_delayed_work](http://lore.kernel.org/netdev/20240915070334.1267-1-demonihin@gmail.com/)** + +> Replaces watchdog timer with delayed_work as advised +> in the driver's TODO comment. + +**[v1: net-next: net: mana: Increase the DEF_RX_BUFFERS_PER_QUEUE to 1024](http://lore.kernel.org/netdev/1726376184-14874-1-git-send-email-shradhagupta@linux.microsoft.com/)** + +> Through some experiments, we found out that increasing the default +> RX buffers count from 512 to 1024, gives slightly better throughput +> and significantly reduces the no_wqe_rx errs on the receiver side. + +**[v1: vhost/net: Set num_buffers for virtio 1.0](http://lore.kernel.org/netdev/20240915-v1-v1-1-f10d2cb5e759@daynix.com/)** + +> The specification says the device MUST set num_buffers to 1 if +> VIRTIO_NET_F_MRG_RXBUF has not been negotiated. + +**[v1: net-next: net/mlx5: HWS, check the correct variable in hws_send_ring_alloc_sq()](http://lore.kernel.org/netdev/da822315-02b7-4f5b-9c86-0d5176c5069d@stanley.mountain/)** + +> There is a copy and paste bug so this code checks "sq->dep_wqe" where +> "sq->wr_priv" was intended. + +**[v4: -next: posix-clock: Check timespec64 for PTP clock](http://lore.kernel.org/netdev/20240914100625.414013-1-ruanjinjie@huawei.com/)** + +> Check timespec64 in pc_clock_settime() for PTP clock. + +**[v1: net-next: net: ethernet: fs_enet: Make the per clock optional](http://lore.kernel.org/netdev/20240914081821.209130-1-maxime.chevallier@bootlin.com/)** + +> Some platforms that use fs_enet don't have the PER register clock. This +> optional dependency on the clock was incorrectly made mandatory when +> switching to devm_ accessors. + +**[v1: net: dsa: improve shutdown sequence](http://lore.kernel.org/netdev/20240913203549.3081071-1-vladimir.oltean@nxp.com/)** + +> Alexander Sverdlin presents 2 problems during shutdown with the +> lan9303 driver. + +**[v1: net-next: Mirroring to DSA CPU port](http://lore.kernel.org/netdev/20240913152915.2981126-1-vladimir.oltean@nxp.com/)** + +> The simplest way I could come up with was to set up tc mirred actions +> towards a dummy net_device, and make the offloading of that be accepted +> by the driver. + +**[v1: net: Handle threadirqs in __napi_schedule_irqoff](http://lore.kernel.org/netdev/20240913150954.2287196-1-sean.anderson@linux.dev/)** + +> The threadirqs kernel parameter can be used to force threaded IRQs even +> on non-PREEMPT_RT kernels. + +**[v1: net-next: net: devmem: TX Path](http://lore.kernel.org/netdev/20240913150913.1280238-1-sdf@fomichev.me/)** + +> As discussed in [1], sending the preliminary version of the transmit +> path. It is somewhat based on [2], but at this point probably nothing +> of the original patch remains. + +**[v2: net: xilinx: axienet: Schedule NAPI in two steps](http://lore.kernel.org/netdev/20240913145711.2284295-1-sean.anderson@linux.dev/)** + +> As advised by Documentation/networking/napi.rst, masking IRQs after +> calling napi_schedule can be racy. + +**[v1: Socket Pressure Stall Information / ephemeral port range depletion info](http://lore.kernel.org/netdev/accaf70a-be01-4de9-9577-196ef5b06109@isc.org/)** + +> This RFC relates to "LPC 2023: connect() - why you so slow?" [1] by +> Frederick Lawler . + +**[v1: net: stmmac: set PP_FLAG_DMA_SYNC_DEV only if XDP is enabled](http://lore.kernel.org/netdev/20240913110259.1220314-1-0x1207@gmail.com/)** + +> This patch brings up to 9% noticeable performance improvement on +> certain platforms. + +**[v1: net-next: net/udp: Add 4-tuple hash for connected socket](http://lore.kernel.org/netdev/20240913100941.8565-1-lulie@linux.alibaba.com/)** + +> This RFC patch introduces 4-tuple hash for connected udp sockets, to +> make udp lookup faster. + +**[v1: net-next: net: ethtool: phy: Don't set the context dev pointer for unfiltered DUMP](http://lore.kernel.org/netdev/20240913100515.167341-1-maxime.chevallier@bootlin.com/)** + +> The context info allows continuing DUMP requests, shall they fill the +> netlink buffer. + +**[v1: Allow sk_lookup UDP return traffic to egress.](http://lore.kernel.org/netdev/20240913-reverse-sk-lookup-v1-0-e721ea003d4c@cloudflare.com/)** + +> Currently, sk_lookup allows an ebpf program to run on the ingress socket +> lookup path, and accept traffic not only on a range of addresses, but +> also on a range of ports. + +**[v1: ethtool: netlink: rss: retrieve ring count using ETHTOOL_GRXRINGS ioctl](http://lore.kernel.org/netdev/20240913093828.2549217-1-vladimir.oltean@nxp.com/)** + +> Several drivers regressed when ethtool --show-rxfh was converted from +> ioctl to netlink. This is because ETHTOOL_GRXRINGS was converted to +> ETHTOOL_MSG_CHANNELS_GET, which is semantically equivalent to +> ETHTOOL_GCHANNELS but different from ETHTOOL_GRXRINGS. + +**[v1: net-next: net: ethtool: phy: Distinguish whether dev is got by phy start or doit](http://lore.kernel.org/netdev/20240913080714.1809254-1-lizhi.xu@windriver.com/)** + +> Syzbot reported a refcount bug in ethnl_phy_done. + +**[v1: net: phy: aquantia: Set phy speed to 2.5gbps for AQR115c](http://lore.kernel.org/netdev/20240913011635.1286027-1-quic_abchauha@quicinc.com/)** + +> Recently we observed that aquantia AQR115c always comes up in +> 100Mbps mode. + +**[v1: net-next: net: sched: cls_api: improve the error message for ID allocation failure](http://lore.kernel.org/netdev/20240912215306.2060709-1-kuba@kernel.org/)** + +> We run into an exhaustion problem with the kernel-allocated filter IDs. + +**[v2: net-next: usbnet: ipheth: prevent OoB reads of NDP16](http://lore.kernel.org/netdev/20240912211817.1707844-1-forst@pen.gy/)** + +> In "NCM mode", the iOS device encapsulates RX (phone->computer) traffic +> in NCM Transfer Blocks (similarly to CDC NCM). + +**[v1: net: fbnic: Set napi irq value after calling netif_napi_add](http://lore.kernel.org/netdev/20240912174922.10550-1-brett.creeley@amd.com/)** + +> The driver calls netif_napi_set_irq() and then calls netif_napi_add(), +> which calls netif_napi_add_weight(). + +**[v1: iproute: man: replace use of term whitelist](http://lore.kernel.org/netdev/20240912172226.13352-1-stephen@networkplumber.org/)** + +> Avoid use of term whitelist because it propgates white == good +> assumptions. Not really neede on the man page. + + +**[v1: iproute: man: replace use of word segregate](http://lore.kernel.org/netdev/20240912172003.13210-1-stephen@networkplumber.org/)** + +> The term segregate carries a lot of racist baggage in the US. +> It is on the Inclusive Naming word list. + +**[v1: iproute: replace use of term 'Sanity check'](http://lore.kernel.org/netdev/20240912171446.12854-1-stephen@networkplumber.org/)** + +> The term "sanity check" is on the Tier2 word list (should replace). + +**[v2: net-next: eth: fbnic: add timestamping support](http://lore.kernel.org/netdev/20240912163123.551882-1-vadfed@meta.com/)** + +> The series is to add timestamping support for Meta's NIC driver. + +**[v2: net-next: octeontx2: Few debugfs enhancements](http://lore.kernel.org/netdev/20240912161450.164402-1-lcherian@marvell.com/)** + +> Removed wrong mutex_unlock invocations. + +**[v1: net-next: tg3: Link IRQs to NAPI instances](http://lore.kernel.org/netdev/20240912155830.14688-1-jdamato@fastly.com/)** + +> Link IRQs to NAPI instances with netif_napi_set_irq. This information +> can be queried with the netdev-genl API. + +**[v1: net: netkit: Assign missing bpf_net_context](http://lore.kernel.org/netdev/20240912155620.1334587-1-leitao@debian.org/)** + +> During the introduction of struct bpf_net_context handling for +> XDP-redirect, the netkit driver has been missed, which also requires it +> because NETKIT_REDIRECT invokes skb_do_redirect() which is accessing the +> per-CPU variables. + +**[GIT PULL: Networking for v6.11-rc8](http://lore.kernel.org/netdev/20240912143205.15347-1-pabeni@redhat.com/)** + +> Including fixes from netfilter. + +**[v1: net: net:ipv4: ip_route_input_slow: Change behaviour of routing decision when IP router alert option is present](http://lore.kernel.org/netdev/20240912141440.314005-1-guyavrah1986@gmail.com/)** + +> The suggested fix changes this behaviour +> by setting the ip_forward as the next "step" in the flow of the packet, +> just before it (previously was) is dropped, so that later the ip_forward, +> as usual, will pass it on to its relevant recipient (socket), by +> invoking the ip_call_ra_chain. + +**[v1: net:ipv4: ip_route_input_slow: Change behaviour of routing decision when IP router alert option is present.](http://lore.kernel.org/netdev/20240912114742.310392-1-guyavrah1986@gmail.com/)** + +> When an IP packet with the IP router alert (RFC 2113) field arrives +> to some host who is not the destination of that packet (i.e - non of +> its interfaces is the address in the destination IP address field of that +> packet) + +**[v10: iwl-next: ice: Implement PTP support for E830 devices](http://lore.kernel.org/netdev/20240912094720.832348-9-karol.kolacinski@intel.com/)** + +> Add specific functions and definitions for E830 devices to enable +> PTP support. + +**[v1: ethtool-next: Add support for new features in C33 PSE](http://lore.kernel.org/netdev/20240912-feature_poe_power_cap-v1-0-499e3dd996d7@bootlin.com/)** + +> It also updates the manual accordingly. +> This series requisites the c33 PSE documentation support patch sent +> mainline. + +**[v1: net-next: pull-request: can-next 2024-09-11](http://lore.kernel.org/netdev/20240912080438.2826895-1-mkl@pengutronix.de/)** + +> this is a pull request of 5 patches for net-next/master. + + +**[v1: net: pull-request: can 2024-09-12](http://lore.kernel.org/netdev/20240912075804.2825408-1-mkl@pengutronix.de/)** + +> this is a pull request of 5 patches for net/master. + +**[v3: ipsec: xfrm: check MAC header is shown with both skb->mac_len and skb_mac_header_was_set()](http://lore.kernel.org/netdev/20240912075555.225316-1-en-wei.wu@canonical.com/)** + +> When we use Intel WWAN with xfrm, our system always hangs after +> browsing websites for a few seconds. + +**[v1: net: mana: Add get_link and get_link_ksettings in ethtool](http://lore.kernel.org/netdev/1726127083-28538-1-git-send-email-ernis@linux.microsoft.com/)** + +> Add support for the ethtool get_link and get_link_ksettings +> operations. + +**[v1: net: bonding: do not set force_primary if reselect is set to failure](http://lore.kernel.org/netdev/20240912064043.36956-1-suresh2514@gmail.com/)** + +> This can result in primary becoming active again when link is back which +> is not what we want when primary_reselect is set to 'failure' + +**[v10: net-next: Add support of HIBMCGE Ethernet Driver](http://lore.kernel.org/netdev/20240912025127.3912972-1-shaojijie@huawei.com/)** + +> This patch set adds the support of Hisilicon BMC Gigabit Ethernet Driver. + +#### 安全增强 + +**[v3: -next: coccinelle: Add some rules for string_chioces helpers.](http://lore.kernel.org/linux-hardening/20240911010927.741343-1-lihongbo22@huawei.com/)** + +> We found that many of the detection rules for helpers in +> string_choices.h are missing. This series of patches is +> intended to complete these rules. + +**[v2: overflow: optimize struct_size() calculation](http://lore.kernel.org/linux-hardening/20240910024952.1590207-1-mailhol.vincent@wanadoo.fr/)** + +> If the offsetof() of a given flexible array member (fam) is smaller +> than the sizeof() of the containing struct, then the struct_size() +> macro reports a size which is too big. + +#### 异步 IO + +**[v1: io_uring: rename "copy buffers" to "clone buffers"](http://lore.kernel.org/io-uring/27e7258c-b6d0-439c-854f-e6441a82148b@kernel.dk/)** + +> A recent commit added support for copying registered buffers from one +> ring to another. + +**[v5: implement async block discards and other ops via io_uring](http://lore.kernel.org/io-uring/cover.1726072086.git.asml.silence@gmail.com/)** + +> There is an interest in having asynchronous block operations like +> discard and write zeroes. The series implements that as io_uring commands, +> which is an io_uring request type allowing to implement custom file +> specific operations. + +**[v1: 6.1: io_uring/io-wq: respect cgroup cpusets](http://lore.kernel.org/io-uring/20240911162316.516725-1-felix.moessbauer@siemens.com/)** + +> as discussed in [1], this is a manual backport of the remaining two +> patches to let the io worker threads respect the affinites defined by +> the cgroup of the process. +**[v3: io_uring/io-wq: respect cgroup cpusets](http://lore.kernel.org/io-uring/20240910171157.166423-1-felix.moessbauer@siemens.com/)** + +> this series continues the affinity cleanup work started in +> io_uring/sqpoll. It has been successfully tested against the liburing +> testsuite (make runtests), liburing @ caae94903d2e201. + +**[v1: io_uring/rw: treat -EOPNOTSUPP for IOCB_NOWAIT like -EAGAIN](http://lore.kernel.org/io-uring/8b7a8200-f616-46a8-bc44-5af7ce9b081a@kernel.dk/)** + +> Some file systems, ocfs2 in this case, will return -EOPNOTSUPP for +> an IOCB_NOWAIT read/write attempt. + +**[v8: RESENT: io_uring: releasing CPU resources when polling](http://lore.kernel.org/io-uring/20240910092223.161685-1-xue01.he@samsung.com/)** + +> This patch add a new hybrid poll at io_uring level, it also set a signal +> "IORING_SETUP_HY_POLL" to application, aim to provide a interface for users +> to enable use new hybrid polling flexibly. + +#### Rust For Linux + +**[v2: rust: sync: require `T: Sync` for `LockedBy::access`](http://lore.kernel.org/rust-for-linux/20240915-locked-by-sync-fix-v2-1-1a8d89710392@google.com/)** + +> The `LockedBy::access` method only requires a shared reference to the +> owner. + +**[v1: Untrusted data abstraction](http://lore.kernel.org/rust-for-linux/20240913112643.542914-1-benno.lossin@proton.me/)** + +> Enable marking certain data as untrusted. For example data coming from +> userspace, hardware or any other external data source. + +**[v3: rust: error: make conversion functions public](http://lore.kernel.org/rust-for-linux/DM4PR14MB7276E6948E67B3B23D8EA847E9652@DM4PR14MB7276.namprd14.prod.outlook.com/)** + +> Change visibility to public of functions in error.rs: +> from_err_ptr, from_errno, from_result and to_ptr. +> Additionally, remove dead_code annotations. + +**[v5: rust: Add irq abstraction, SpinLockIrq](http://lore.kernel.org/rust-for-linux/20240912190540.53221-1-lyude@redhat.com/)** + +> This adds a simple interface for disabling and enabling CPUs, along with +> the ability to mark a function as expecting interrupts be disabled - +> along with adding bindings for spin_lock_irqsave/spin_lock_irqrestore(). + +**[v7: Generic `Allocator` support for Rust](http://lore.kernel.org/rust-for-linux/20240911225449.152928-1-dakr@kernel.org/)** + +> This patch series adds generic kernel allocator support for Rust, which so far +> is limited to `kmalloc` allocations. + +#### BPF + +**[v1: bpf-next: Support eliding map lookup nullness](http://lore.kernel.org/bpf/cover.1726366145.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: netkit: Ensure current->bpf_net_context is set in netkit_xmit()](http://lore.kernel.org/bpf/20240914184616.2916445-1-jrife@google.com/)** + +> When operating Cilium in netkit mode with BPF-based host routing, calls +> to bpf_redirect() cause a kernel panic. + +**[v2: bpf: Check the remaining info_cnt before repeating btf fields](http://lore.kernel.org/bpf/20240914133703.1920767-1-houtao@huaweicloud.com/)** + +> The patch set adds the missed check again info_cnt when flattening the +> array of nested struct. The problem was spotted when developing dynptr +> key support for hash map. + +**[v2: bpf-next: libbpf: add bpf_object__token_fd accessor](http://lore.kernel.org/bpf/20240913001858.3345583-1-ihor.solodrai@pm.me/)** + +> Add a LIBBPF_API function to retrieve the token_fd from a bpf_object. + +**[v14: tracing: fprobe: function_graph: Multi-function graph and fprobe on fgraph](http://lore.kernel.org/bpf/172615368656.133222.2336770908714920670.stgit@devnote2/)** + +> Here is the 14th version of the series to re-implement the fprobe on +> function-graph tracer. The previous version is. + +**[CPUMAP latency metrics (was: v1: bpf-next: bpf: ringbuf: Support consuming BPF_MAP_TYPE_RINGBUF from prog)](http://lore.kernel.org/bpf/e0321fe6-da0e-4745-b23c-24bb2b02613d@kernel.org/)** + +> For the inline timestamping same pitfall actually applies. There you +> timestamp the packets themselves. + +**[v1: tools/bpf: Add missing fclose.](http://lore.kernel.org/bpf/20240912081730.22094-1-zhangjiao2@cmss.chinamobile.com/)** + +> Add fclose to rm this error. + +**[v4: net: bpf: devmap: provide rxq after redirect](http://lore.kernel.org/bpf/20240911-devel-koalo-fix-ingress-ifindex-v4-0-5c643ae10258@linutronix.de/)** + +> Add bugfix and related selftest. + +**[v1: bpf-next: bpf: lsm: Set bpf_lsm_blob_sizes.lbs_task to 0](http://lore.kernel.org/bpf/20240911055508.9588-1-song@kernel.org/)** + +> bpf task local storage is now using task_struct->bpf_storage, so +> bpf_lsm_blob_sizes.lbs_task is no longer needed. Remove it to save some +> memory. + +**[v3: bpf-next: bpf: Allow skb dynptr for tp_btf](http://lore.kernel.org/bpf/20240911033719.91468-1-lulie@linux.alibaba.com/)** + +> This makes bpf_dynptr_from_skb usable for tp_btf, so that we can easily +> parse skb in tracepoints. This has been discussed in [0], and Martin +> suggested to use dynptr (instead of helpers like bpf_skb_load_bytes). + +**[v1: uprobes: switch to RCU Tasks Trace flavor for better performance](http://lore.kernel.org/bpf/20240910174312.3646590-1-andrii@kernel.org/)** + +> This patch switches uprobes SRCU usage to RCU Tasks Trace flavor, which +> is optimized for more lightweight and quick readers (at the expense of +> slower writers, which for uprobes is a fine tradeof) and has better +> performance and scalability with number of CPUs. + +**[v26: net-next: Device Memory TCP](http://lore.kernel.org/bpf/20240910171458.219195-1-almasrymina@google.com/)** + +**[v2: HID: HID: bpf: add a new hook to control hid-generic](http://lore.kernel.org/bpf/20240910-hid-bpf-hid-generic-v2-0-083dfc189e97@kernel.org/)** + +> This is a slight change from the fundamentals of HID-BPF. +> In theory, HID-BPF is abstract to the kernel itself, and makes +> only changes at the HID level (through report descriptors or +> events emitted to/from the device). + +**[[v3 PATCH bpf-next 0/2] bpf: Add percpu map value size check](http://lore.kernel.org/bpf/20240910144111.1464912-1-chen.dylane@gmail.com/)** + +> Check percpu map value size first and add the test case in selftest. + +**[v4: net-next: net: ethernet: ti: am65-cpsw: Add multi queue RX support](http://lore.kernel.org/bpf/20240910-am65-cpsw-multi-rx-v4-0-077fa6403043@kernel.org/)** + +> This series adds multi-queue support. + +**[v1: arm64: uprobes: Simulate STP for pushing fp/lr into user stack](http://lore.kernel.org/bpf/20240910060407.1427716-1-liaochang1@huawei.com/)** + +> This patch is the second part of a series to improve the selftest bench +> of uprobe/uretprobe [0]. The lack of simulating 'stp fp, lr, [sp, #imm]' +> significantly impact uprobe/uretprobe performance at function entry in +> most user cases. + +**[v1: SRCU-protected uretprobes hot path](http://lore.kernel.org/bpf/20240909224903.3498207-1-andrii@kernel.org/)** + + +> This patch set adds return uprobe (uretprobe) side of this, this time +> utilizing SRCU for the same reasons. Given the time between entry uprobe +> activation (at which point uretprobe code hijacks user-space stack to get +> activated on user function return) and uretprobe activation can be arbitrarily +> long and is completely under control of user code, we need to protect +> ourselves from too long or unbounded SRCU grace periods. + +**[v1: bpf: devmap: allow for repeated redirect](http://lore.kernel.org/bpf/20240909-devel-koalo-fix-redirect-v1-1-2dd90771146c@linutronix.de/)** + +> Currently, returning XDP_REDIRECT from a xdp/devmap program +> is considered as invalid action and an exception is traced. + +### 周边技术动态 + +#### Qemu + +**[v6: bsd-user: Comprehensive RISCV Support](http://lore.kernel.org/qemu-devel/20240915152554.8394-1-itachis@FreeBSD.org/)** + +> Key Changes Compared to Version 5: +> In target_arch_sigtramp.h removed static const, +> as there was a compile-time constant issue + +**[v14: riscv support for control flow integrity extensions](http://lore.kernel.org/qemu-devel/20240912235320.3768582-1-debug@rivosinc.com/)** + +> v14 for riscv zicfilp and zicfiss extensions support in qemu. + +**[v1: target/riscv: Add support for Smdbltrp and Ssdbltrp extensions](http://lore.kernel.org/qemu-devel/20240912084832.2906991-1-cleger@rivosinc.com/)** + +> This series adds support for Ssdbltrp and Smdbltrp ratified ISA +> extensions. It is based on the Smrnmi series. + +**[v1: riscv-to-apply queue](http://lore.kernel.org/qemu-devel/20240912052953.2552501-1-alistair.francis@wdc.com/)** + +> The following changes since commit a4eb31c678400472de0b4915b9154a7c20d8332f: +> Merge tag 'pull-testing-gdbstub-oct-100924-1' of https://gitlab.com/stsquad/qemu into staging (2024-09-11 13:17:29 +0100) + +**[v4: tcg/riscv: Add support for vector](http://lore.kernel.org/qemu-devel/20240911132630.461-1-zhiwei_liu@linux.alibaba.com/)** + +> This patch set introduces support for the RISC-V vector extension +> in TCG backend for RISC-V targets. + +**[v1: target/riscv: Add support for machine specific pmu's events](http://lore.kernel.org/qemu-devel/20240910174747.148141-1-alexei.filippov@syntacore.com/)** + +> Following original patch [1] here's a patch with support of machine +> specific pmu events and PoC with initial support for sifive_u's HPM. + +#### U-Boot + +**[v2: riscv: Add AST2700 platform support](http://lore.kernel.org/u-boot/20240910093920.1142455-1-chiawei_wang@aspeedtech.com/)** + +> AST2700 is the 7th generation of Aspeed BMC SoCs. + +**[U-Boot SPL crashes after stack setup](http://lore.kernel.org/u-boot/CAMhyRsC9TQ0qOSPG2acjnjH+QbWkYd7ATpyH1Z9KJ2wAXZcsyg@mail.gmail.com/)** + +> I am having a crash with u-boot-spl simulated in spike, to be more spesific +> the problem occurs after this line located in start.S. + + + ## 20240908:第 108 期 ### 内核动态