diff --git a/_posts/2024-08-27-00-29-17-rvlwn-106.md b/_posts/2024-08-27-00-29-17-rvlwn-106.md
new file mode 100644
index 000000000..be722b8a4
--- /dev/null
+++ b/_posts/2024-08-27-00-29-17-rvlwn-106.md
@@ -0,0 +1,633 @@
+---
+layout: weekly
+author: '呀呀呀'
+title: 'RISC-V Linux 内核及周边技术动态第 106 期'
+draft: false
+group: 'news'
+album: 'RISC-V Linux'
+license: 'cc-by-nc-nd-4.0'
+permalink: /rvlwn-106/
+description: 'RISC-V Linux 内核及周边技术动态第 106 期'
+category:
+ - 开源项目
+ - Risc-V
+tags:
+ - Linux
+ - RISC-V
+ - Rust
+ - Tracepoints
+ - Vector
+ - hwprobe
+---
+
+> 时间:20240825
+> 编辑:晓瑜
+> 仓库:[RISC-V Linux 内核技术调研活动](https://gitee.com/tinylab/riscv-linux)
+> 赞助:PLCT Lab, ISCAS
+
+## 内核动态
+
+### RISC-V 架构支持
+
+**[v1: riscv: Report error when repeatedly recording CPU hardware ID](http://lore.kernel.org/linux-riscv/20240823091100.598162-1-qiaozhe@iscas.ac.cn/)**
+
+> In the of_parse_and_init_cpus() function, when the __cpuid_to_hartid_map[]
+> array records the CPU hardware ID, if the same CPU hardware attribute has
+> been recorded, an error report is issued, thereby ensuring the uniqueness
+> of the CPU hardware ID recorded in the __cpuid_to_hartid_map[] array.
+
+**[v8: Tracepoints and static branch in Rust](http://lore.kernel.org/linux-riscv/20240822-tracepoint-v8-0-f0c5899e6fd3@google.com/)**
+
+> This series includes a patch that adds a user of tracepoits to the
+> rust_print sample.
+
+**[v1: usb drivers use devm_clk_get_enabled() helpers](http://lore.kernel.org/linux-riscv/20240822040734.29412-1-liulei.rjpt@vivo.com/)**
+
+> This simplifies the code and avoids calls to clk_disable_unprepare().
+
+**[GIT PULL: RISC-V T-HEAD Devicetrees for v6.12](http://lore.kernel.org/linux-riscv/ZsWs8QiVruMXjzPc@x1/)**
+
+> Please pull these thead dts changes. I've run W=1 dtbs_check and they
+> have been in linux-next since August 9th.
+
+**[v9: RISC-V: Detect and report speed of unaligned vector accesses](http://lore.kernel.org/linux-riscv/20240820152424.1973078-1-jesse@rivosinc.com/)**
+
+> Adds support for detecting and reporting the speed of unaligned vector
+> accesses on RISC-V CPUs.
+
+**[v2: riscv: hwprobe: export Zicntr and Zihpm extensions](http://lore.kernel.org/linux-riscv/20240820044749.557349-1-mikisabate@gmail.com/)**
+
+> Export Zicntr and Zihpm ISA extensions through the hwprobe syscall.
+
+**[v3: irqchip/sifive-plic: Probe plic driver early for Allwinner D1 platform](http://lore.kernel.org/linux-riscv/20240820034850.3189912-1-apatel@ventanamicro.com/)**
+
+> The latest Linux RISC-V no longer boots on the Allwinner D1 platform
+> because the sun4i_timer driver fails to get an interrupt from PLIC.
+
+**[v5: Zacas/Zabha support and qspinlocks](http://lore.kernel.org/linux-riscv/20240818063538.6651-1-alexghiti@rivosinc.com/)**
+
+> This implements [cmp]xchgXX() macros using Zacas and Zabha extensions
+> and finally uses those newly introduced macros to add support for
+> qspinlocks: note that this implementation of qspinlocks satisfies the
+> forward progress guarantee.
+
+### LoongArch 架构支持
+
+**[v11: Loongarch-avec support](http://lore.kernel.org/loongarch/20240823103525.24237-1-zhangtianyang@loongson.cn/)**
+
+> This series of patches introduces support for advanced extended
+> interrupt controllers (AVECINTC), and this hardware feature will
+> be supported on 3C6000 for the first time.
+
+**[[v2: Added Interrupt controller emulation for loongarch kvm](http://lore.kernel.org/loongarch/20240823093404.204450-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.
+
+**[v7: Add extioi virt extension support](http://lore.kernel.org/loongarch/20240823063943.2618675-1-maobibo@loongson.cn/)**
+
+> KVM_FEATURE_VIRT_EXTIOI is paravirt feature defined with EXTIOI
+> interrupt controller, it can route interrupt to 256 vCPUs and CPU
+> interrupt pin IP0-IP7.
+
+**[v1: of_reserved_mem: Save region name string into struct reserved_mem](http://lore.kernel.org/loongarch/20240821-save_resv_name-v1-1-b9c17f103ffb@flygoat.com/)**
+
+> Previously only a pointer to fdt string pool is saved to struct
+> reserved_mem as region name.
+
+**[v1: LoongArch: Migrate arch_numa](http://lore.kernel.org/loongarch/20240821-loongarch_archnuma-v1-0-f47b191beee8@flygoat.com/)**
+
+> This series migrated LoongArch NUMA implementation to common arch_numa
+> logic to enable devicetree based numa.
+
+**[v1: irqchip/loongson-eiointc: Add multiple interrupt pin routing support](http://lore.kernel.org/loongarch/20240821101153.2262290-1-maobibo@loongson.cn/)**
+
+> There are four times about EIOINTC_REG_ISR register group access in
+> eiointc irq handler, in order to get all irq status about 256 interrupt
+> vectors.
+
+**[v1: Add EDAC driver for loongson memory controller](http://lore.kernel.org/loongarch/20240821064728.8642-1-zhaoqunqin@loongson.cn/)**
+
+> These patchs are based on 6.10.4. Add a simple EDAC driver which report
+> single bit errors (CE) only on loongson platform.
+
+### ARM 架构支持
+
+**[v3: arm64: Implement prctl(PR_{G,S}ET_TSC)](http://lore.kernel.org/linux-arm-kernel/20240824015415.488474-1-pcc@google.com/)**
+
+> This is needed for a correct implementation of non-instrumenting
+> record-replay debugging on arm64 (i.e. rr; https://rr-project.org/).
+
+**[v13: Add Tegra241 (Grace) CMDQV Support (part 1/2)](http://lore.kernel.org/linux-arm-kernel/cover.1724453781.git.nicolinc@nvidia.com/)**
+
+> NVIDIA's Tegra241 (Grace) SoC has a CMDQ-Virtualization (CMDQV) hardware
+> that extends standard ARM SMMUv3 to support multiple command queues with
+> virtualization capabilities.
+
+**[v2: iommu/arm-smmu-qcom: Work around SDM845 Adreno SMMU w/ 16K pages](http://lore.kernel.org/linux-arm-kernel/20240824-topic-845_gpu_smmu-v2-1-a302b8acc052@quicinc.com/)**
+
+> SDM845's Adreno SMMU is unique in that it actually advertizes support
+> for 16K (and 32M) pages, which doesn't hold for newer SoCs.
+
+**[v2: irqchip/gic-v3: init SRE before poking sysregs](http://lore.kernel.org/linux-arm-kernel/20240822102308.283733-1-mark.rutland@arm.com/)**
+
+> The GICv3 driver pokes GICv3 system registers in gic_prio_init() before
+> gic_cpu_sys_reg_init() ensures that GICv3 system registers have been
+> enabled by writing to ICC_SRE_EL1.SRE.
+
+**[v3: ARM: bcm2835: Implement initial S2Idle for Raspberry Pi](http://lore.kernel.org/linux-arm-kernel/20240821214052.6800-1-wahrenst@gmx.net/)**
+
+> This series implement the initial S2Idle support for
+> the Raspberry Pi, which was a long time on my TODO list .
+
+**[v4: arm64: Support for Arm CCA in KVM](http://lore.kernel.org/linux-arm-kernel/20240821153844.60084-1-steven.price@arm.com/)**
+
+> This series adds support for running protected VMs using KVM under the
+> Arm Confidential Compute Architecture (CCA).
+
+**[v1: Microchip OTPC driver on SAM9X60 exposing UIDxR as additional nvmem device](http://lore.kernel.org/linux-arm-kernel/20240821105943.230281-1-ada@thorsis.com/)**
+
+> There is a driver for the OTPC of the SAMA7G5 and after comparing
+> register layouts it seems that one is almost identical to the one used
+> by SAM9X60.
+
+### X86 架构支持
+
+**[v1: arm64: Trace the memory abort exception](http://lore.kernel.org/lkml/20240824111456.289367-1-dolinux.peng@gmail.com/)**
+
+> Introduce an event to trace the occurrence of memory abort exceptions.
+
+**[[RFC/PATCH] perf/x86: Relax privilege filter restriction on AMD IBS](http://lore.kernel.org/lkml/20240822230816.564262-1-namhyung@kernel.org/)**
+
+> While IBS is available for per-thread profiling, still regular users
+> cannot open an event due to the default paranoid setting (2) which
+> doesn't allow unprivileged users to get kernel samples.
+
+**[v1: platform/x86: wmi: Pass event data directly to legacy notify handlers](http://lore.kernel.org/lkml/20240822173810.11090-1-W_Armin@gmx.de/)**
+
+> The current legacy WMI handlers are susceptible to picking up wrong
+> WMI event data on systems where different WMI devices share some
+> notification IDs.
+
+**[v1: platform/x86: lenovo-ymc: Ignore the 0x0 state](http://lore.kernel.org/lkml/08ab73bb74c4ad448409f2ce707b1148874a05ce.1724340562.git.soyer@irl.hu/)**
+
+> Add 0x0 YMC state to the sparse keymap to ignore.
+
+**[v4: Introduce initial AMD I3C HCI driver support](http://lore.kernel.org/lkml/20240821133554.391937-1-Shyam-sundar.S-k@amd.com/)**
+
+> The AMD SoC includes an I3C IP block as part of the Fusion Controller Hub
+> (FCH). This series introduces the initial driver support to enable the I3C
+> IP block on AMD's latest processors.
+
+**[v1: platform/x86: Add support for Intel uncore ELC feature](http://lore.kernel.org/lkml/20240821131321.824326-1-tero.kristo@linux.intel.com/)**
+
+> This series adds ELC (Efficiency Latency Control) support to Intel
+> uncore driver.
+
+**[GIT PULL: platform-drivers-x86 for v6.11-4](http://lore.kernel.org/lkml/pdx86-pr-20240821104010-1325128977@linux.intel.com/)**
+
+> Here is a platform-drivers-x86 fixes PR for v6.11.
+
+**[v1: x86/platform/geode: switch GPIO buttons and LEDs to software properties](http://lore.kernel.org/lkml/ZsV6MNS_tUPPSffJ@google.com/)**
+
+> Convert GPIO-connected buttons and LEDs in Geode boards to software
+> nodes/properties, so that support for platform data can be removed from
+> gpio-keys driver (which will rely purely on generic device properties
+> for configuration).
+
+**[v5: perf auxtrace: Support multiple AUX events](http://lore.kernel.org/lkml/20240820184731.2937551-1-leo.yan@arm.com/)**
+
+> This series is to support multiple events with the *same* type in Perf
+> AUX trace.
+
+**[v1: platform/x86: system76: Reducing redundant conditional judgments in system76_add()](http://lore.kernel.org/lkml/20240820090239.17771-1-xuiagnh@gmail.com/)**
+
+> Since the conditions for most goto statements have already
+> been satisfied by if (data->has_open_ec),the code has been modified to
+> improve execution speed.
+
+**[v2: KVM: x86: Include host suspended time in steal time.](http://lore.kernel.org/lkml/20240820043543.837914-1-suleiman@google.com/)**
+
+> This series makes it so that the time that the host is suspended is
+> included in guests' steal time.
+
+**[v3: Enable PMU for ArrowLake-H](http://lore.kernel.org/lkml/20240820073853.1974746-1-dapeng1.mi@linux.intel.com/)**
+
+> No code changes comparing v2, just add back the missed reviewed-by.
+
+### 进程调度
+
+**[v1: sched: NUMA-aware concurrency IDs](http://lore.kernel.org/lkml/20240819142406.339084-1-mathieu.desnoyers@efficios.com/)**
+
+> The issue addressed by this series is the non-locality of NUMA accesses
+> to data structures indexed by concurrency IDs.
+
+**[v2: perf sched timehist: Add --show-prio & --prio option](http://lore.kernel.org/lkml/20240819033016.2427235-1-yangjihong@bytedance.com/)**
+
+> This patch set adds --show-prio and --prio to show and filter task priorities.
+
+### 内存管理
+
+**[v1: Integrating Namespaces and Cgroups for Enhanced Resource Management](http://lore.kernel.org/linux-mm/tencent_BFC5A388F2922E5FB6F3FE2E3A3662561809@qq.com/)**
+
+
+> We are a system security research team from multiple organizations.
+
+
+**[v4: mm: count the number of anonymous THPs per size](http://lore.kernel.org/linux-mm/20240824010441.21308-1-21cnbao@gmail.com/)**
+
+> Knowing the number of transparent anon THPs in the system is crucial
+> for performance analysis.
+
+**[v1: memcg: add charging of already allocated slab objects](http://lore.kernel.org/linux-mm/20240824010139.1293051-1-shakeel.butt@linux.dev/)**
+
+> At the moment, the slab objects are charged to the memcg at the
+> allocation time.
+
+**[v1: riscv: use gp to save percpu offset](http://lore.kernel.org/linux-mm/20240824004920.35877-1-cuiyunhui@bytedance.com/)**
+
+> Compared to directly fetching the per-CPU offset from memory (or cache),
+> using the global pointer (gp) to store the per-CPU offset can save one
+> memory access.
+
+**[v8: mm: store zero pages to be swapped out in a bitmap](http://lore.kernel.org/linux-mm/20240823185838.939977-1-usamaarif642@gmail.com/)**
+
+> The original series was almost merged, but was dropped
+> due to a last minute bug.
+
+**[v1: tmpfs: Add case-insesitive support for tmpfs](http://lore.kernel.org/linux-mm/20240823173332.281211-1-andrealmeid@igalia.com/)**
+
+> This patchset adds support for case-insesitive file names lookups in tmpfs.
+
+**[v1: codetag: debug: mark codetags for poisoned page as empty](http://lore.kernel.org/linux-mm/20240823062002.21165-1-hao.ge@linux.dev/)**
+
+> The PG_hwpoison page will be caught and isolated on the entrance to
+> the free buddy page pool.
+
+**[v3: slab: Introduce kmalloc_obj() and family](http://lore.kernel.org/linux-mm/20240822231324.make.666-kees@kernel.org/)**
+
+> Introduce type-aware kmalloc-family helpers to replace the common
+> idioms for single, array, and flexible object allocations.
+
+**[v3: mm: collect the number of anon mTHP](http://lore.kernel.org/linux-mm/20240822224015.93186-1-21cnbao@gmail.com/)**
+
+> Knowing the number of anon mTHPs in the system is crucial for performance
+> analysis.
+
+**[v5: Permission Overlay Extension](http://lore.kernel.org/linux-mm/20240822151113.1479789-1-joey.gouly@arm.com/)**
+
+> This series implements the Permission Overlay Extension introduced in 2022
+> VMSA enhancements.
+
+**[v13: enable bs > ps in XFS](http://lore.kernel.org/linux-mm/20240822135018.1931258-1-kernel@pankajraghav.com/)**
+
+> This is the 13th version of the series that enables block size > page size
+> (Large Block Size) experimental support in XFS. Please consider this for
+> the inclusion in 6.12.
+
+**[v2: introduce pte_offset_map_{ro/rw}_nolock()](http://lore.kernel.org/linux-mm/cover.1724310149.git.zhengqi.arch@bytedance.com/)**
+
+**[v2: Wire up getrandom() vDSO implementation on powerpc](http://lore.kernel.org/linux-mm/cover.1724309198.git.christophe.leroy@csgroup.eu/)**
+
+> This series wires up getrandom() vDSO implementation on powerpc.
+
+**[v2: implement async block discards/etc. via io_uring](http://lore.kernel.org/linux-mm/cover.1724297388.git.asml.silence@gmail.com/)**
+
+> There is an interest in having asynchronous block operations like
+> discard and write zeroes.
+
+**[v1: codetag: debug: mark codetags for pages which transitioned from being poison to unpoison as empty](http://lore.kernel.org/linux-mm/20240822025800.13380-1-hao.ge@linux.dev/)**
+
+> The PG_hwpoison page will be caught and isolated on the entrance to
+> the free buddy page pool. so,when we clear this flag and return it
+> to the buddy system,mark codetags for pages as empty.
+
+**[v1: mm:slab:use kmem_cache_free() to free](http://lore.kernel.org/linux-mm/20240822022704.1195439-1-yanzhen@vivo.com/)**
+
+> The kmem_cache_alloc() is typically used to free memory allocated through
+> the kernel memory cache (slab allocator).
+
+### 文件系统
+
+**[v2: bcachefs: support idmap mounts](http://lore.kernel.org/linux-fsdevel/20240824012724.1256722-1-lihongbo22@huawei.com/)**
+
+> We enable idmapped mounts for bcachefs.
+
+### 网络设备
+
+**[v22: net-next: Device Memory TCP](http://lore.kernel.org/netdev/20240825041511.324452-1-almasrymina@google.com/)**
+
+**[v1: net-next: net: ag71xx: support probe defferal for getting MAC address](http://lore.kernel.org/netdev/20240824200249.137209-1-rosenp@gmail.com/)**
+
+> Currently, of_get_ethdev_address() return is checked for any return error
+> code which means that trying to get the MAC from NVMEM cells that is backed
+> by MTD will fail if it was not probed before ag71xx.
+
+**[v1: net-next: net: phy: aquantia: enable firmware loading for aqr105 on PCIe cards](http://lore.kernel.org/netdev/c7c1a3ae-be97-4929-8d89-04c8aa870209@gmx.net/)**
+
+> This patch series adds support for firmware loading from the filesystem for
+> Aquantia PHYs in a non-device-tree environment and activates firmware
+> loading
+> for the AQR105 PHY.
+
+**[v10: ipsec-next: Add IP-TFS mode to xfrm](http://lore.kernel.org/netdev/20240824022054.3788149-1-chopps@chopps.org/)**
+
+> This patchset adds a new xfrm mode implementing on-demand IP-TFS.
+
+**[v7: net-next: net: phy: add Applied Micro QT2025 PHY driver](http://lore.kernel.org/netdev/20240824020617.113828-1-fujita.tomonori@gmail.com/)**
+
+> This patchset adds a PHY driver for Applied Micro Circuits Corporation
+> QT2025.
+
+**[v1: net-next: Expand statistics reported in ethtool](http://lore.kernel.org/netdev/20240823235401.29996-1-neescoba@cisco.com/)**
+
+> The following patches expand the statistics reported in ethtool for the enic
+> driver
+
+**[v5: net-next: net: dsa: microchip: Add KSZ8895/KSZ8864 switch support](http://lore.kernel.org/netdev/BYAPR11MB35580EA278E5373206F5CBC8EC882@BYAPR11MB3558.namprd11.prod.outlook.com/)**
+
+> This series of patches is to add KSZ8895/KSZ8864 switch support to the
+> KSZ DSA driver.
+
+**[v1: Adding SO_PEEK_OFF for TCPv6](http://lore.kernel.org/netdev/20240823211902.143210-1-jmaloy@redhat.com/)**
+
+> Adding SO_PEEK_OFF for TCPv6 and selftest for both TCPv4 and TCPv6.
+
+**[v4: net-next: flow_dissector: Dissect UDP encapsulation protocols](http://lore.kernel.org/netdev/20240823201557.1794985-1-tom@herbertland.com/)**
+
+> Add support in flow_dissector for dissecting into UDP
+> encapsulations like VXLAN. __skb_flow_dissect_udp is called for
+> IPPROTO_UDP.
+
+**[v2: nf-next: netfilter: Make IP_NF_IPTABLES_LEGACY selectable](http://lore.kernel.org/netdev/20240823174855.3052334-1-leitao@debian.org/)**
+
+> These two patches make IP_NF_IPTABLES_LEGACY and IP6_NF_IPTABLES_LEGACY
+> Kconfigs user selectable, avoiding creating an extra dependency by
+> enabling some other config that would select IP{6}_NF_IPTABLES_LEGACY.
+
+**[v1: net-next: Suspend IRQs during application busy periods](http://lore.kernel.org/netdev/20240823173103.94978-1-jdamato@fastly.com/)**
+
+> This series introduces a new mechanism, IRQ suspension, which allows
+> network applications using epoll to mask IRQs during periods of high
+> traffic while also reducing tail latency (compared to existing
+> mechanisms, see below) during periods of low traffic.
+
+**[v3: Add GMAC support for rk3576](http://lore.kernel.org/netdev/20240823141318.51201-1-detlev.casanova@collabora.com/)**
+
+> Add the necessary constants and functions to support the GMAC devices on
+> the rk3576.
+
+### 安全增强
+
+**[v2: -next: lib/string_choices: Add str_true_false()/str_false_true() helper](http://lore.kernel.org/linux-hardening/20240824070950.2014859-1-lihongbo22@huawei.com/)**
+
+> Add str_true_false()/str_false_true() helper to return "true" or
+> "false" string literal.
+
+**[v8: Add support for aw96103/aw96105 proximity sensor](http://lore.kernel.org/linux-hardening/20240823094947.3511730-1-wangshuaijie@awinic.com/)**
+
+> Add drivers that support Awinic aw96103/aw96105 proximity sensors.
+
+**[v1: -next: Add str_true_false()/str_false_true() helper](http://lore.kernel.org/linux-hardening/20240823062046.3323694-1-lihongbo22@huawei.com/)**
+
+> Add str_true_false()/str_false_true() helper to "true" or "false"
+> string literal.
+
+**[v3: arm64: smp: smp_send_stop() and crash_smp_send_stop() should try non-NMI first](http://lore.kernel.org/linux-hardening/20240821145353.v3.1.Id4817adef610302554b8aa42b090d57270dc119c@changeid/)**
+
+> When testing hard lockup handling on my sc7180-trogdor-lazor device
+> with pseudo-NMI enabled, with serial console enabled and with kgdb
+> disabled, I found that the stack crawls printed to the serial console
+> ended up as a jumbled mess.
+
+**[v1: output a valid shell script when running 'make -n'](http://lore.kernel.org/linux-hardening/20240819160309.2218114-1-vegard.nossum@oracle.com/)**
+
+> This patch series lets 'make -n' output a shell script that can be
+> used to build the kernel without any further use of make.
+
+**[v1: pstore: replace spinlock_t by raw_spinlock_t](http://lore.kernel.org/linux-hardening/20240819145945.61274-1-wen.yang@linux.dev/)**
+
+> Replace the spinlock_t with raw_spinlock_t to avoid sleeping in atomic context.
+
+### 异步 IO
+
+**[v1: btrfs: add io_uring for encoded reads](http://lore.kernel.org/io-uring/20240823162810.1668399-1-maharmstone@fb.com/)**
+
+> This patch series adds io_uring support for btrfs encoded reads,
+> complementing the ioctl we already have.
+
+**[v2: RFC: Add support for incremental buffer consumption](http://lore.kernel.org/io-uring/20240823145104.20600-2-axboe@kernel.dk/)**
+
+> The recommended way to use io_uring for networking workloads is to use
+> ring provided buffers. The application sets up a ring (or several) for
+> buffers, and puts buffers for receiving data into them.
+
+**[v3: Read/Write with meta/integrity](http://lore.kernel.org/io-uring/20240823103811.2421-1-anuj20.g@samsung.com/)**
+
+> This adds a new io_uring interface to exchange meta along with read/write.
+
+**[v1: io_uring/kbuf: sanitize peek buffer setup](http://lore.kernel.org/io-uring/c25950aa-416c-47ab-b889-113d73013cf5@kernel.dk/)**
+
+> Harden the buffer peeking a bit, by adding a sanity check for it having
+> a valid size.
+
+**[v2: io_uring/fdinfo: add timeout_list to fdinfo](http://lore.kernel.org/io-uring/20240819074323.644650-1-ruyi.zhang@samsung.com/)**
+
+> However, there is
+> currently a lack of timeout-related information, and this patch adds
+> timeout_list information.
+
+### Rust For Linux
+
+**[v1: rust: experiment with `#[derive(SmartPointer)]`](http://lore.kernel.org/rust-for-linux/20240823-derive-smart-pointer-v1-1-53769cd37239@google.com/)**
+
+> I am sending this RFC patch to share my experience with using the new
+> `#[derive(SmartPointer)]` feature [1] with our custom smart pointers.
+
+**[v1: rust: kernel: add support for bits/genmask macros](http://lore.kernel.org/rust-for-linux/20240822173518.2717-1-daniel.almeida@collabora.com/)**
+
+> These macros were converted from their C equivalent.
+
+**[v7: drm/panic: Add a QR code panic screen](http://lore.kernel.org/rust-for-linux/20240822073852.562286-1-jfalempe@redhat.com/)**
+
+> This series adds a new panic screen, with the kmsg data embedded in a QR code.
+
+**[v4: Rust KASAN Support](http://lore.kernel.org/rust-for-linux/20240820194910.187826-1-mmaurer@google.com/)**
+
+> Right now, if we turn on KASAN, Rust code will cause violations because
+> it's not enabled properly.
+
+**[v2: rust: add `module_params` macro](http://lore.kernel.org/rust-for-linux/20240819133345.3438739-1-nmi@metaspace.dk/)**
+
+> This patch includes changes required for Rust kernel modules to utilize
+> module parameters.
+
+**[v1: v2b: rust: cfi: add support for CFI_CLANG with Rust](http://lore.kernel.org/rust-for-linux/20240801-kcfi-v2b-2-c93caed3d121@google.com/)**
+
+> Make it possible to use the Control Flow Integrity (CFI) sanitizer when
+> Rust is enabled.
+
+**[v1: rust: enable rustdoc's `--generate-link-to-definition`](http://lore.kernel.org/rust-for-linux/20240818141249.387166-1-ojeda@kernel.org/)**
+
+> In Rust 1.56.0 [1], rustdoc introduced the "jump to definition"
+> feature [2], i.e. the unstable flag `--generate-link-to-definition`.
+> It adds links to the source view of the documentation.
+
+**[v2: kbuild: rust: auto generate rust helper exports](http://lore.kernel.org/rust-for-linux/20240817165302.3852499-1-gary@garyguo.net/)**
+
+> This removes the need for explicit exporting all symbols.
+
+### BPF
+
+**[v1: bpf-next: netkit: Disable netpoll support](http://lore.kernel.org/bpf/eab2d69ba2f4c260aef62e4ff0d803e9f60c2c5d.1724414250.git.daniel@iogearbox.net/)**
+
+> Follow-up to 45160cebd6ac ("net: veth: Disable netpoll support") to
+> also disable netpoll for netkit interfaces.
+
+**[v1: bpf: add check for invalid name in btf_name_valid_section()](http://lore.kernel.org/bpf/20240823104310.4076479-1-aha310510@gmail.com/)**
+
+> If the length of the name string is 1 and the value of name[0] is NULL
+> byte, an OOB vulnerability occurs in btf_name_valid_section() and the
+> return value is true, so the invalid name passes the check.
+
+**[v1: bpf-next: follow up for __jited test tag](http://lore.kernel.org/bpf/20240823080644.263943-1-eddyz87@gmail.com/)**
+
+> This patch-set is a collection of follow-ups for
+> "__jited test tag to check disassembly after jit" series (see [1]).
+
+**[v3: bpf-next: support bpf_fastcall patterns for calls to kfuncs](http://lore.kernel.org/bpf/20240822084112.3257995-1-eddyz87@gmail.com/)**
+
+> As an extension of [1], allow bpf_fastcall patterns for kfuncs:
+> - pattern rules are the same as for helpers;
+> - spill/fill removal is allowed only for kfuncs listed in the
+> is_fastcall_kfunc_call (under assumption that such kfuncs would
+> always be members of special_kfunc_list).
+
+**[v2: bpf-next: bpf: Add gen_epilogue and allow kfunc call in pro/epilogue](http://lore.kernel.org/bpf/20240821233440.1855263-1-martin.lau@linux.dev/)**
+
+> This set allows the subsystem to patch codes before BPF_EXIT.
+> The verifier ops, .gen_epilogue, is added for this purpose.
+
+**[v1: bpf-next: bpf/bpf_lru_list: make bpf_common_lru_pop_free safe in NMI](http://lore.kernel.org/bpf/CAPPBnEZmFA3ab8Uc=PEm0bdojZy=7T_F5_+eyZSHyZR3MBG4Vw@mail.gmail.com/)**
+
+> This function is
+> used by htab_lru_map_update_elem() which can be called from an
+> NMI.
+
+**[v1: bpftool: check for NULL ptr of btf in codegen_subskel_datasecs](http://lore.kernel.org/bpf/20240821133112.1467721-1-make24@iscas.ac.cn/)**
+
+> bpf_object__btf() can return NULL value. If bpf_object__btf returns null,
+> do not progress through codegen_subskel_datasecs(). This avoids a null ptr
+> dereference.
+
+**[v1: net-next: Unmask upper DSCP bits - part 1](http://lore.kernel.org/bpf/20240821125251.1571445-1-idosch@nvidia.com/)**
+
+> The TOS field in the IPv4 flow key ('flowi4_tos') is used during FIB
+> lookup to match against the TOS selector in FIB rules and routes.
+
+**[v2: libbpf: Initialize st_ops->tname with strdup()](http://lore.kernel.org/bpf/20240821112344.54299-3-soma.nakata01@gmail.com/)**
+
+> `tname` is returned by `btf__name_by_offset()` as well as `var_name`,
+> and these addresses point to strings in the btf. Since their locations
+> may change while loading the bpf program, using `strdup()` ensures
+> `tname` is safely stored.
+
+**[v4: net: bpf, net: Check cgroup_bpf_enabled() only once in do_sock_getsockopt()](http://lore.kernel.org/bpf/20240821093016.2533-1-Tze-nan.Wu@mediatek.com/)**
+
+**[v21: net-next: net: refactor ->ndo_bpf calls into dev_xdp_propagate](http://lore.kernel.org/bpf/20240821045629.2856641-1-almasrymina@google.com/)**
+
+> When net devices propagate xdp configurations to slave devices, or when
+> core propagates xdp configuration to a device, we will need to perform
+> a memory provider check to ensure we're not binding xdp to a device
+> using unreadable netmem.
+
+**[v3: bpf-next: __jited test tag to check disassembly after jit](http://lore.kernel.org/bpf/20240820102357.3372779-1-eddyz87@gmail.com/)**
+
+> This patch set adds a macro __jited() that could be used for
+> test_loader based tests in a following manner.
+
+**[v3: net/socket: Check cgroup_bpf_enabled() only once in do_sock_getsockopt()](http://lore.kernel.org/bpf/20240820092942.16654-1-Tze-nan.Wu@mediatek.com/)**
+
+**[v1: kbuild: bpf: Do not run pahole with -j on 32bit userspace](http://lore.kernel.org/bpf/20240820085950.200358-1-jirislaby@kernel.org/)**
+
+> This is only a PoC. There are deficiencies like CROSS_COMPILE or LLVM
+> are completely unhandled.
+
+**[v1: net-next: virtio-net: support AF_XDP zero copy (tx)](http://lore.kernel.org/bpf/20240820073330.9161-1-xuanzhuo@linux.alibaba.com/)**
+
+> The zero
+> copy feature of xsk (XDP socket) needs to be supported by the driver. The
+> performance of zero copy is very good. mlx5 and intel ixgbe already support
+> this feature, This patch set allows virtio-net to support xsk's zerocopy xmit
+> feature.
+
+**[v21: net-next: Device Memory TCP](http://lore.kernel.org/bpf/20240820060456.1485518-1-almasrymina@google.com/)**
+
+**[v6: bpf-next: bpf: enable some functions in cgroup programs](http://lore.kernel.org/bpf/20240819162805.78235-1-technoboy85@gmail.com/)**
+
+> Enable some BPF kfuncs and the helper bpf_current_task_under_cgroup()
+> for program types BPF_CGROUP_*.
+
+**[v1: bpf: Refactoring btf_name_valid_identifier() and btf_name_valid_section()](http://lore.kernel.org/bpf/20240819160758.296567-1-aha310510@gmail.com/)**
+
+> Currently, btf_name_valid_identifier() and btf_name_valid_section() are
+> written in a while loop and use pointer operations, so it takes a long
+> time to understand the operation of the code.
+
+**[v1: net/socket: Acquire cgroup_lock in do_sock_getsockopt](http://lore.kernel.org/bpf/20240819082513.27176-1-Tze-nan.Wu@mediatek.com/)**
+
+## 周边技术动态
+
+### Qemu
+
+**[v3: bsd-user: Comprehensive RISCV Support](http://lore.kernel.org/qemu-devel/20240824045635.8978-1-itachis@FreeBSD.org/)**
+
+> Key Changes Compared to Version 2.
+
+**[v8: riscv support for control flow integrity extensions](http://lore.kernel.org/qemu-devel/20240823190140.4156920-1-debug@rivosinc.com/)**
+
+> v8 for riscv zicfilp and zicfiss extensions support in qemu.
+
+**[v1: target: riscv: Enable Bit Manip for OpenTitan Ibex CPU](http://lore.kernel.org/qemu-devel/20240823003231.3522113-1-alistair.francis@wdc.com/)**
+
+> The OpenTitan Ibex CPU now supports the the Zba, Zbb, Zbc
+> and Zbs bit-manipulation sub-extensions ratified in
+> v.1.0.0 of the RISC-V Bit- Manipulation ISA Extension, so let's enable
+> them in QEMU as well.
+
+**[v2: 01/11: target/riscv: Add CLIC CSR mintstatus](http://lore.kernel.org/qemu-devel/20240819160742.27586-3-Ian.Brockbank@cirrus.com/)**
+
+> CSR mintstatus holds the active interrupt level for each supported
+> privilege mode. sintstatus, and user, uintstatus, provide restricted
+> views of mintstatus.
+
+**[v2: 00/11: RISC-V: support CLIC v0.9 specification](http://lore.kernel.org/qemu-devel/20240819160742.27586-1-Ian.Brockbank@cirrus.com/)**
+
+> This patch set gives an implementation of "RISC-V Core-Local Interrupt
+> Controller(CLIC) Version 0.9-draft-20210217".
+
+**[v1: boot: optee-os: enable RISC-V (64-bit) architecture](http://lore.kernel.org/buildroot/20240817112203.3719873-1-peterlin@andestech.com/)**
+
+> OP-TEE OS and TAs can run on RISC-V (64-bit) machines, so allow
+> optee-os to be compiled for the new architecture.
+
+### U-Boot
+
+**[v2: Risc-V cache operations](http://lore.kernel.org/u-boot/20240823094127.207866-1-mchitale@ventanamicro.com/)**
+
+> This patchset adds support for using the CBO instructions to perform the
+> dcache flush/inval operations for the qemu-riscv board when those are
+> enabled.
+
+**[v3: Make LMB memory map global and persistent](http://lore.kernel.org/u-boot/20240821105839.2870293-1-sughosh.ganu@linaro.org/)**
+
+> This is a follow-up from an earlier RFC series for making the LMB
+> and EFI memory allocations work together.
+
+**[v1: riscv: Add AST2700 platform support](http://lore.kernel.org/u-boot/20240819101704.1612317-1-chiawei_wang@aspeedtech.com/)**
+
+> AST2700 is the 7th generation of Aspeed BMC SoCs.
+
+