diff --git a/_posts/2024-01-16-18-05-03-rvlwn-74.md b/_posts/2024-01-16-18-05-03-rvlwn-74.md
new file mode 100644
index 000000000..5b45caf28
--- /dev/null
+++ b/_posts/2024-01-16-18-05-03-rvlwn-74.md
@@ -0,0 +1,1131 @@
+---
+layout: weekly
+author: '呀呀呀'
+title: 'RISC-V Linux 内核及周边技术动态第 74 期'
+draft: false
+group: 'news'
+album: 'RISC-V Linux'
+license: 'cc-by-nc-nd-4.0'
+permalink: /rvlwn-74/
+description: 'RISC-V Linux 内核及周边技术动态第 74 期'
+category:
+ - 开源项目
+ - Risc-V
+tags:
+ - Linux
+ - RISC-V
+---
+
+> 时间:20240114
+> 编辑:晓怡
+> 仓库:[RISC-V Linux 内核技术调研活动](https://gitee.com/tinylab/riscv-linux)
+> 赞助:PLCT Lab, ISCAS
+
+## 内核动态
+
+### RISC-V 架构支持
+
+**[v6: riscv: sophgo: add clock support for Sophgo CV1800/SG2000 SoCs](http://lore.kernel.org/linux-riscv/IA1PR20MB4953C774D41EDF1EADB6EC18BB6D2@IA1PR20MB4953.namprd20.prod.outlook.com/)**
+
+> Add clock controller support for the Sophgo CV1800B, CV1812H and SG2000.
+>
+> Changed from v5:
+> 1. rebased to mainline master tree
+> 2. add SG2000 clock support.
+> 3. fix document link
+>
+
+**[v7: riscv: Create and document PR_RISCV_SET_ICACHE_FLUSH_CTX prctl](http://lore.kernel.org/linux-riscv/20240112-fencei-v7-0-78f0614e1db0@rivosinc.com/)**
+
+> Improve the performance of icache flushing by creating a new prctl flag
+> PR_RISCV_SET_ICACHE_FLUSH_CTX. The interface is left generic to allow
+> for future expansions such as with the proposed J extension [1].
+>
+
+**[GIT PULL: RISC-V Patches for the 6.8 Merge Window, Part 1](http://lore.kernel.org/linux-riscv/mhng-9a7c8503-91d4-4b92-a594-964a5983ecab@palmer-ri-x1c9/)**
+
+> The following changes since commit ed5b7cfd7839f9280a63365c1133482b42d0981f:
+>
+> riscv: errata: andes: Probe for IOCP only once in boot stage (2023-12-06 07:18:58 -0800)
+>
+> are available in the Git repository at:
+>
+> git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux.git tags/riscv-for-linus-6.8-mw1
+>
+
+**[v2: riscv: add support for SBI Supervisor Software Events](http://lore.kernel.org/linux-riscv/20240112111720.2975069-1-cleger@rivosinc.com/)**
+
+> The SBI Supervisor Software Events (SSE) extensions provides a mechanism
+> to inject software events from an SBI implementation to supervisor
+> software such that it preempts all other supervisor level traps and
+> interrupts [1].
+>
+
+**[v1: -next: RISC-V: ACPI: Add LPI support](http://lore.kernel.org/linux-riscv/20240111093058.121838-1-sunilvl@ventanamicro.com/)**
+
+> This series adds support for Low Power Idle (LPI) on ACPI based
+> platforms.
+>
+> LPI is described in the ACPI spec [1]. RISC-V FFH spec required to
+> enable this is available at [2].
+>
+
+**[v2: Add StarFive JH8100 dwmac support](http://lore.kernel.org/linux-riscv/20240111025531.2875-1-chunhau.tan@starfivetech.com/)**
+
+> Add StarFive JH8100 dwmac support.
+> JH8100 dwmac has one reset signal instead of 2 resets as in JH7110.
+>
+
+**[v1: clk: thead: add support for T-HEAD TH1520 AP clock controller](http://lore.kernel.org/linux-riscv/20240110-clk-th1520-v1-0-8b0682567984@tenstorrent.com/)**
+
+> This series adds support for the AP sub system clock controller in the
+> T-HEAD TH1520. This include CPU, DPU, GMAC and TEE PLLs.
+>
+> Yangtao Li originally submitted this series back in May [1]. Jisheng
+> made additional improvements and then passed on the work in progress to
+> me. The driver code is cleaner than the version in the T-Head SDK [2].
+>
+
+**[v3: Basic clock and reset support for StarFive JH8100 RISC-V SoC](http://lore.kernel.org/linux-riscv/20240110133128.286657-1-jeeheng.sia@starfivetech.com/)**
+
+> This patch series enabled basic clock & reset support for StarFive
+> JH8100 SoC.
+>
+> This patch series depends on the Initial device tree support for
+> StarFive JH8100 SoC patch series which can be found at [1].
+>
+> As it is recommended to refrain from merging fundamental patches like
+> Device Tree, Clock & Reset, and PINCTRL tested on FPGA/Emulator, into the
+> RISC-V Mainline, this patch series has been renamed to "RFC" patches. Yet,
+> thanks to the reviewers who have reviewed the patches at [2]. The changes
+> are captured below.
+>
+
+**[v7: Support Andes PMU extension](http://lore.kernel.org/linux-riscv/20240110073917.2398826-1-peterlin@andestech.com/)**
+
+> This patch series introduces the Andes PMU extension, which serves
+> the same purpose as Sscofpmf. To use FDT-based probing for hardware
+> support of the PMU extensions and introduce Andes PMU alternatives,
+> we first convert T-Head's PMU to CPU feature alternative.
+>
+
+**[v1: RISC-V: only flush icache when it has VM_EXEC set](http://lore.kernel.org/linux-riscv/tencent_6D851035F6F2FD0B5A69FB391AE39AC6300A@qq.com/)**
+
+> As I-Cache flush on current RISC-V needs to send IPIs to every CPU cores
+> in the system is very costly, limiting flush_icache_mm to be called only
+> when vma->vm_flags has VM_EXEC can help minimize the frequency of these
+> operations. It improves performance and reduces disturbances when
+> copy_from_user_page is needed such as profiling with perf.
+>
+
+**[v1: Refactor CONFIG_DEBUG_WX and check_wx_pages debugfs attribute](http://lore.kernel.org/linux-riscv/cover.1704800524.git.christophe.leroy@csgroup.eu/)**
+
+> Refer old discussion at https://lore.kernel.org/lkml/20200422152656.GF676@willie-the-truck/T/#m802eaf33efd6f8d575939d157301b35ac0d4a64f
+> And https://github.com/KSPP/linux/issues/35
+>
+> This series refactors CONFIG_DEBUG_WX for the 5 architectures
+> implementing CONFIG_GENERIC_PTDUMP
+>
+> First rename stuff in ARM which uses similar names while not
+> implementing CONFIG_GENERIC_PTDUMP.
+>
+
+**[v1: riscv: sophgo: add reset support for SG2042](http://lore.kernel.org/linux-riscv/cover.1704790558.git.unicorn_wang@outlook.com/)**
+
+> This series adds reset controller support for Sophgo SG2042 using
+> reset-simple driver.
+>
+
+**[v15: riscv: Add fine-tuned checksum functions](http://lore.kernel.org/linux-riscv/20240108-optimize_checksum-v15-0-1c50de5f2167@rivosinc.com/)**
+
+> Each architecture generally implements fine-tuned checksum functions to
+> leverage the instruction set. This patch adds the main checksum
+> functions that are used in networking. Tested on QEMU, this series
+> allows the CHECKSUM_KUNIT tests to complete an average of 50.9% faster.
+>
+
+**[v2: riscv: Add support for BATCHED_UNMAP_TLB_FLUSH](http://lore.kernel.org/linux-riscv/20240108193640.344929-1-alexghiti@rivosinc.com/)**
+
+> Allow to defer the flushing of the TLB when unmapping pages, which allows
+> to reduce the numbers of IPI and the number of sfence.vma.
+>
+
+**[v14: Refactoring Microchip PCIe driver and add StarFive PCIe](http://lore.kernel.org/linux-riscv/20240108110612.19048-1-minda.chen@starfivetech.com/)**
+
+> This patchset final purpose is add PCIe driver for StarFive JH7110 SoC.
+> JH7110 using PLDA XpressRICH PCIe IP. Microchip PolarFire Using the
+> same IP and have commit their codes, which are mixed with PLDA
+> controller codes and Microchip platform codes.
+>
+
+**[回复: 回复: v13: Refactoring Microchip PCIe driver and add StarFive PCIe](http://lore.kernel.org/linux-riscv/ZQ0PR01MB098182407F5F427D9A6C7CD9826BA@ZQ0PR01MB0981.CHNPR01.prod.partner.outlook.cn/)**
+
+> Before doing this refactoring, we encountered the same bug with Kingston M.2 SSD,
+> and we workaround the problem with the below patch, please have a try:
+>
+
+**[v7: riscv: sophgo: add clock support for sg2042](http://lore.kernel.org/linux-riscv/cover.1704694903.git.unicorn_wang@outlook.com/)**
+
+> This series adds clock controller support for sophgo sg2042.
+>
+
+### 进程调度
+
+**[v3: net/sched: Load modules via alias](http://lore.kernel.org/lkml/20240112180646.13232-1-mkoutny@suse.com/)**
+
+> These modules may be loaded lazily without user's awareness and
+> control. Add respective aliases to modules and request them under these
+> aliases so that modprobe's blacklisting mechanism (through aliases)
+> works for them. (The same pattern exists e.g. for filesystem
+> modules.)
+>
+
+**[v1: Revert "sched/cpufreq: Rework schedutil governor performance estimation" and dependent commit](http://lore.kernel.org/lkml/ZaBUFETV53cRF7RB@gmail.com/)**
+
+> > if the fix that i proposed doesn't work:
+> > https://lore.kernel.org/all/ZZ+ixagkxRPYyTCE@vingu-book/
+>
+> Yeah - although of course Linus is free to just pull the revert as well.
+> I'll try to reproduce the regression locally as well.
+>
+
+### 内存管理
+
+**[v11: mm/gup: Introduce memfd_pin_folios() for pinning memfd folios](http://lore.kernel.org/linux-mm/20240113065223.1532987-1-vivek.kasireddy@intel.com/)**
+
+> Currently, some drivers (e.g, Udmabuf) that want to longterm-pin
+> the pages/folios associated with a memfd, do so by simply taking a
+> reference on them. This is not desirable because the pages/folios
+> may reside in Movable zone or CMA block.
+>
+> Therefore, having drivers use memfd_pin_folios() API ensures that
+> the folios are appropriately pinned via FOLL_PIN for longterm DMA.
+>
+
+**[GIT PULL: percpu changes for v6.8-rc1](http://lore.kernel.org/linux-mm/ZaHRiNj3biQBaSKr@snowbird/)**
+
+> This enables the percpu page allocator for risc-v as a fallback path.
+>
+> Separately, I just sent out a respin of Thomas' cpu hotplug related fixes
+> for percpu_counters in [1]. I'll hopefully pull that in shortly and get
+> it into for-next for some wider testing.
+>
+
+**[v2: 0/3: lib/percpu_counter, cpu/hotplug: Cure the cpu_dying_mask woes](http://lore.kernel.org/linux-mm/cover.1705101789.git.dennis@kernel.org/)**
+
+> This is a respin of Thomas' series [1] against v6.7-rc4. Largely it's
+> the same minus a slight change in percpu_counter.c for batch
+> percpu_counters and updating __percpu_counter_limited_add().
+>
+
+**[v1: mm/mempolicy: weighted interleave mempolicy with sysfs extension](http://lore.kernel.org/linux-mm/20240112210834.8035-1-gregory.price@memverge.com/)**
+
+> Weighted interleave is a new interleave policy intended to make
+> use of heterogeneous memory environments appearing with CXL.
+>
+> The existing interleave mechanism does an even round-robin
+> distribution of memory across all nodes in a nodemask, while
+> weighted interleave distributes memory across nodes according
+> to a provided weight. (Weight = # of page allocations per round)
+>
+
+**[v1: mm: z3fold: rename CONFIG_Z3FOLD to CONFIG_Z3FOLD_DEPRECATED](http://lore.kernel.org/linux-mm/20240112193103.3798287-1-yosryahmed@google.com/)**
+
+> The z3fold compressed pages allocator is not widely used, most users use
+> zsmalloc. The only disadvantage of zsmalloc in comparison is the
+> dependency on MMU, and zbud is a more common option for !MMU as it was
+> the default zswap allocator for a long time.
+>
+
+**[v1: mm/compaction: Reduce unnecessary loops](http://lore.kernel.org/linux-mm/20240112073524.80724-1-libang.li@antgroup.com/)**
+
+> Compaction will be triggered when we write 1 to '/proc/sys/vm/
+> compact_memory'. During the execution of the process, when we send
+> SIGKILL to terminate the compaction, the process does not exit
+> immediately. Instead, it will continue to loop through the remaining
+> zones and nodes before exiting.
+>
+
+**[v6: Introduce mseal()](http://lore.kernel.org/linux-mm/20240111234142.2944934-1-jeffxu@chromium.org/)**
+
+> This patchset proposes a new mseal() syscall for the Linux kernel.
+>
+> In a nutshell, mseal() protects the VMAs of a given virtual memory
+> range against modifications, such as changes to their permission bits.
+>
+
+**[v1: Convert memcontrol charge moving to use folios](http://lore.kernel.org/linux-mm/20240111181219.3462852-1-willy@infradead.org/)**
+
+> No part of these patches should change behaviour; all the called functions
+> already convert from page to folio, so this ought to simply be a reduction
+> in the number of calls to compound_head().
+>
+
+**[v1: mm/filemap: Allow arch to request folio size for exec memory](http://lore.kernel.org/linux-mm/20240111154106.3692206-1-ryan.roberts@arm.com/)**
+
+> Change the readahead config so that if it is being requested for an
+> executable mapping, do a synchronous read of an arch-specified size in a
+> naturally aligned manner.
+>
+
+**[v3: mm: convert mm counter to take a folio](http://lore.kernel.org/linux-mm/20240111152429.3374566-1-willy@infradead.org/)**
+
+> Make sure all mm_counter() and mm_counter_file() callers have a folio,
+> then convert mm counter functions to take a folio, which saves some
+> compound_head() calls.
+>
+
+**[v4: -next: minor improvements for x86 mce processing](http://lore.kernel.org/linux-mm/20240111135548.3207437-1-tongtiangen@huawei.com/)**
+
+> In this patchset, we remove the unused macro EX_TYPE_COPY and centralize
+> the processing of memory-failure to do_machine_check() to avoid calling
+> memory_failure_queue() separately for different MC-Safe scenarios. In
+> addition, MCE_IN_KERNEL_COPYIN is renamed MCE_IN_KERNEL_COPY_MC to expand
+> its usage scope.
+>
+
+**[v1: mm: memcontrol: don't throttle dying tasks on memory.high](http://lore.kernel.org/linux-mm/20240111132902.389862-1-hannes@cmpxchg.org/)**
+
+> While investigating hosts with high cgroup memory pressures, Tejun
+> found culprit zombie tasks that had were holding on to a lot of
+> memory, had SIGKILL pending, but were stuck in memory.high reclaim.
+>
+
+**[v5: cxl: Add support for CXL feature commands, CXL device patrol scrub control and DDR5 ECS control features](http://lore.kernel.org/linux-mm/20240111131741.1356-1-shiju.jose@huawei.com/)**
+
+> 1. Add support for CXL feature mailbox commands.
+> 2. Add CXL device scrub driver supporting patrol scrub control and ECS
+> control features.
+> 3. Add scrub subsystem driver supports configuring memory scrubs in the system.
+> 4. Register CXL device patrol scrub and ECS with scrub subsystem.
+> 5. Add common library for RASF and RAS2 PCC interfaces.
+> 6. Add driver for ACPI RAS2 feature table (RAS2).
+> 7. Add memory RAS2 driver and register with scrub subsystem.
+>
+
+**[v1: *** SUBJECT HERE ***](http://lore.kernel.org/linux-mm/20240111122451.682-1-justinjiang@vivo.com/)**
+
+> *** BLURB HERE ***
+>
+> mode change 100644 => 100755 include/linux/swap.h
+> mode change 100644 => 100755 mm/vmscan.c
+> mode change 100644 => 100755 mm/workingset.c
+>
+
+**[v1: mm/mmap: introduce vma_range_init()](http://lore.kernel.org/linux-mm/20240111021526.3461825-1-yajun.deng@linux.dev/)**
+
+> There is a lot of code needs to set the range of vma, introduce
+> vma_range_init() to initialize the range of vma.
+>
+
+**[v2: tools/mm: Add thpmaps script to dump THP usage info](http://lore.kernel.org/linux-mm/20240110173203.3419437-1-ryan.roberts@arm.com/)**
+
+> With the proliferation of large folios for file-backed memory, and more
+> recently the introduction of multi-size THP for anonymous memory, it is
+> becoming useful to be able to see exactly how large folios are mapped
+> into processes. For some architectures (e.g. arm64), if most memory is
+> mapped using contpte-sized and -aligned blocks, TLB usage can be
+> optimized so it's useful to see where these requirements are and are not
+> being met.
+>
+
+**[v1: support tmpfs hugepage PMD is not split when COW](http://lore.kernel.org/linux-mm/20240110092028.1777-1-chenhaixiang3@huawei.com/)**
+
+> Transparent hugepages in tmpfs can enhance TLB efficiency by reducing
+> TLB misses. However, during Copy-On-Write (COW) memory faults, these
+> hugepages may be split. In some scenarios, preventing this splitting
+> is desirable. We might introduce a shmem_huge_fault to inhibit this
+> behavior, along with a mount parameter to enable or disable this function.
+>
+
+**[v1: mm/mmap: simplify vma link and unlink](http://lore.kernel.org/linux-mm/20240110084622.2425927-1-yajun.deng@linux.dev/)**
+
+> The file parameter in the __remove_shared_vm_struct is no longer used,
+> remove it.
+>
+> These functions vma_link() and mmap_region() have some of the same code,
+> introduce vma_link_file() helper function to simplify the code.
+>
+
+**[v1: mm: kasan: avoid resetting aux_lock](http://lore.kernel.org/linux-mm/20240109221234.90929-1-andrey.konovalov@linux.dev/)**
+
+> With commit 63b85ac56a64 ("kasan: stop leaking stack trace handles"),
+> KASAN zeroes out alloc meta when an object is freed. The zeroed out data
+> purposefully includes alloc and auxiliary stack traces but also
+> accidentally includes aux_lock.
+>
+
+**[v16: Drivers for Gunyah hypervisor](http://lore.kernel.org/linux-mm/20240109-gunyah-v16-0-634904bf4ce9@quicinc.com/)**
+
+> Gunyah is a Type-1 hypervisor independent of any high-level OS kernel,
+> and runs in a higher CPU privilege level. It does not depend on any
+> lower-privileged OS kernel/code for its core functionality. This
+> increases its security and can support a much smaller trusted computing
+> base than a Type-2 hypervisor. Gunyah is designed for isolated virtual
+> machine use cases and to support launching trusted+isolated virtual
+> machines from a relatively less trusted host virtual machine.
+>
+
+**[v1: netfs, afs, erofs, cifs: Don't use certain internal folio_*() functions](http://lore.kernel.org/linux-mm/20240109180117.1669008-1-dhowells@redhat.com/)**
+
+> Here are some patches that replace the use of folio_index(),
+> folio_mapping() and folio_file_mapping() in some filesystem code. I'll add
+> them to my netfs-lib branch.
+>
+
+**[v1: netfs, cachefiles: More additional patches](http://lore.kernel.org/linux-mm/20240109112029.1572463-1-dhowells@redhat.com/)**
+
+> Here are some additional patches for my netfs-lib tree:
+>
+> (1) Mark netfs_unbuffered_write_iter_locked() static as it's only used in
+> the file in which it is defined.
+>
+> (2) Display a counter for DIO writes in /proc/fs/netfs/stats.
+>
+> (3) Fix the interaction between write-streaming (dirty data in
+> non-uptodate pages) and the culling of a cache file trying to write
+> that to the cache.
+>
+
+**[v1: mm, oom: Add lru_add_drain() in __oom_reap_task_mm()](http://lore.kernel.org/linux-mm/20240109091511.8299-1-jianfeng.w.wang@oracle.com/)**
+
+> The oom_reaper tries to reclaim additional memory owned by the oom
+> victim. In __oom_reap_task_mm(), it uses mmu_gather for batched page
+> free. After oom_reaper was added, mmu_gather feature introduced
+> CONFIG_MMU_GATHER_NO_GATHER (in 'commit 952a31c9e6fa ("asm-generic/tlb:
+> Introduce CONFIG_HAVE_MMU_GATHER_NO_GATHER=y")', an option to skip batched
+> page free. If set, tlb_batch_pages_flush(), which is responsible for
+> calling lru_add_drain(), is skipped during tlb_finish_mmu(). Without it,
+> pages could still be held by per-cpu fbatches rather than be freed.
+>
+
+**[v1: efi: Disable mirror feature during crashkernel](http://lore.kernel.org/linux-mm/20240109041536.3903042-1-mawupeng1@huawei.com/)**
+
+> If system have no mirrored memory or use crashkernel.high while
+> kernelcore=mirror is enabled in cmdline, during crashkernel,
+> there will be limited mirrored memory and this usually lead to
+> OOM.
+>
+
+**[v6: implement "memmap on memory" feature on s390](http://lore.kernel.org/linux-mm/20240108132747.3238763-1-sumanthk@linux.ibm.com/)**
+
+> This series provides "memmap on memory" support on s390 platform.
+> "memmap on memory" allows struct pages array to be allocated from the
+> hotplugged memory range instead of allocating it from main system
+> memory.
+>
+
+**[v1: -next: mm/filemap: avoid type conversion](http://lore.kernel.org/linux-mm/20240108044815.3291487-1-lihongbo22@huawei.com/)**
+
+> The return type of function folio_test_hugetlb is bool type, there is no
+> need to assign it to an integer type.
+>
+
+### 文件系统
+
+**[v2: netfs, fscache: Prevent Oops in fscache_put_cache()](http://lore.kernel.org/linux-fsdevel/e84bc740-3502-4f16-982a-a40d5676615c@moroto.mountain/)**
+
+> This function dereferences "cache" and then checks if it's
+> IS_ERR_OR_NULL(). Check first, then dereference.
+>
+
+**[Reply: v1: fuse: use page cache pages for writeback io when virtio_fs is in use](http://lore.kernel.org/linux-fsdevel/SI2PR06MB5385503F984A59B9E8382D37FF6F2@SI2PR06MB5385.apcprd06.prod.outlook.com/)**
+
+> Any comments about this RFC patch? Thanks.
+>
+> Regards,
+> Lege.wang
+>
+
+**[v3: Set casefold/fscrypt dentry operations through sb->s_d_op](http://lore.kernel.org/linux-fsdevel/20240111225816.18117-1-krisman@suse.de/)**
+
+> Thank you, Eric and Al, for your feedback on the previous version.
+>
+> This version has some big changes: instead of only configuring on the
+> case-insensitive case, we do it for case-sensitive fscrypt as well, and
+> disable d_revalidate as needed. This pretty much reverses the way
+> fscrypt operated (only enable d_revalidate for dentries that require
+> it), but has the advantage we can be consistent among variations of
+> case-insensitive/sensitive, encrypted/unencrypted configurations.
+>
+
+**[v1: filemap: Convert generic_perform_write() to support large folios](http://lore.kernel.org/linux-fsdevel/20240111192513.3505769-1-willy@infradead.org/)**
+
+> Modelled after the loop in iomap_write_iter(), copy larger chunks from
+> userspace if the filesystem has created large folios.
+>
+
+**[v2: fsnotify: optimize the case of no content event watchers](http://lore.kernel.org/linux-fsdevel/20240111152233.352912-1-amir73il@gmail.com/)**
+
+> Commit e43de7f0862b ("fsnotify: optimize the case of no marks of any type")
+> optimized the case where there are no fsnotify watchers on any of the
+> filesystem's objects.
+>
+> It is quite common for a system to have a single local filesystem and
+> it is quite common for the system to have some inotify watches on some
+> config files or directories, so the optimization of no marks at all is
+> often not in effect.
+>
+
+**[git pull: vfs.git misc pile](http://lore.kernel.org/linux-fsdevel/20240111102141.GY1674809@ZenIV/)**
+
+> The following changes since commit b85ea95d086471afb4ad062012a4d73cd328fa86:
+>
+> Linux 6.7-rc1 (2023-11-12 16:19:07 -0800)
+>
+> are available in the Git repository at:
+>
+> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-misc
+>
+
+**[git pull: dcache stuff](http://lore.kernel.org/linux-fsdevel/20240111102111.GX1674809@ZenIV/)**
+
+> The following changes since commit 4a0b33f771db2b82fdfad08b9f34def786162865:
+>
+> selinux: saner handling of policy reloads (2023-11-16 12:45:33 -0500)
+>
+> are available in the Git repository at:
+>
+> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-dcache
+>
+
+**[git pull: vfs.git minixfs series](http://lore.kernel.org/linux-fsdevel/20240111101634.GV1674809@ZenIV/)**
+
+> The following changes since commit b85ea95d086471afb4ad062012a4d73cd328fa86:
+>
+> Linux 6.7-rc1 (2023-11-12 16:19:07 -0800)
+>
+> are available in the Git repository at:
+>
+> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-minix
+>
+> for you to fetch changes up to 41e9a7faff514fcb2d4396b0ffde30386a153c7f:
+>
+
+**[v1: eventfd: add a BUILD_BUG_ON() to ensure consistency between EFD_SEMAPHORE and the uapi](http://lore.kernel.org/linux-fsdevel/tencent_0BAA2DEAF9208D49987457E6583F9BE79507@qq.com/)**
+
+> introduce a BUILD_BUG_ON to check that the EFD_SEMAPHORE is equal to its
+> definition in the uapi file, just like EFD_CLOEXEC and EFD_NONBLOCK.
+>
+
+**[v1: fsnotify: optimize the case of no access event watchers](http://lore.kernel.org/linux-fsdevel/20240109194818.91465-1-amir73il@gmail.com/)**
+
+> Commit e43de7f0862b ("fsnotify: optimize the case of no marks of any type")
+> optimized the case where there are no fsnotify watchers on any of the
+> filesystem's objects.
+>
+> It is quite common for a system to have a single local filesystem and
+> it is quite common for the system to have some inotify watches on some
+> config files or directories, so the optimization of no marks at all is
+> often not in effect.
+>
+
+**[v1: fsnotify: compile out fsnotify permission hooks if !FANOTIFY_ACCESS_PERMISSIONS](http://lore.kernel.org/linux-fsdevel/20240109182245.38884-1-amir73il@gmail.com/)**
+
+> The depency of FANOTIFY_ACCESS_PERMISSIONS on SECURITY made sure that
+> the fsnotify permission hooks were never called when SECURITY was
+> disabled.
+>
+
+**[v1: netfs, afs, erofs, cifs: Don't use certain internal folio_*() functions](http://lore.kernel.org/linux-fsdevel/20240109180117.1669008-1-dhowells@redhat.com/)**
+
+> Here are some patches that replace the use of folio_index(),
+> folio_mapping() and folio_file_mapping() in some filesystem code. I'll add
+> them to my netfs-lib branch.
+>
+
+**[v1: Revert "fsnotify: optionally pass access range in file permission hooks"](http://lore.kernel.org/linux-fsdevel/53682ece-f0e7-48de-9a1c-879ee34b0449@kernel.dk/)**
+
+> This commit added an extra fsnotify call from rw_verify_area(), which
+> can be a very hot path. In my testing, this adds roughly 5-6% extra
+> overhead per IO, which is quite a lot. As a result, throughput of
+> said test also drops by 5-6%, as it is CPU bound. Looking at perf,
+> it's apparent why:
+>
+> which directly correlates with performance lost.
+>
+
+**[GIT PULL: sysctl changes for v6.8-rc1](http://lore.kernel.org/linux-fsdevel/ZZ1aMZdS5GK1tEfn@bombadil.infradead.org/)**
+
+> The following changes since commit 861deac3b092f37b2c5e6871732f3e11486f7082:
+>
+> Linux 6.7-rc7 (2023-12-23 16:25:56 -0800)
+>
+> are available in the Git repository at:
+>
+> git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/ tags/sysctl-6.8-rc1
+>
+> for you to fetch changes up to 561429807d50aad76f1205b0b1d7b4aacf365d4e:
+>
+> sysctl: remove struct ctl_path (2023-12-28 05:02:42 -0800)
+>
+
+**[v2: Improve buffer head documentation](http://lore.kernel.org/linux-fsdevel/20240109143357.2375046-1-willy@infradead.org/)**
+
+> Turn buffer head documentation into its own document, and make many
+> general improvements to the docs. Obviously there is much more that
+> could be done. Tested with make htmldocs.
+>
+
+**[v1: Enable tmpfs quotas](http://lore.kernel.org/linux-fsdevel/20240109134651.869887-1-cem@kernel.org/)**
+
+> This series enable quota tools to manage tmpfs user/group quotas now the kernel
+> support is released in 6.6.
+>
+> Honza, this is just a RFC as I'd like to know your input on the approach used
+> here.
+>
+
+**[v1: fs/proc/task_mmu: move mmu notification mechanism inside mm lock](http://lore.kernel.org/linux-fsdevel/20240109112445.590736-1-usama.anjum@collabora.com/)**
+
+> Move mmu notification mechanism inside mm lock to prevent race condition
+> in other components which depend on it. The notifier will invalidate
+> memory range. Depending upon the number of iterations, different memory
+> ranges would be invalidated.
+>
+
+**[v4: fuse: Add support for resend pending requests](http://lore.kernel.org/linux-fsdevel/20240109092443.519460-1-winters.zc@antgroup.com/)**
+
+> After the FUSE daemon crashes, the fuse mount point becomes inaccessible.
+> In some production environments, a watchdog daemon is used to preserve
+> the FUSE connection's file descriptor (fd). When the FUSE daemon crashes,
+> a new FUSE daemon is started and takes over the fd from the watchdog
+> daemon, allowing it to continue providing services.
+>
+
+**[v1: fs: Wrong function name in comment](http://lore.kernel.org/linux-fsdevel/20240108172040.178173-1-agruenba@redhat.com/)**
+
+> This comment refers to function mark_buffer_inode_dirty(), but the
+> function is actually called mark_buffer_dirty_inode(), so fix the
+> comment.
+>
+
+**[GIT PULL: fsnotify changes for 6.8-rc1](http://lore.kernel.org/linux-fsdevel/20240108140746.viajl65blnibbyjf@quack3/)**
+
+> git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs.git fsnotify_for_v6.8-rc1
+>
+> to get fanotify changes allowing use of fanotify directory events even for
+> filesystems such as FUSE which don't report proper fsid.
+>
+
+**[v1: fuse: basic support for idmapped mounts](http://lore.kernel.org/linux-fsdevel/20240108120824.122178-1-aleksandr.mikhalitsyn@canonical.com/)**
+
+> Dear friends,
+>
+> This patch series aimed to provide support for idmapped mounts
+> for fuse. We already have idmapped mounts support for almost all
+> widely-used filesystems:
+> * local (ext4, btrfs, xfs, fat, vfat, ntfs3, squashfs, f2fs, erofs, ZFS (out-of-tree))
+> * network (ceph)
+>
+
+**[v1: netfs: use kfree_sensitive() instend of kfree() in fscache_free_cookie()](http://lore.kernel.org/linux-fsdevel/20240108112713.20533-1-duminjie@vivo.com/)**
+
+> key might contain private information, so use kfree_sensitive to free it.
+> In fscache_free_cookie() use kfree_sensitive().
+>
+
+**[GIT PULL: xfs: new code for 6.8](http://lore.kernel.org/linux-fsdevel/87jzok72py.fsf@debian-BULLSEYE-live-builder-AMD64/)**
+
+> Please pull this branch with changes for xfs for 6.8-rc1.
+>
+> Online repair functionality continues to be expanded. Please refer to the
+> section "New code for 6.8" for a brief description of changes added to Online
+> repair.
+>
+
+**[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.
+> Earlier, polling task used to sleep, relying on interrupt to wake it up.
+> This made some IO take very long when interrupt-coalescing is enabled in
+> NVMe.
+>
+
+### 网络设备
+
+**[v1: iproute2: ss: show extra info when '--processes' is not used](http://lore.kernel.org/netdev/20240113-ss-fix-ext-col-disabled-v1-1-cf99a7381dec@kernel.org/)**
+
+> A recent modification broke "extra" options for all protocols showing
+> info about the processes when '-p' / '--processes' option was not used
+> as well. In other words, all the additional bits displayed at the end or
+> at the next line were no longer printed if the user didn't ask to show
+> info about processes as well.
+>
+
+**[v1: net-next: MT7530 DSA Subdriver Improvements Act II](http://lore.kernel.org/netdev/20240113102529.80371-1-arinc.unal@arinc9.com/)**
+
+> I'm submitting this to receive reviews while net-next is closed.
+>
+
+**[v1: net-next: net: dsa: mt7530: support OF-based registration of switch MDIO bus](http://lore.kernel.org/netdev/20240113093216.42391-1-arinc.unal@arinc9.com/)**
+
+> Currently the MDIO bus of the switches the MT7530 DSA subdriver controls
+> can only be registered as non-OF-based. Bring support for registering the
+> bus OF-based.
+>
+
+**[v2: net: tcp: make sure init the accept_queue's spinlocks once](http://lore.kernel.org/netdev/20240113030739.3446338-1-shaozhengchao@huawei.com/)**
+
+> When the socket receives the ACK packet during the three-way handshake,
+> it will hold spinlock. And then the user actively shutdowns the socket
+> and listens to the socket immediately, the spinlock will be initialized.
+> When the socket is going to release the spinlock, a warning is generated.
+> Also the same issue to fastopenq.lock.
+>
+
+**[v1: wifi: mac80211: tx: Add __must_hold() annotation](http://lore.kernel.org/netdev/20240113011145.10888-2-bpappas@pappasbrent.com/)**
+
+> Annotates ieee80211_set_beacon_cntdwn() with a __must_hold() annotation to
+> make it clear that ieee80211_set_beacon_cntdwn() is only intended to be
+> called when the caller has a lock on the argument "link."
+>
+
+**[v1: vsock/test: add '--peer-port' input argument](http://lore.kernel.org/netdev/20240112212110.1906150-1-avkrasnov@salutedevices.com/)**
+
+> Implement port for given CID as input argument instead of using
+> hardcoded value '1234'. This allows to run different test instances
+> on a single CID. Port argument is not required parameter and if it is
+> not set, then default value will be '1234' - thus we preserve previous
+> behaviour.
+>
+
+**[v4: ss: pretty-printing BPF socket-local storage](http://lore.kernel.org/netdev/20240112140429.183344-1-qde@naccy.de/)**
+
+> BPF allows programs to store socket-specific data using
+> BPF_MAP_TYPE_SK_STORAGE maps. The data is attached to the socket itself,
+> and Martin added INET_DIAG_REQ_SK_BPF_STORAGES, so it can be fetched
+> using the INET_DIAG mechanism.
+>
+
+**[vxlan: how to expose opt-in RFC conformity with unprocessed header flags](http://lore.kernel.org/netdev/db8b9e19-ad75-44d3-bfb2-46590d426ff5@proxmox.com/)**
+
+> Hi!
+>
+> We got a customer that reported an issue where the Linux VXLAN
+> implementation diverges from the RFC, namely when any of the (reserved)
+> flags other than the VNI one is set, the kernel just drops the package.
+>
+
+**[v1: net: nbd: always initialize struct msghdr completely](http://lore.kernel.org/netdev/20240112132657.647112-1-edumazet@google.com/)**
+
+> syzbot complains that msg->msg_get_inq value can be uninitialized [1]
+>
+> struct msghdr got many new fields recently, we should always make
+> sure their values is zero by default.
+>
+
+**[v1: net: add more sanity check in virtio_net_hdr_to_skb()](http://lore.kernel.org/netdev/20240112122816.450197-1-edumazet@google.com/)**
+
+> syzbot/KMSAN reports access to uninitialized data from gso_features_check() [1]
+>
+> The repro use af_packet, injecting a gso packet and hdrlen == 0.
+>
+> We could fix the issue making gso_features_check() more careful
+> while dealing with NETIF_F_TSO_MANGLEID in fast path.
+>
+
+**[v7: RESEND: can: xilinx_can: Add ECC feature support](http://lore.kernel.org/netdev/1705059453-29099-1-git-send-email-srinivas.goud@amd.com/)**
+
+> Add ECC feature support to Tx and Rx FIFOs for Xilinx CAN Controller.
+> ECC is an IP configuration option where counter registers are added in
+> IP for 1bit/2bit ECC errors count and reset.
+> Also driver reports 1bit/2bit ECC errors for FIFOs based on ECC error
+> interrupts.
+>
+
+**[v1: net: sched: track device in tcf_block_get/put_ext() only for clsact binder types](http://lore.kernel.org/netdev/20240112113930.1647666-1-jiri@resnulli.us/)**
+
+> Clsact/ingress qdisc is not the only one using shared block,
+> red is also using it. The device tracking was originally introduced
+> by commit 913b47d3424e ("net/sched: Introduce tc block netdev
+> tracking infra") for clsact/ingress only. Commit 94e2557d086a ("net:
+> sched: move block device tracking into tcf_block_get/put_ext()")
+> mistakenly enabled that for red as well.
+>
+
+**[v1: net: udp: annotate data-races around up->pending](http://lore.kernel.org/netdev/20240112104427.324983-1-edumazet@google.com/)**
+
+> up->pending can be read without holding the socket lock,
+> as pointed out by syzbot [1]
+>
+> Add READ_ONCE() in lockless contexts, and WRITE_ONCE()
+> on write side.
+>
+
+**[v1: iwl-next: i40e: Log FW state in recovery mode](http://lore.kernel.org/netdev/20240112095945.450590-1-jedrzej.jagielski@intel.com/)**
+
+> Introduce logging FW state in recovery mode functionality.
+>
+> 1st patch adds implementation of admin command reading content of alt
+> ram.
+> 2nd patch utilices the command to get trace buffer data and logs it
+> when entering recovery mode.
+>
+
+**[v2: net-next: net: tcp: accept old ack during closing](http://lore.kernel.org/netdev/20240112094603.23706-1-menglong8.dong@gmail.com/)**
+
+> In the case above, simultaneous close is happening, and the FIN and ACK
+> packet that send from the server is out of order. Then, the FIN will be
+> dropped by the client, as it has an old ack. Then, the server has to
+> retransmit the FIN, which can cause delay if the server has set the
+> SO_LINGER on the socket.
+>
+
+**[v1: net: mptcp: better validation of MPTCPOPT_MP_JOIN option](http://lore.kernel.org/netdev/20240111194917.4044654-1-edumazet@google.com/)**
+
+> Based on a syzbot report (see 4th patch in the series).
+>
+> Paolo suggested to do the same for OPTIONS_MPTCP_MPC (5th patch)
+>
+
+**[v1: iproute2: man/tc-mirred: don't recommend modprobe](http://lore.kernel.org/netdev/20240111193451.48833-1-stephen@networkplumber.org/)**
+
+> Use ip link add instead of explicit modprobe.
+> Kernel will do correct module loading if necessary.
+>
+
+**[v1: net: fill in MODULE_DESCRIPTION()s for wx_lib](http://lore.kernel.org/netdev/20240111193311.4152859-1-kuba@kernel.org/)**
+
+> W=1 builds now warn if module is built without a MODULE_DESCRIPTION().
+> Add a description to Wangxun's common code lib.
+>
+
+**[v1: net: wireguard: receive: annotate data-race around receiving_counter.counter](http://lore.kernel.org/netdev/20240111154138.7605-1-n.zhandarovich@fintech.ru/)**
+
+> Syzkaller with KCSAN identified a data-race issue [1] when accessing
+> keypair->receiving_counter.counter.
+>
+
+**[v2: net: dsa: vsc73xx: Add null pointer check to vsc73xx_gpio_probe](http://lore.kernel.org/netdev/20240111072018.75971-1-chentao@kylinos.cn/)**
+
+> devm_kasprintf() returns a pointer to dynamically allocated memory
+> which can be NULL upon failure.
+>
+
+**[v1: iwl-net: i40e: Include types.h to some headers](http://lore.kernel.org/netdev/20240111003927.2362752-1-anthony.l.nguyen@intel.com/)**
+
+> Commit 56df345917c0 ("i40e: Remove circular header dependencies and fix
+> headers") redistributed a number of includes from one large header file
+> to the locations they were needed.
+>
+
+**[v1: selftests/net/tcp-ao: Use LDLIBS instead of LDFLAGS](http://lore.kernel.org/netdev/20240110-tcp_ao-selftests-makefile-v1-1-aa07d043f052@arista.com/)**
+
+> The intel test robot uses only selftest's Makefile, not the top linux
+> Makefile:
+>
+
+**[[net-next RFC PATCH 0/5] net: phy: split at803x](http://lore.kernel.org/netdev/20240110115741.17300-1-ansuelsmth@gmail.com/)**
+
+> This is the last patchset of a long series of cleanup and
+> preparation to make at803x better maintainable and permit
+> the addition of other QCOM PHY Families.
+>
+
+**[v1: Add PPE device tree node for Qualcomm IPQ SoC](http://lore.kernel.org/netdev/20240110112059.2498-1-quic_luoj@quicinc.com/)**
+
+> The PPE(packet process engine) hardware block is supported by Qualcomm
+> IPQ platforms, such as IPQ9574 and IPQ5332. The PPE includes the various
+> packet processing modules such as the routing and bridging flow engines,
+> L2 switch capability, VLAN and tunnels.
+>
+
+**[v8: net-next: Ethernet DWMAC5 fault IRQ support](http://lore.kernel.org/netdev/20240110111649.2256450-1-quic_jsuraj@quicinc.com/)**
+
+> Add support to listen Ethernet HW common safery IRQ for correctable and
+> uncorrectable fault. The safety IRQ will be triggered for ECC(error
+> correction code), DPP(data path parity, FSM(finite state machine) error.
+>
+
+**[v1: net: af_unix: Avoid a wakeup if data has been not arrived](http://lore.kernel.org/netdev/20240110084703.2708053-1-zhongbin@bytedance.com/)**
+
+> In the following scenarios, unnecessary wake-up may occur.
+> When a thread sends a piece of data and then immediately
+> calls recv to wait for the server's data, the server, upon
+> receiving this thread's data, calls back unix_write_space
+> to wake up this thread.
+>
+
+**[v1: net: phy: micrel: reset KSZ9x31 when resuming](http://lore.kernel.org/netdev/20240109205223.40219-1-wsa+renesas@sang-engineering.com/)**
+
+> On a Renesas Ebisu board, the KSZ9031 PHY is stalled after resuming if
+> the interface has not been brought up before suspending. If it had been
+> brought up before, phylib ensures that reset is asserted before
+> suspending.
+>
+
+**[v1: tg3: add new module param to force device power down on reboot](http://lore.kernel.org/netdev/20240109194551.17666-1-andrea.fois@eventsense.it/)**
+
+> The bug #1917471 was fixed in commit 2ca1c94ce0b6 ("tg3: Disable tg3
+> device on system reboot to avoid triggering AER") but was reintroduced
+> by commit 9fc3bc764334 ("tg3: power down device only on
+> SYSTEM_POWER_OFF").
+>
+
+### 安全增强
+
+**[v3: Add device tree for IBM system1 BMC](http://lore.kernel.org/linux-hardening/20240111181251.1817582-1-ninad@linux.ibm.com/)**
+
+> This patchset adds device tree for IBM system1 bmc board.
+>
+
+**[v1: bcachefs: Replace strlcpy() with strscpy()](http://lore.kernel.org/linux-hardening/20240110235438.work.385-kees@kernel.org/)**
+
+> strlcpy() reads the entire source buffer first. This read may exceed
+> the destination size limit. This is both inefficient and can lead
+> to linear read overflows if a source string is not NUL-terminated[1].
+> Additionally, it returns the size of the source string, not the
+> resulting size of the destination string. In an effort to remove strlcpy()
+> completely[2], replace strlcpy() here with strscpy().
+>
+
+**[v1: ARM: unwind: Add missing "Call trace:" line](http://lore.kernel.org/linux-hardening/20240110215554.work.460-kees@kernel.org/)**
+
+> Every other architecture in Linux includes the line "Call trace:" before
+> backtraces. In some cases ARM would print "Backtrace:", but this was
+> only via 1 specific call path, and wasn't included in CPU Oops nor things
+> like KASAN, UBSAN, etc that called dump_stack().
+>
+
+**[v1: Enable PSTORE_RAM as a module in the arm64 defconfig](http://lore.kernel.org/linux-hardening/20240110210600.787703-1-nfraprado@collabora.com/)**
+
+> This series enables the PSTORE_RAM config, aka the ramoops driver, in
+> the defconfig.
+>
+
+**[v2: ASoC: ti: j721e-evm: Use devm_kcalloc() instead of devm_kzalloc()](http://lore.kernel.org/linux-hardening/20240109181101.3806-1-erick.archer@gmx.com/)**
+
+> Use 2-factor multiplication argument form devm_kcalloc() instead
+> of devm_kzalloc().
+>
+
+### 异步 IO
+
+**[v2: io_uring: Adjustments for io_ring_ctx_alloc()](http://lore.kernel.org/io-uring/b9c9ba9f-459e-40b5-ae4b-703dcc03871d@web.de/)**
+
+> Date: Wed, 10 Jan 2024 21:38:12 +0100
+>
+> A few update suggestions were taken into account
+> from static source code analysis.
+>
+
+### Rust For Linux
+
+**[v1: Rust enablement for LoongArch](http://lore.kernel.org/rust-for-linux/20240108032117.215171-1-wangrui@loongson.cn/)**
+
+> Enable Rust support for the LoongArch architecture.
+>
+
+**[GIT PULL: Rust for v6.8](http://lore.kernel.org/rust-for-linux/20240108012055.519813-1-ojeda@kernel.org/)**
+
+> This is the next round of the Rust support.
+>
+> All the commits have been in linux-next for more than a couple weeks,
+> but only for 3 -next tags given the holidays (first one next-20231222).
+>
+> No conflicts expected. No changes to the C side.
+>
+
+### BPF
+
+**[v1: bpf-next: bpf: Minor improvements for bpf_cmp.](http://lore.kernel.org/bpf/20240112220134.71209-1-alexei.starovoitov@gmail.com/)**
+
+> Few minor improvements for bpf_cmp() macro:
+> . reduce number of args in __bpf_cmp()
+> . rename NOFLIP to UNLIKELY
+> . add a comment about 64-bit truncation in "i" constraint
+> . use "ri" constraint for sizeof(rhs) <= 4
+> . improve error message for bpf_cmp_likely()
+>
+
+**[v2: bpf: libbpf: Apply map_set_def_max_entries() for inner_maps on creation](http://lore.kernel.org/bpf/20240112121051.17325-1-conquistador@yandex-team.ru/)**
+
+> Previous behaviour created a zero filled btf_map_def for inner maps and
+> tried to use it for a map creation but the linux kernel forbids to create
+> a BPF_MAP_TYPE_PERF_EVENT_ARRAY map with max_entries=0.
+>
+
+**[RFC: Mark "inlined by some callers" functions in BTF](http://lore.kernel.org/bpf/B653950A-A58F-44C0-AD9D-95370710810F@fb.com/)**
+
+> The user may not realize switch_mm() is inlined by leave_mm(), and we are
+> not tracing the code path leave_mm => switch_mm. (This is x86_64, and both
+> functions are in arch/x86/mm/tlb.c.)
+>
+
+**[v1: bpf: apply map_set_def_max_entries() for inner_maps on creation](http://lore.kernel.org/bpf/20240111191744.20939-1-conquistador@yandex-team.ru/)**
+
+> This patch allows to create BPF_MAP_TYPE_ARRAY_OF_MAPS and
+> BPF_MAP_TYPE_HASH_OF_MAPS with values of BPF_MAP_TYPE_PERF_EVENT_ARRAY.
+>
+
+**[v2: dwarves: pahole: Inject kfunc decl tags into BTF](http://lore.kernel.org/bpf/85caea4c48659502544329e6cd8b41c12ab50dfc.1704929857.git.dxu@dxuuu.xyz/)**
+
+> This commit teaches pahole to parse symbols in .BTF_ids section in
+> vmlinux and discover exported kfuncs. Pahole then takes the list of
+> kfuncs and injects a BTF_KIND_DECL_TAG for each kfunc.
+>
+
+**[v1: bpf-next: bpf, selftests/bpf: Support PTR_MAYBE_NULL for struct_ops arguments.](http://lore.kernel.org/bpf/20240110221750.798813-1-thinker.li@gmail.com/)**
+
+> Allow passing a null pointer to the operators provided by a struct_ops
+> object. This is an RFC to collect feedbacks/opinions.
+>
+
+**[v2: bpf-next: bpf: Add bpf_iter_cpumask](http://lore.kernel.org/bpf/20240110060037.4202-1-laoar.shao@gmail.com/)**
+
+> Three new kfuncs, namely bpf_iter_cpumask_{new,next,destroy}, have been
+> added for the new bpf_iter_cpumask functionality. These kfuncs enable the
+> iteration of percpu data, such as runqueues, system_group_pcpu, and more.
+>
+
+**[v3: bpf-next: selftests/bpf: add inline assembly helpers to access array elements](http://lore.kernel.org/bpf/20240110010009.1210237-1-brho@google.com/)**
+
+> When accessing an array, even if you insert your own bounds check,
+> sometimes the compiler will remove the check. bpf_cmp() will force the
+> compiler to do the check.
+>
+
+**[v2: bpf-next: selftests/bpf: detect testing prog flags support](http://lore.kernel.org/bpf/20240109231738.575844-1-andrii@kernel.org/)**
+
+> Various tests specify extra testing prog_flags when loading BPF
+> programs, like BPF_F_TEST_RND_HI32, and more recently also
+> BPF_F_TEST_REG_INVARIANTS. While BPF_F_TEST_RND_HI32 is old enough to
+> not cause much problem on older kernels, BPF_F_TEST_REG_INVARIANTS is
+> very fresh and unconditionally specifying it causes selftests to fail on
+> even slightly outdated kernels.
+>
+
+**[GIT PULL: Networking for v6.8](http://lore.kernel.org/bpf/20240109162323.427562-1-pabeni@redhat.com/)**
+
+> The most interesting thing is probably the networking structs
+> reorganization and a significant amount of changes is around
+> self-tests.
+>
+
+**[v1: find_vma BPF test: increase length CPU computation](http://lore.kernel.org/bpf/20240109095637.35934-1-alessandro.carminati@gmail.com/)**
+
+> Some aarch64 systems running a PREEMPT_RT patched kernel, needs
+> more time to complete the test.
+> This change mirrors:
+> commit ba83af059153 ("Improve stability of find_vma BPF test")
+> addressing similar requirements and allowing the QTI SA8775P based
+> systems, and others, to complete the test when running RT kernel.
+>
+
+**[[Bpf] v1: bpf-next: Introduce concept of conformance groups](http://lore.kernel.org/bpf/20240108214231.48RQxkpxeJZN8pvpkomebV1AeJcV4n6NtAkrRjJ_ZGA@z/)**
+
+> The discussion of what the actual conformance groups should be
+> is still in progress, so this is just part 1 which only uses
+> "legacy" for deprecated instructions and "basic" for everything
+> else. Subsequent patches will add more groups as discussion
+> continues.
+>
+
+**[v2: bpf-next: Improvements for tracking scalars in the BPF verifier](http://lore.kernel.org/bpf/20240108205209.838365-1-maxtram95@gmail.com/)**
+
+> The goal of this series is to extend the verifier's capabilities of
+> tracking scalars when they are spilled to stack, especially when the
+> spill or fill is narrowing. It also contains a fix by Eduard for
+> infinite loop detection and a state pruning optimization by Eduard that
+> compensates for a verification complexity regression introduced by
+> tracking unbounded scalars.
+>
+
+**[v1: bpf-next: infer packet range for 'if pkt ==/!= pkt_end' instructions](http://lore.kernel.org/bpf/20240108132802.6103-1-eddyz87@gmail.com/)**
+
+> As suggested by Maciej Żenczykowski in [1], extend try_match_pkt_pointers
+> to allow verification of BPF, generated for C code like below:
+>
+> if (data + 42 != data_end) { ... }
+>
+
+## 周边技术动态
+
+### Qemu
+
+**[v5: target/riscv: deprecate riscv_cpu_options[]](http://lore.kernel.org/qemu-devel/20240112140201.127083-1-dbarboza@ventanamicro.com/)**
+
+> This version is a resend of patches 10 to 17 from v4, reviewed-by and
+> tested-by tags added, rebased with Alistair's riscv-to-apply.next.
+> Patches 01 to 09 of v4 are already queued.
+>
+
+**[v5: Support RISC-V IOPMP](http://lore.kernel.org/qemu-devel/20240112094335.922010-1-ethan84@andestech.com/)**
+
+> This series implements IOPMP specification v1.0.0-draft4 rapid-k model and add
+> IOPMP device to RISC-V virt machine.
+>
+
+**[v2: target/riscv: Add support for 'B' extension](http://lore.kernel.org/qemu-devel/20240111161644.33630-1-rbradford@rivosinc.com/)**
+
+> Add support for the new (fast track) 'B' extension [1] this extension
+> uses the misa.B bit to indicate that the Zba, Zbb and Zbs extensions are
+> present.
+>
+
+**[v1: target/riscv: Check for 'A' extension on all atomic instructions](http://lore.kernel.org/qemu-devel/20240110163959.31291-1-rbradford@rivosinc.com/)**
+
+> Add requirement that 'A' is enabled for all atomic instructions that
+> lack the check. This makes the 64-bit versions consistent with the
+> 32-bit versions in the same file.
+>
+
+**[v3: riscv: support new isa extension detection devicetree properties](http://lore.kernel.org/qemu-devel/20240110-mold-renovate-256db1b5c70e@spud/)**
+
+> Making it a series to keep the standalone change to riscv_isa_string()
+> that Drew reported separate.
+>
+
+**[v1: riscv-to-apply queue](http://lore.kernel.org/qemu-devel/20240110085733.1607526-1-alistair.francis@wdc.com/)**
+
+> The following changes since commit 9468484fe904ab4691de6d9c34616667f377ceac:
+>
+> Merge tag 'block-pull-request' of https://gitlab.com/stefanha/qemu into staging (2024-01-09 10:32:23 +0000)
+>
+
+**[v2: riscv: add rv32i,rv32e and rv64e CPUs](http://lore.kernel.org/qemu-devel/20240108161903.353648-1-dbarboza@ventanamicro.com/)**
+
+> This version shrank to 2 patches since most of the prep work was already
+> done by the RVA22 profile implementation, which is now queued in
+> riscv-to-apply.next.
+>
+
+### U-Boot
+
+**[v1: riscv: qemu: enable booting on a second virtio device](http://lore.kernel.org/u-boot/20240110202656.984622-1-aurelien@aurel32.net/)**
+
+> QEMU RISC-V supports multiple virtio devices, but only tries to boot to
+> the first one. Enable support for a second virtio device, that is useful
+> for instance to boot on a disk image + an installer. Ideally that should
+> be made dynamic, but that's a first step.
+>
+
+**[v1: board: starfive: handle compatible property in dynamic DT configuration](http://lore.kernel.org/u-boot/20240110201757.983435-1-aurelien@aurel32.net/)**
+
+> The difference between the StarFive VisionFive 2 1.2A and 1.3B boards is
+> handled dynamically by looking at the PCB version in the EEPROM in order
+> to have a single u-boot version for both versions of the board. While
+> the "model" property is correctly handled, the "compatible" one is
+> always the the one of version 1.3b.
+>
+> This patch add support for dynamically configuring that property.
+>
+
+**[Pull request smbios-2024-04-rc1](http://lore.kernel.org/u-boot/10da4396-501b-4ab4-bd88-3d6c5b152017@gmx.de/)**
+
+> The following changes since commit c5e461fbf7cc72f0c1c8a79226b6a5170e56cb4d:
+>
+> Merge tag 'u-boot-imx-master-20240108' of
+> https://gitlab.denx.de/u-boot/custodians/u-boot-imx (2024-01-08 13:39:43
+> -0500)
+>
+
+**[v1: riscv: sophgo: milkv_duo: add support for Milk-V Duo board](http://lore.kernel.org/u-boot/20240107112713.61966-1-seashell11234455@gmail.com/)**
+
+> The Milk-V Duo board is built upon Sophgo's CV1800B SoC, featuring two
+> XuanTie C906 CPUs running at 1.0GHz and 700MHz, respectively.
+>
+