ALT-BU-2025-5111-1
Branch p10 update bulletin.
Closed bugs
Опечатка в справкепз
Дублируются политики в выводе
Package php8.1-swoole updated to version 6.0.1-alt2.32 for branch p10 in task 378690.
Closed bugs
Unable to load dynamic library 'swoole.so'
Unable to load dynamic library 'swoole.so'
В системе остаётся файл swoole.ini после удаления пакета php8.4-swoole
swoole отсутствует в списке загруженных модулей
swoole.so: undefined symbol: BrotliEncoderCompress
Closed vulnerabilities
BDU:2025-02827
Уязвимость интерпретатора языка программирования PHP, связанная с недостатками обработки заголовков HTTP-запросов, позволяющая нарушителю отправить скрытый HTTP-запрос (атака типа HTTP Request Smuggling)
BDU:2025-02828
Уязвимость интерпретатора языка программирования PHP, связанная с недостатками обработки заголовков HTTP-запросов, позволяющая нарушителю отправить скрытый HTTP-запрос (атака типа HTTP Request Smuggling)
BDU:2025-02829
Уязвимость функций php_libxml_input_buffer_create_filename() и php_libxml_sniff_charset_from_stream() интерпретатора языка программирования PHP, позволяющая нарушителю перенаправить пользователя на произвольный URL-адрес
BDU:2025-02834
Уязвимость функции check_has_header() интерпретатора языка программирования PHP, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-02835
Уязвимость интерпретатора языка программирования PHP, связанная с ошибкой числового усечения, позволяющая нарушителю перенаправить пользователя на произвольный URL-адрес или вызвать отказ в обслуживании
Modified: 2025-03-31
CVE-2025-1217
In PHP from 8.1.* before 8.1.32, from 8.2.* before 8.2.28, from 8.3.* before 8.3.19, from 8.4.* before 8.4.5, when http request module parses HTTP response obtained from a server, folded headers are parsed incorrectly, which may lead to misinterpreting the response and using incorrect headers, MIME types, etc.
Modified: 2025-03-31
CVE-2025-1219
In PHP from 8.1.* before 8.1.32, from 8.2.* before 8.2.28, from 8.3.* before 8.3.19, from 8.4.* before 8.4.5, when requesting a HTTP resource using the DOM or SimpleXML extensions, the wrong content-type header is used to determine the charset when the requested resource performs a redirect. This may cause the resulting document to be parsed incorrectly or bypass validations.
CVE-2025-1734
In PHP from 8.1.* before 8.1.32, from 8.2.* before 8.2.28, from 8.3.* before 8.3.19, from 8.4.* before 8.4.5, when receiving headers from HTTP server, the headers missing a colon (:) are treated as valid headers even though they are not. This may confuse applications into accepting invalid headers.
CVE-2025-1736
In PHP from 8.1.* before 8.1.32, from 8.2.* before 8.2.28, from 8.3.* before 8.3.19, from 8.4.* before 8.4.5, when user-supplied headers are sent, the insufficient validation of the end-of-line characters may prevent certain headers from being sent or lead to certain headers be misinterpreted.
CVE-2025-1861
In PHP from 8.1.* before 8.1.32, from 8.2.* before 8.2.28, from 8.3.* before 8.3.19, from 8.4.* before 8.4.5, when parsing HTTP redirect in the response to an HTTP request, there is currently limit on the location value size caused by limited size of the location buffer to 1024. However as per RFC9110, the limit is recommended to be 8000. This may lead to incorrect URL truncation and redirecting to a wrong location.
Package php8.1-pdo_mysql updated to version 8.1.32-alt1 for branch p10 in task 378690.
Closed bugs
Нехватает зависимости на php8.1-mysqlnd
Package kernel-image-rt updated to version 5.10.235-alt1.rt129 for branch p10 in task 379848.
Closed vulnerabilities
BDU:2025-02204
Уязвимость функции netem_dequeue() модуля net/sched/sch_netem.c подсистемы управления трафиком net/sched ядра операционной системы Linux, позволяющая нарушителю оказать воздействие на конфиденциальность, целостность и доступность защищаемой информации.
BDU:2025-02438
Уязвимость функции rtl_pci_probe() драйвера (drivers/net/wireless/realtek/rtlwifi/pci.c) ядра операционных систем Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-02440
Уязвимость функции ubifs_dump_tnc() файловой системы UBIFS (fs/ubifs/debug.c) ядра операционных систем Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-02441
Уязвимость функций usbg_cmd_work() и bot_cmd_work() драйвера USB (drivers/usb/gadget/function/f_tcm.c) ядра операционных систем Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2025-02444
Уязвимость функции atomctrl_get_smc_sclk_range_table() драйвера DRM (drivers/gpu/drm/amd/pm/powerplay/hwmgr/ppatomctrl.c) ядра операционных систем Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2025-03-24
CVE-2024-57979
In the Linux kernel, the following vulnerability has been resolved: pps: Fix a use-after-free On a board running ntpd and gpsd, I'm seeing a consistent use-after-free in sys_exit() from gpsd when rebooting: pps pps1: removed ------------[ cut here ]------------ kobject: '(null)' (00000000db4bec24): is not initialized, yet kobject_put() is being called. WARNING: CPU: 2 PID: 440 at lib/kobject.c:734 kobject_put+0x120/0x150 CPU: 2 UID: 299 PID: 440 Comm: gpsd Not tainted 6.11.0-rc6-00308-gb31c44928842 #1 Hardware name: Raspberry Pi 4 Model B Rev 1.1 (DT) pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : kobject_put+0x120/0x150 lr : kobject_put+0x120/0x150 sp : ffffffc0803d3ae0 x29: ffffffc0803d3ae0 x28: ffffff8042dc9738 x27: 0000000000000001 x26: 0000000000000000 x25: ffffff8042dc9040 x24: ffffff8042dc9440 x23: ffffff80402a4620 x22: ffffff8042ef4bd0 x21: ffffff80405cb600 x20: 000000000008001b x19: ffffff8040b3b6e0 x18: 0000000000000000 x17: 0000000000000000 x16: 0000000000000000 x15: 696e6920746f6e20 x14: 7369203a29343263 x13: 205d303434542020 x12: 0000000000000000 x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000 x8 : 0000000000000000 x7 : 0000000000000000 x6 : 0000000000000000 x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000 x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000 Call trace: kobject_put+0x120/0x150 cdev_put+0x20/0x3c __fput+0x2c4/0x2d8 ____fput+0x1c/0x38 task_work_run+0x70/0xfc do_exit+0x2a0/0x924 do_group_exit+0x34/0x90 get_signal+0x7fc/0x8c0 do_signal+0x128/0x13b4 do_notify_resume+0xdc/0x160 el0_svc+0xd4/0xf8 el0t_64_sync_handler+0x140/0x14c el0t_64_sync+0x190/0x194 ---[ end trace 0000000000000000 ]--- ...followed by more symptoms of corruption, with similar stacks: refcount_t: underflow; use-after-free. kernel BUG at lib/list_debug.c:62! Kernel panic - not syncing: Oops - BUG: Fatal exception This happens because pps_device_destruct() frees the pps_device with the embedded cdev immediately after calling cdev_del(), but, as the comment above cdev_del() notes, fops for previously opened cdevs are still callable even after cdev_del() returns. I think this bug has always been there: I can't explain why it suddenly started happening every time I reboot this particular board. In commit d953e0e837e6 ("pps: Fix a use-after free bug when unregistering a source."), George Spelvin suggested removing the embedded cdev. That seems like the simplest way to fix this, so I've implemented his suggestion, using __register_chrdev() with pps_idr becoming the source of truth for which minor corresponds to which device. But now that pps_idr defines userspace visibility instead of cdev_add(), we need to be sure the pps->dev refcount can't reach zero while userspace can still find it again. So, the idr_remove() call moves to pps_unregister_cdev(), and pps_idr now holds a reference to pps->dev. pps_core: source serial1 got cdev (251:1) <...> pps pps1: removed pps_core: unregistering pps1 pps_core: deallocating pps1
- https://git.kernel.org/stable/c/1a7735ab2cb9747518a7416fb5929e85442dec62
- https://git.kernel.org/stable/c/785c78ed0d39d1717cca3ef931d3e51337b5e90e
- https://git.kernel.org/stable/c/7e5ee3281dc09014367f5112b6d566ba36ea2d49
- https://git.kernel.org/stable/c/85241f7de216f8298f6e48540ea13d7dcd100870
- https://git.kernel.org/stable/c/91932db1d96b2952299ce30c1c693d834d10ace6
- https://git.kernel.org/stable/c/c4041b6b0a7a3def8cf3f3d6120ff337bc4c40f7
- https://git.kernel.org/stable/c/c79a39dc8d060b9e64e8b0fa9d245d44befeefbe
- https://git.kernel.org/stable/c/cd3bbcb6b3a7caa5ce67de76723b6d8531fb7f64
Modified: 2025-03-25
CVE-2024-58052
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: Fix potential NULL pointer dereference in atomctrl_get_smc_sclk_range_table The function atomctrl_get_smc_sclk_range_table() does not check the return value of smu_atom_get_data_table(). If smu_atom_get_data_table() fails to retrieve SMU_Info table, it returns NULL which is later dereferenced. Found by Linux Verification Center (linuxtesting.org) with SVACE. In practice this should never happen as this code only gets called on polaris chips and the vbios data table will always be present on those chips.
- https://git.kernel.org/stable/c/0b97cd8a61b2b40fd73cf92a4bb2256462d22adb
- https://git.kernel.org/stable/c/2396bc91935c6da0588ce07850d07897974bd350
- https://git.kernel.org/stable/c/357445e28ff004d7f10967aa93ddb4bffa5c3688
- https://git.kernel.org/stable/c/396350adf0e5ad4bf05f01e4d79bfb82f0f6c41a
- https://git.kernel.org/stable/c/6a30634a2e0f1dd3c6b39fd0f114c32893a9907a
- https://git.kernel.org/stable/c/a713ba7167c2d74c477dd7764dbbdbe3199f17f4
- https://git.kernel.org/stable/c/ae522ad211ec4b72eaf742b25f24b0a406afcba1
- https://git.kernel.org/stable/c/c47066ed7c8f3b320ef87fa6217a2b8b24e127cc
Modified: 2025-03-25
CVE-2024-58055
In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_tcm: Don't free command immediately Don't prematurely free the command. Wait for the status completion of the sense status. It can be freed then. Otherwise we will double-free the command.
- https://git.kernel.org/stable/c/16907219ad6763f401700e1b57b2da4f3e07f047
- https://git.kernel.org/stable/c/38229c35a6d7875697dfb293356407330cfcd23e
- https://git.kernel.org/stable/c/7cb72dc08ed8da60fd6d1f6adf13bf0e6ee0f694
- https://git.kernel.org/stable/c/929b69810eec132b284ffd19047a85d961df9e4d
- https://git.kernel.org/stable/c/bbb7f49839b57d66ccaf7b5752d9b63d3031dd0a
- https://git.kernel.org/stable/c/c225d006a31949d673e646d585d9569bc28feeb9
- https://git.kernel.org/stable/c/e6693595bd1b55af62d057a4136a89d5c2ddf0e9
- https://git.kernel.org/stable/c/f0c33e7d387ccbb6870e73a43c558fefede06614
Modified: 2025-03-25
CVE-2024-58058
In the Linux kernel, the following vulnerability has been resolved: ubifs: skip dumping tnc tree when zroot is null Clearing slab cache will free all znode in memory and make c->zroot.znode = NULL, then dumping tnc tree will access c->zroot.znode which cause null pointer dereference.
- https://git.kernel.org/stable/c/1787cd67bb94b106555ffe64f887f6aa24b47010
- https://git.kernel.org/stable/c/2a987950df825d0144370e700dc5fb337684ffba
- https://git.kernel.org/stable/c/40e25a3c0063935763717877bb2a814c081509ff
- https://git.kernel.org/stable/c/428aff8f7cfb0d9a8854477648022cef96bcab28
- https://git.kernel.org/stable/c/6211c11fc20424bbc6d79c835c7c212b553ae898
- https://git.kernel.org/stable/c/77e5266e3d3faa6bdcf20d9c68a8972f6aa06522
- https://git.kernel.org/stable/c/bdb0ca39e0acccf6771db49c3f94ed787d05f2d7
- https://git.kernel.org/stable/c/e01b55f261ccc96e347eba4931e4429d080d879d
Modified: 2025-03-25
CVE-2024-58063
In the Linux kernel, the following vulnerability has been resolved: wifi: rtlwifi: fix memory leaks and invalid access at probe error path Deinitialize at reverse order when probe fails. When init_sw_vars fails, rtl_deinit_core should not be called, specially now that it destroys the rtl_wq workqueue. And call rtl_pci_deinit and deinit_sw_vars, otherwise, memory will be leaked. Remove pci_set_drvdata call as it will already be cleaned up by the core driver code and could lead to memory leaks too. cf. commit 8d450935ae7f ("wireless: rtlwifi: remove unnecessary pci_set_drvdata()") and commit 3d86b93064c7 ("rtlwifi: Fix PCI probe error path orphaned memory").
- https://git.kernel.org/stable/c/32acebca0a51f5e372536bfdc0d7d332ab749013
- https://git.kernel.org/stable/c/455e0f40b5352186a9095f2135d5c89255e7c39a
- https://git.kernel.org/stable/c/624cea89a0865a2bc3e00182a6b0f954a94328b4
- https://git.kernel.org/stable/c/6b76bab5c257463302c9e97f5d84d524457468eb
- https://git.kernel.org/stable/c/85b67b4c4a0f8a6fb20cf4ef7684ff2b0cf559df
- https://git.kernel.org/stable/c/b96371339fd9cac90f5ee4ac17ee5c4cbbdfa6f7
- https://git.kernel.org/stable/c/e7ceefbfd8d447abc8aca8ab993a942803522c06
- https://git.kernel.org/stable/c/ee0b0d7baa8a6d42c7988f6e50c8f164cdf3fa47
Modified: 2025-03-25
CVE-2024-58069
In the Linux kernel, the following vulnerability has been resolved: rtc: pcf85063: fix potential OOB write in PCF85063 NVMEM read The nvmem interface supports variable buffer sizes, while the regmap interface operates with fixed-size storage. If an nvmem client uses a buffer size less than 4 bytes, regmap_read will write out of bounds as it expects the buffer to point at an unsigned int. Fix this by using an intermediary unsigned int to hold the value.
- https://git.kernel.org/stable/c/21cd59fcb9952eb7505da2bdfc1eb9c619df3ff4
- https://git.kernel.org/stable/c/3ab8c5ed4f84fa20cd16794fe8dc31f633fbc70c
- https://git.kernel.org/stable/c/517aedb365f2c94e2d7e0b908ac7127df76203a1
- https://git.kernel.org/stable/c/6f2a8ca9a0a38589f52a7f0fb9425b9ba987ae7c
- https://git.kernel.org/stable/c/9adefa7b9559d0f21034a5d5ec1b55840c9348b9
- https://git.kernel.org/stable/c/c72b7a474d3f445bf0c5bcf8ffed332c78eb28a1
- https://git.kernel.org/stable/c/e5536677da803ed54a29a446515c28dce7d3d574
- https://git.kernel.org/stable/c/e5e06455760f2995b16a176033909347929d1128
Modified: 2025-03-25
CVE-2024-58071
In the Linux kernel, the following vulnerability has been resolved:
team: prevent adding a device which is already a team device lower
Prevent adding a device which is already a team device lower,
e.g. adding veth0 if vlan1 was already added and veth0 is a lower of
vlan1.
This is not useful in practice and can lead to recursive locking:
$ ip link add veth0 type veth peer name veth1
$ ip link set veth0 up
$ ip link set veth1 up
$ ip link add link veth0 name veth0.1 type vlan protocol 802.1Q id 1
$ ip link add team0 type team
$ ip link set veth0.1 down
$ ip link set veth0.1 master team0
team0: Port device veth0.1 added
$ ip link set veth0 down
$ ip link set veth0 master team0
============================================
WARNING: possible recursive locking detected
6.13.0-rc2-virtme-00441-ga14a429069bb #46 Not tainted
--------------------------------------------
ip/7684 is trying to acquire lock:
ffff888016848e00 (team->team_lock_key){+.+.}-{4:4}, at: team_device_event (drivers/net/team/team_core.c:2928 drivers/net/team/team_core.c:2951 drivers/net/team/team_core.c:2973)
but task is already holding lock:
ffff888016848e00 (team->team_lock_key){+.+.}-{4:4}, at: team_add_slave (drivers/net/team/team_core.c:1147 drivers/net/team/team_core.c:1977)
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0
----
lock(team->team_lock_key);
lock(team->team_lock_key);
*** DEADLOCK ***
May be due to missing lock nesting notation
2 locks held by ip/7684:
stack backtrace:
CPU: 3 UID: 0 PID: 7684 Comm: ip Not tainted 6.13.0-rc2-virtme-00441-ga14a429069bb #46
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014
Call Trace:
- https://git.kernel.org/stable/c/0a7794b9ca78c8e7d001c583bf05736169de3f20
- https://git.kernel.org/stable/c/184a564e6000b41582f160a5be9a9b5aabe22ac1
- https://git.kernel.org/stable/c/1bb06f919fa5bec77ad9b6002525c3dcc5c1fd6c
- https://git.kernel.org/stable/c/3fff5da4ca2164bb4d0f1e6cd33f6eb8a0e73e50
- https://git.kernel.org/stable/c/62ff1615815d565448c37cb8a7a2a076492ec471
- https://git.kernel.org/stable/c/adff6ac889e16d97abd1e4543f533221127e978a
- https://git.kernel.org/stable/c/bd099a2fa9be983ba0e90a57a59484fe9d520ba8
- https://git.kernel.org/stable/c/d9bce1310c0e2a55888e3e08c9f69d8377b3a377
Modified: 2025-03-24
CVE-2025-21700
In the Linux kernel, the following vulnerability has been resolved:
net: sched: Disallow replacing of child qdisc from one parent to another
Lion Ackermann was able to create a UAF which can be abused for privilege
escalation with the following script
Step 1. create root qdisc
tc qdisc add dev lo root handle 1:0 drr
step2. a class for packet aggregation do demonstrate uaf
tc class add dev lo classid 1:1 drr
step3. a class for nesting
tc class add dev lo classid 1:2 drr
step4. a class to graft qdisc to
tc class add dev lo classid 1:3 drr
step5.
tc qdisc add dev lo parent 1:1 handle 2:0 plug limit 1024
step6.
tc qdisc add dev lo parent 1:2 handle 3:0 drr
step7.
tc class add dev lo classid 3:1 drr
step 8.
tc qdisc add dev lo parent 3:1 handle 4:0 pfifo
step 9. Display the class/qdisc layout
tc class ls dev lo
class drr 1:1 root leaf 2: quantum 64Kb
class drr 1:2 root leaf 3: quantum 64Kb
class drr 3:1 root leaf 4: quantum 64Kb
tc qdisc ls
qdisc drr 1: dev lo root refcnt 2
qdisc plug 2: dev lo parent 1:1
qdisc pfifo 4: dev lo parent 3:1 limit 1000p
qdisc drr 3: dev lo parent 1:2
step10. trigger the bug <=== prevented by this patch
tc qdisc replace dev lo parent 1:3 handle 4:0
step 11. Redisplay again the qdiscs/classes
tc class ls dev lo
class drr 1:1 root leaf 2: quantum 64Kb
class drr 1:2 root leaf 3: quantum 64Kb
class drr 1:3 root leaf 4: quantum 64Kb
class drr 3:1 root leaf 4: quantum 64Kb
tc qdisc ls
qdisc drr 1: dev lo root refcnt 2
qdisc plug 2: dev lo parent 1:1
qdisc pfifo 4: dev lo parent 3:1 refcnt 2 limit 1000p
qdisc drr 3: dev lo parent 1:2
Observe that a) parent for 4:0 does not change despite the replace request.
There can only be one parent. b) refcount has gone up by two for 4:0 and
c) both class 1:3 and 3:1 are pointing to it.
Step 12. send one packet to plug
echo "" | socat -u STDIN UDP4-DATAGRAM:127.0.0.1:8888,priority=$((0x10001))
step13. send one packet to the grafted fifo
echo "" | socat -u STDIN UDP4-DATAGRAM:127.0.0.1:8888,priority=$((0x10003))
step14. lets trigger the uaf
tc class delete dev lo classid 1:3
tc class delete dev lo classid 1:1
The semantics of "replace" is for a del/add _on the same node_ and not
a delete from one node(3:1) and add to another node (1:3) as in step10.
While we could "fix" with a more complex approach there could be
consequences to expectations so the patch takes the preventive approach of
"disallow such config".
Joint work with Lion Ackermann
- https://git.kernel.org/stable/c/38646749d6e12f9d80a08d21ca39f0beca20230d
- https://git.kernel.org/stable/c/46c59ec33ec98aba20c15117630cae43a01404cc
- https://git.kernel.org/stable/c/73c7e1d6898ccbeee126194dcc05f58b8a795e70
- https://git.kernel.org/stable/c/7e2bd8c13b07e29a247c023c7444df23f9a79fd8
- https://git.kernel.org/stable/c/bc50835e83f60f56e9bec2b392fb5544f250fb6f
- https://git.kernel.org/stable/c/cd796e269123e1994bfc4e99dd76680ba0946a97
- https://git.kernel.org/stable/c/deda09c0543a66fa51554abc5ffd723d99b191bf
- https://git.kernel.org/stable/c/fe18c21d67dc7d1bcce1bba56515b1b0306db19b
Modified: 2025-03-24
CVE-2025-21703
In the Linux kernel, the following vulnerability has been resolved: netem: Update sch->q.qlen before qdisc_tree_reduce_backlog() qdisc_tree_reduce_backlog() notifies parent qdisc only if child qdisc becomes empty, therefore we need to reduce the backlog of the child qdisc before calling it. Otherwise it would miss the opportunity to call cops->qlen_notify(), in the case of DRR, it resulted in UAF since DRR uses ->qlen_notify() to maintain its active list.
- https://git.kernel.org/stable/c/1f8e3f4a4b8b90ad274dfbc66fc7d55cb582f4d5
- https://git.kernel.org/stable/c/6312555249082d6d8cc5321ff725df05482d8b83
- https://git.kernel.org/stable/c/638ba5089324796c2ee49af10427459c2de35f71
- https://git.kernel.org/stable/c/7b79ca9a1de6a428d486ff52fb3d602321c08f55
- https://git.kernel.org/stable/c/7f31d74fcc556a9166b1bb20515542de7bb939d1
- https://git.kernel.org/stable/c/839ecc583fa00fab785fde1c85a326743657fd32
- https://git.kernel.org/stable/c/98a2c685293aae122f688cde11d9334dddc5d207
- https://git.kernel.org/stable/c/e395fec75ac2dbffc99b4bce57b7f1f3c5449f2c
Modified: 2025-03-24
CVE-2025-21722
In the Linux kernel, the following vulnerability has been resolved:
nilfs2: do not force clear folio if buffer is referenced
Patch series "nilfs2: protect busy buffer heads from being force-cleared".
This series fixes the buffer head state inconsistency issues reported by
syzbot that occurs when the filesystem is corrupted and falls back to
read-only, and the associated buffer head use-after-free issue.
This patch (of 2):
Syzbot has reported that after nilfs2 detects filesystem corruption and
falls back to read-only, inconsistencies in the buffer state may occur.
One of the inconsistencies is that when nilfs2 calls mark_buffer_dirty()
to set a data or metadata buffer as dirty, but it detects that the buffer
is not in the uptodate state:
WARNING: CPU: 0 PID: 6049 at fs/buffer.c:1177 mark_buffer_dirty+0x2e5/0x520
fs/buffer.c:1177
...
Call Trace:
- https://git.kernel.org/stable/c/1098bb8d52419d262a3358d099a1598a920b730f
- https://git.kernel.org/stable/c/19296737024cd220a1d6590bf4c092bca8c99497
- https://git.kernel.org/stable/c/4d042811c72f71be7c14726db2c72b67025a7cb5
- https://git.kernel.org/stable/c/557ccf5e49f1fb848a29698585bcab2e50a597ef
- https://git.kernel.org/stable/c/7d0544bacc11d6aa26ecd7debf9353193c7a3328
- https://git.kernel.org/stable/c/ca76bb226bf47ff04c782cacbd299f12ddee1ec1
- https://git.kernel.org/stable/c/f51ff43c4c5a6c8e72d0aca89e4d5e688938412f
Modified: 2025-03-24
CVE-2025-21726
In the Linux kernel, the following vulnerability has been resolved:
padata: avoid UAF for reorder_work
Although the previous patch can avoid ps and ps UAF for _do_serial, it
can not avoid potential UAF issue for reorder_work. This issue can
happen just as below:
crypto_request crypto_request crypto_del_alg
padata_do_serial
...
padata_reorder
// processes all remaining
// requests then breaks
while (1) {
if (!padata)
break;
...
}
padata_do_serial
// new request added
list_add
// sees the new request
queue_work(reorder_work)
padata_reorder
queue_work_on(squeue->work)
...
- https://git.kernel.org/stable/c/4c6209efea2208597dbd3e52dc87a0d1a8f2dbe1
- https://git.kernel.org/stable/c/6f45ef616775b0ce7889b0f6077fc8d681ab30bc
- https://git.kernel.org/stable/c/7000507bb0d2ceb545c0a690e0c707c897d102c2
- https://git.kernel.org/stable/c/8ca38d0ca8c3d30dd18d311f1a7ec5cb56972cac
- https://git.kernel.org/stable/c/a54091c24220a4cd847d5b4f36d678edacddbaf0
- https://git.kernel.org/stable/c/dd7d37ccf6b11f3d95e797ebe4e9e886d0332600
- https://git.kernel.org/stable/c/f4f1b1169fc3694f9bc3e28c6c68dbbf4cc744c0
Modified: 2025-03-24
CVE-2025-21727
In the Linux kernel, the following vulnerability has been resolved:
padata: fix UAF in padata_reorder
A bug was found when run ltp test:
BUG: KASAN: slab-use-after-free in padata_find_next+0x29/0x1a0
Read of size 4 at addr ffff88bbfe003524 by task kworker/u113:2/3039206
CPU: 0 PID: 3039206 Comm: kworker/u113:2 Kdump: loaded Not tainted 6.6.0+
Workqueue: pdecrypt_parallel padata_parallel_worker
Call Trace:
- https://git.kernel.org/stable/c/0ae2f332cfd2d74cf3ce344ec9938cf3e29c3ccd
- https://git.kernel.org/stable/c/573ac9c70bf7885dc85d82fa44550581bfc3b738
- https://git.kernel.org/stable/c/80231f069240d52e98b6a317456c67b2eafd0781
- https://git.kernel.org/stable/c/bbccae982e9fa1d7abcb23a5ec81cb0ec883f7de
- https://git.kernel.org/stable/c/e01780ea4661172734118d2a5f41bc9720765668
- https://git.kernel.org/stable/c/f3e0b9f790f8e8065d59e67b565a83154d9f3079
- https://git.kernel.org/stable/c/f78170bee51469734b1a306a74fc5f777bb22ba6
Modified: 2025-03-24
CVE-2025-21731
In the Linux kernel, the following vulnerability has been resolved: nbd: don't allow reconnect after disconnect Following process can cause nbd_config UAF: 1) grab nbd_config temporarily; 2) nbd_genl_disconnect() flush all recv_work() and release the initial reference: nbd_genl_disconnect nbd_disconnect_and_put nbd_disconnect flush_workqueue(nbd->recv_workq) if (test_and_clear_bit(NBD_RT_HAS_CONFIG_REF, ...)) nbd_config_put -> due to step 1), reference is still not zero 3) nbd_genl_reconfigure() queue recv_work() again; nbd_genl_reconfigure config = nbd_get_config_unlocked(nbd) if (!config) -> succeed if (!test_bit(NBD_RT_BOUND, ...)) -> succeed nbd_reconnect_socket queue_work(nbd->recv_workq, &args->work) 4) step 1) release the reference; 5) Finially, recv_work() will trigger UAF: recv_work nbd_config_put(nbd) -> nbd_config is freed atomic_dec(&config->recv_threads) -> UAF Fix the problem by clearing NBD_RT_BOUND in nbd_genl_disconnect(), so that nbd_genl_reconfigure() will fail.
- https://git.kernel.org/stable/c/6bef6222a3f6c7adb6396f77f25a3579d821b09a
- https://git.kernel.org/stable/c/844b8cdc681612ff24df62cdefddeab5772fadf1
- https://git.kernel.org/stable/c/9793bd5ae4bdbdb2dde401a3cab94a6bfd05e302
- https://git.kernel.org/stable/c/a8ee6ecde2b7bfb58c8a3afe8a9d2b848f580739
- https://git.kernel.org/stable/c/d208d2c52b652913b5eefc8ca434b0d6b757f68f
- https://git.kernel.org/stable/c/e3be8862d73cac833e0fb7602636c19c6cb94b11
- https://git.kernel.org/stable/c/e70a578487a47d7cf058904141e586684d1c3381
- https://git.kernel.org/stable/c/e7343fa33751cb07c1c56b666bf37cfca357130e
Modified: 2025-03-24
CVE-2025-21753
In the Linux kernel, the following vulnerability has been resolved:
btrfs: fix use-after-free when attempting to join an aborted transaction
When we are trying to join the current transaction and if it's aborted,
we read its 'aborted' field after unlocking fs_info->trans_lock and
without holding any extra reference count on it. This means that a
concurrent task that is aborting the transaction may free the transaction
before we read its 'aborted' field, leading to a use-after-free.
Fix this by reading the 'aborted' field while holding fs_info->trans_lock
since any freeing task must first acquire that lock and set
fs_info->running_transaction to NULL before freeing the transaction.
This was reported by syzbot and Dmitry with the following stack traces
from KASAN:
==================================================================
BUG: KASAN: slab-use-after-free in join_transaction+0xd9b/0xda0 fs/btrfs/transaction.c:278
Read of size 4 at addr ffff888011839024 by task kworker/u4:9/1128
CPU: 0 UID: 0 PID: 1128 Comm: kworker/u4:9 Not tainted 6.13.0-rc7-syzkaller-00019-gc45323b7560e #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014
Workqueue: events_unbound btrfs_async_reclaim_data_space
Call Trace:
- https://git.kernel.org/stable/c/6ba4663ada6c6315af23a6669d386146634808ec
- https://git.kernel.org/stable/c/7e954b6bb95d67ae4d1a20e9cfd83c182cf929bc
- https://git.kernel.org/stable/c/86d71a026a7f63da905db9add845c8ee88801eca
- https://git.kernel.org/stable/c/8f5cff471039caa2b088060c074c2bf2081bcb01
- https://git.kernel.org/stable/c/c7a53757717e68af94a56929d57f1e6daff220ec
- https://git.kernel.org/stable/c/ce628048390dad80320d5a1f74de6ca1e1be91e7
- https://git.kernel.org/stable/c/cee55b1219568c80bf0d5dc55066e4a859baf753
- https://git.kernel.org/stable/c/e2f0943cf37305dbdeaf9846e3c941451bcdef63
Modified: 2025-03-24
CVE-2025-21756
In the Linux kernel, the following vulnerability has been resolved: vsock: Keep the binding until socket destruction Preserve sockets bindings; this includes both resulting from an explicit bind() and those implicitly bound through autobind during connect(). Prevents socket unbinding during a transport reassignment, which fixes a use-after-free: 1. vsock_create() (refcnt=1) calls vsock_insert_unbound() (refcnt=2) 2. transport->release() calls vsock_remove_bound() without checking if sk was bound and moved to bound list (refcnt=1) 3. vsock_bind() assumes sk is in unbound list and before __vsock_insert_bound(vsock_bound_sockets()) calls __vsock_remove_bound() which does: list_del_init(&vsk->bound_table); // nop sock_put(&vsk->sk); // refcnt=0 BUG: KASAN: slab-use-after-free in __vsock_bind+0x62e/0x730 Read of size 4 at addr ffff88816b46a74c by task a.out/2057 dump_stack_lvl+0x68/0x90 print_report+0x174/0x4f6 kasan_report+0xb9/0x190 __vsock_bind+0x62e/0x730 vsock_bind+0x97/0xe0 __sys_bind+0x154/0x1f0 __x64_sys_bind+0x6e/0xb0 do_syscall_64+0x93/0x1b0 entry_SYSCALL_64_after_hwframe+0x76/0x7e Allocated by task 2057: kasan_save_stack+0x1e/0x40 kasan_save_track+0x10/0x30 __kasan_slab_alloc+0x85/0x90 kmem_cache_alloc_noprof+0x131/0x450 sk_prot_alloc+0x5b/0x220 sk_alloc+0x2c/0x870 __vsock_create.constprop.0+0x2e/0xb60 vsock_create+0xe4/0x420 __sock_create+0x241/0x650 __sys_socket+0xf2/0x1a0 __x64_sys_socket+0x6e/0xb0 do_syscall_64+0x93/0x1b0 entry_SYSCALL_64_after_hwframe+0x76/0x7e Freed by task 2057: kasan_save_stack+0x1e/0x40 kasan_save_track+0x10/0x30 kasan_save_free_info+0x37/0x60 __kasan_slab_free+0x4b/0x70 kmem_cache_free+0x1a1/0x590 __sk_destruct+0x388/0x5a0 __vsock_bind+0x5e1/0x730 vsock_bind+0x97/0xe0 __sys_bind+0x154/0x1f0 __x64_sys_bind+0x6e/0xb0 do_syscall_64+0x93/0x1b0 entry_SYSCALL_64_after_hwframe+0x76/0x7e refcount_t: addition on 0; use-after-free. WARNING: CPU: 7 PID: 2057 at lib/refcount.c:25 refcount_warn_saturate+0xce/0x150 RIP: 0010:refcount_warn_saturate+0xce/0x150 __vsock_bind+0x66d/0x730 vsock_bind+0x97/0xe0 __sys_bind+0x154/0x1f0 __x64_sys_bind+0x6e/0xb0 do_syscall_64+0x93/0x1b0 entry_SYSCALL_64_after_hwframe+0x76/0x7e refcount_t: underflow; use-after-free. WARNING: CPU: 7 PID: 2057 at lib/refcount.c:28 refcount_warn_saturate+0xee/0x150 RIP: 0010:refcount_warn_saturate+0xee/0x150 vsock_remove_bound+0x187/0x1e0 __vsock_release+0x383/0x4a0 vsock_release+0x90/0x120 __sock_release+0xa3/0x250 sock_close+0x14/0x20 __fput+0x359/0xa80 task_work_run+0x107/0x1d0 do_exit+0x847/0x2560 do_group_exit+0xb8/0x250 __x64_sys_exit_group+0x3a/0x50 x64_sys_call+0xfec/0x14f0 do_syscall_64+0x93/0x1b0 entry_SYSCALL_64_after_hwframe+0x76/0x7e
- https://git.kernel.org/stable/c/3f43540166128951cc1be7ab1ce6b7f05c670d8b
- https://git.kernel.org/stable/c/42b33381e5e1f2b967dc4fb4221ddb9aaf10d197
- https://git.kernel.org/stable/c/645ce25aa0e67895b11d89f27bb86c9d444c40f8
- https://git.kernel.org/stable/c/b1afd40321f1c243cffbcf40ea7ca41aca87fa5e
- https://git.kernel.org/stable/c/e48fcb403c2d0e574c19683f09399ab4cf67809c
- https://git.kernel.org/stable/c/e7754d564579a5db9c5c9f74228df5d6dd6f1173
- https://git.kernel.org/stable/c/fcdd2242c0231032fc84e1404315c245ae56322a
Modified: 2025-03-24
CVE-2025-21760
In the Linux kernel, the following vulnerability has been resolved: ndisc: extend RCU protection in ndisc_send_skb() ndisc_send_skb() can be called without RTNL or RCU held. Acquire rcu_read_lock() earlier, so that we can use dev_net_rcu() and avoid a potential UAF.
- https://git.kernel.org/stable/c/04e05112f10354ffc3bb6cc796d553bab161594c
- https://git.kernel.org/stable/c/10a1f3fece2f0d23a3a618b72b2b4e6f408ef7d1
- https://git.kernel.org/stable/c/4d576202b90b1b95a7c428a80b536f91b8201bcc
- https://git.kernel.org/stable/c/789230e5a8c1097301afc802e242c79bc8835c67
- https://git.kernel.org/stable/c/a9319d800b5701e7f5e3fa71a5b7c4831fc20d6d
- https://git.kernel.org/stable/c/ae38982f521621c216fc2f5182cd091f4734641d
- https://git.kernel.org/stable/c/e24d225e4cb8cf108bde00b76594499b98f0a74d
- https://git.kernel.org/stable/c/ed6ae1f325d3c43966ec1b62ac1459e2b8e45640
Modified: 2025-03-24
CVE-2025-21761
In the Linux kernel, the following vulnerability has been resolved: openvswitch: use RCU protection in ovs_vport_cmd_fill_info() ovs_vport_cmd_fill_info() can be called without RTNL or RCU. Use RCU protection and dev_net_rcu() to avoid potential UAF.
- https://git.kernel.org/stable/c/5828937742af74666192835d657095d95c53dbd0
- https://git.kernel.org/stable/c/7e01abc34e87abd091e619161a20f54ed4e3e2da
- https://git.kernel.org/stable/c/8ec57509c36c8b9a23e50b7858dda0c520a2d074
- https://git.kernel.org/stable/c/90b2f49a502fa71090d9f4fe29a2f51fe5dff76d
- https://git.kernel.org/stable/c/a849a10de5e04d798f7f286a2f1ca174719a617a
- https://git.kernel.org/stable/c/a8816b3f1f151373fd30f1996f00480126c8bb11
- https://git.kernel.org/stable/c/a884f57600e463f69d7b279c4598b865260b62a1
- https://git.kernel.org/stable/c/e85a25d1a9985645e796039e843d1de581d2de1e
Modified: 2025-03-21
CVE-2025-21762
In the Linux kernel, the following vulnerability has been resolved: arp: use RCU protection in arp_xmit() arp_xmit() can be called without RTNL or RCU protection. Use RCU protection to avoid potential UAF.
- https://git.kernel.org/stable/c/01d1b5c9abcaff29a43f1d17a19c33eec92c7dbe
- https://git.kernel.org/stable/c/10f555e3f573d004ae9d89b3276abb58c4ede5c3
- https://git.kernel.org/stable/c/2c331718d3389b6c5f6855078ab7171849e016bd
- https://git.kernel.org/stable/c/307cd1e2d3cb1cbc6c40c679cada6d7168b18431
- https://git.kernel.org/stable/c/a42b69f692165ec39db42d595f4f65a4c8f42e44
- https://git.kernel.org/stable/c/d9366ac2f956a1948b68c0500f84a3462ff2ed8a
- https://git.kernel.org/stable/c/e9f4dee534eb1b225b0a120395ad9bc2afe164d3
- https://git.kernel.org/stable/c/f189654459423d4d48bef2d120b4bfba559e6039
Modified: 2025-03-21
CVE-2025-21763
In the Linux kernel, the following vulnerability has been resolved: neighbour: use RCU protection in __neigh_notify() __neigh_notify() can be called without RTNL or RCU protection. Use RCU protection to avoid potential UAF.
- https://git.kernel.org/stable/c/1cbb2aa90cd3fba15ad7efb5cdda28f3d1082379
- https://git.kernel.org/stable/c/40d8f2f2a373b6c294ffac394d2bb814b572ead1
- https://git.kernel.org/stable/c/559307d25235e24b5424778c7332451b6c741159
- https://git.kernel.org/stable/c/784eb2376270e086f7db136d154b8404edacf97b
- https://git.kernel.org/stable/c/8666e9aab801328c1408a19fbf4070609dc0695a
- https://git.kernel.org/stable/c/becbd5850c03ed33b232083dd66c6e38c0c0e569
- https://git.kernel.org/stable/c/cdd5c2a12ddad8a77ce1838ff9f29aa587de82df
- https://git.kernel.org/stable/c/e1aed6be381bcd7f46d4ca9d7ef0f5f3d6a1be32
Modified: 2025-03-21
CVE-2025-21764
In the Linux kernel, the following vulnerability has been resolved: ndisc: use RCU protection in ndisc_alloc_skb() ndisc_alloc_skb() can be called without RTNL or RCU being held. Add RCU protection to avoid possible UAF.
- https://git.kernel.org/stable/c/3c2d705f5adf5d860aaef90cb4211c0fde2ba66d
- https://git.kernel.org/stable/c/628e6d18930bbd21f2d4562228afe27694f66da9
- https://git.kernel.org/stable/c/96fc896d0e5b37c12808df797397fb16f3080879
- https://git.kernel.org/stable/c/9e0ec817eb41a55327a46cd3ce331a9868d60304
- https://git.kernel.org/stable/c/b870256dd2a5648d5ed2f22316b3ac29a7e5ed63
- https://git.kernel.org/stable/c/bbec88e4108e8d6fb468d3817fa652140a44ff28
- https://git.kernel.org/stable/c/c30893ef3d9cde8e7e8e4fd06b53d2c935bbccb1
- https://git.kernel.org/stable/c/cd1065f92eb7ff21b9ba5308a86f33d1670bf926
Modified: 2025-03-21
CVE-2025-21796
In the Linux kernel, the following vulnerability has been resolved:
nfsd: clear acl_access/acl_default after releasing them
If getting acl_default fails, acl_access and acl_default will be released
simultaneously. However, acl_access will still retain a pointer pointing
to the released posix_acl, which will trigger a WARNING in
nfs3svc_release_getacl like this:
------------[ cut here ]------------
refcount_t: underflow; use-after-free.
WARNING: CPU: 26 PID: 3199 at lib/refcount.c:28
refcount_warn_saturate+0xb5/0x170
Modules linked in:
CPU: 26 UID: 0 PID: 3199 Comm: nfsd Not tainted
6.12.0-rc6-00079-g04ae226af01f-dirty #8
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS
1.16.1-2.fc37 04/01/2014
RIP: 0010:refcount_warn_saturate+0xb5/0x170
Code: cc cc 0f b6 1d b3 20 a5 03 80 fb 01 0f 87 65 48 d8 00 83 e3 01 75
e4 48 c7 c7 c0 3b 9b 85 c6 05 97 20 a5 03 01 e8 fb 3e 30 ff <0f> 0b eb
cd 0f b6 1d 8a3
RSP: 0018:ffffc90008637cd8 EFLAGS: 00010282
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff83904fde
RDX: dffffc0000000000 RSI: 0000000000000008 RDI: ffff88871ed36380
RBP: ffff888158beeb40 R08: 0000000000000001 R09: fffff520010c6f56
R10: ffffc90008637ab7 R11: 0000000000000001 R12: 0000000000000001
R13: ffff888140e77400 R14: ffff888140e77408 R15: ffffffff858b42c0
FS: 0000000000000000(0000) GS:ffff88871ed00000(0000)
knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000562384d32158 CR3: 000000055cc6a000 CR4: 00000000000006f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
- https://git.kernel.org/stable/c/1fd94884174bd20beb1773990fd3b1aa877688d9
- https://git.kernel.org/stable/c/2e59b2b68782519560b3d6a41dd66a3d01a01cd3
- https://git.kernel.org/stable/c/55d947315fb5f67a35e4e1d3e01bb886b9c6decf
- https://git.kernel.org/stable/c/6f7cfee1a316891890c505563aa54f3476db52fd
- https://git.kernel.org/stable/c/7faf14a7b0366f153284db0ad3347c457ea70136
- https://git.kernel.org/stable/c/8a1737ae42c928384ab6447f6ee1a882510e85fa
- https://git.kernel.org/stable/c/f8d871523142f7895f250a856f8c4a4181614510
Modified: 2025-03-21
CVE-2025-21811
In the Linux kernel, the following vulnerability has been resolved: nilfs2: protect access to buffers with no active references nilfs_lookup_dirty_data_buffers(), which iterates through the buffers attached to dirty data folios/pages, accesses the attached buffers without locking the folios/pages. For data cache, nilfs_clear_folio_dirty() may be called asynchronously when the file system degenerates to read only, so nilfs_lookup_dirty_data_buffers() still has the potential to cause use after free issues when buffers lose the protection of their dirty state midway due to this asynchronous clearing and are unintentionally freed by try_to_free_buffers(). Eliminate this race issue by adjusting the lock section in this function.
- https://git.kernel.org/stable/c/367a9bffabe08c04f6d725032cce3d891b2b9e1a
- https://git.kernel.org/stable/c/4b08d23d7d1917bef4fbee8ad81372f49b006656
- https://git.kernel.org/stable/c/58c27fa7a610b6e8d44e6220e7dbddfbaccaf439
- https://git.kernel.org/stable/c/72cf688d0ce7e642b12ddc9b2a42524737ec1b4a
- https://git.kernel.org/stable/c/8e1b9201c9a24638cf09c6e1c9f224157328010b
- https://git.kernel.org/stable/c/c437dfac9f7a5a46ac2a5e6d6acd3059e9f68188
- https://git.kernel.org/stable/c/d8ff250e085a4c4cdda4ad1cdd234ed110393143
- https://git.kernel.org/stable/c/e1fc4a90a90ea8514246c45435662531975937d9
Modified: 2025-03-14
CVE-2025-21865
In the Linux kernel, the following vulnerability has been resolved:
gtp: Suppress list corruption splat in gtp_net_exit_batch_rtnl().
Brad Spengler reported the list_del() corruption splat in
gtp_net_exit_batch_rtnl(). [0]
Commit eb28fd76c0a0 ("gtp: Destroy device along with udp socket's netns
dismantle.") added the for_each_netdev() loop in gtp_net_exit_batch_rtnl()
to destroy devices in each netns as done in geneve and ip tunnels.
However, this could trigger ->dellink() twice for the same device during
->exit_batch_rtnl().
Say we have two netns A & B and gtp device B that resides in netns B but
whose UDP socket is in netns A.
1. cleanup_net() processes netns A and then B.
2. gtp_net_exit_batch_rtnl() finds the device B while iterating
netns A's gn->gtp_dev_list and calls ->dellink().
[ device B is not yet unlinked from netns B
as unregister_netdevice_many() has not been called. ]
3. gtp_net_exit_batch_rtnl() finds the device B while iterating
netns B's for_each_netdev() and calls ->dellink().
gtp_dellink() cleans up the device's hash table, unlinks the dev from
gn->gtp_dev_list, and calls unregister_netdevice_queue().
Basically, calling gtp_dellink() multiple times is fine unless
CONFIG_DEBUG_LIST is enabled.
Let's remove for_each_netdev() in gtp_net_exit_batch_rtnl() and
delegate the destruction to default_device_exit_batch() as done
in bareudp.
[0]:
list_del corruption, ffff8880aaa62c00->next (autoslab_size_M_dev_P_net_core_dev_11127_8_1328_8_S_4096_A_64_n_139+0xc00/0x1000 [slab object]) is LIST_POISON1 (ffffffffffffff02) (prev is 0xffffffffffffff04)
kernel BUG at lib/list_debug.c:58!
Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN
CPU: 1 UID: 0 PID: 1804 Comm: kworker/u8:7 Tainted: G T 6.12.13-grsec-full-20250211091339 #1
Tainted: [T]=RANDSTRUCT
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014
Workqueue: netns cleanup_net
RIP: 0010:[
- https://git.kernel.org/stable/c/33eb925c0c26e86ca540a08254806512bf911f22
- https://git.kernel.org/stable/c/37e7644b961600ef0beb01d3970c3034a62913af
- https://git.kernel.org/stable/c/4ccacf86491d33d2486b62d4d44864d7101b299d
- https://git.kernel.org/stable/c/7f86fb07db65a470d0c11f79da551bd9466357dc
- https://git.kernel.org/stable/c/9d03e7e37187ae140e716377599493987fb20c5b
- https://git.kernel.org/stable/c/b70fa591b066d52b141fc430ffdee35b6cc87a66
- https://git.kernel.org/stable/c/cb15bb1bde0ba97cbbed9508e45210dcafec3657
- https://git.kernel.org/stable/c/ff81b14010362f6188ca26fec22ff05e4da45595