Kushalkhemka/embedding-cve-nvd-dataset huggingface dataset:
tential deadlock. This patch resolves the issue by releasing pinctrl_maps_mutex before calling pinctrl_free(), preventing the deadlock. This bug was discovered and resolved using Coverity Static Analysis Security Testing (SAST) by Synopsys, Inc. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/e65a0dc2e85efb28e182aca50218e8a056d0ce04 - https://git.kernel.org/stable/c/420ce1261907e5dbeda1e4daffd5b6c76f8188c0 - https://git.kernel.org/stable/c/b813e3fd102a959c5b208ed68afe27e0137a561b - https://git.kernel.org/stable/c/01fe2f885f7813f8aed5d3704b384a97b1116a9e - https://git.kernel.org/stable/c/b36efd2e3e22a329444b6b24fa48df6d
org/stable/c/01fe2f885f7813f8aed5d3704b384a97b1116a9e - https://git.kernel.org/stable/c/b36efd2e3e22a329444b6b24fa48df6d20ae66e6 - https://git.kernel.org/stable/c/4038c57bf61631219b31f1bd6e92106ec7f084dc - https://git.kernel.org/stable/c/48a7a7c9571c3e62f17012dd7f2063e926179ddd - https://git.kernel.org/stable/c/adec57ff8e66aee632f3dd1f93787c13d112b7a1
CVE ID: CVE-2024-42091 State: PUBLISHED Published: 2024-07-29T17:35:00.340Z Last Updated: 2025-05-04T09:22:48.439Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: drm/xe: Check pat.ops before dumping PAT settings We may leave pat.ops unset when running on brand new platform or when running as a VF. While the former is unlikely, the latter is valid (future) use case and will cause NPD when someone will try to dump PAT settings by debugfs. It's better to check pointer to pat.ops instead of specific .dump hook, as we have this hook always defined for every .ops variant. Additional Analyst Notes: - CVE Program Container: - CISA ADP
we have this hook always defined for every .ops variant. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/583ce246c7ff9edeb0de49130cdc3d45db8545cb - https://git.kernel.org/stable/c/a918e771e6fbe1fa68932af5b0cdf473e23090cc
CVE ID: CVE-2024-42092 State: PUBLISHED Published: 2024-07-29T17:35:01.209Z Last Updated: 2025-11-03T22:01:24.574Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: gpio: davinci: Validate the obtained number of IRQs Value of pdata->gpio_unbanked is taken from Device Tree. In case of broken DT due to any error this value can be any. Without this value validation there can be out of chips->irqs array boundaries access in davinci_gpio_probe(). Validate the obtained nirq value so that it won't exceed the maximum number of IRQs per bank. Found by Linux Verification Center (linuxtesting.org) with SVACE. Additional Analyst Notes: - CVE
ber of IRQs per bank. Found by Linux Verification Center (linuxtesting.org) with SVACE. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/a8d78984fdc105bc1a38b73e98d32b1bc4222684 - https://git.kernel.org/stable/c/cd75721984337c38a12aeca33ba301d31ca4b3fd - https://git.kernel.org/stable/c/e44a83bf15c4db053ac6dfe96a23af184c9136d9 - https://git.kernel.org/stable/c/70b48899f3f23f98a52c5b1060aefbdc7ba7957b - https://git.kernel.org/stable/c/89d7008af4945808677662a630643b5ea89c6e8d - https://git.kernel.org/stable/c/2d83492259ad746b655f196cd5d1be4b3d0a3782 - https://git.kernel.org/stable/c/c542e51306d5f1eba3af84daa005826223382470
le/c/2d83492259ad746b655f196cd5d1be4b3d0a3782 - https://git.kernel.org/stable/c/c542e51306d5f1eba3af84daa005826223382470 - https://git.kernel.org/stable/c/7aa9b96e9a73e4ec1771492d0527bd5fc5ef9164
CVE ID: CVE-2024-42093 State: PUBLISHED Published: 2024-07-29T17:39:29.470Z Last Updated: 2025-11-03T22:01:26.130Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: net/dpaa2: Avoid explicit cpumask var allocation on stack For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Additional Analyst Notes: - CVE Program Container: - CISA ADP V
CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/b2262b3be27cee334a2fa175ae3afb53f38fb0b1 - https://git.kernel.org/stable/c/763896ab62a672d728f5eb10ac90d98c607a8509 - https://git.kernel.org/stable/c/a55afc0f5f20ba30970aaf7271929dc00eee5e7d - https://git.kernel.org/stable/c/48147337d7efdea6ad6e49f5b8eb894b95868ef0 - https://git.kernel.org/stable/c/69f49527aea12c23b78fb3d0a421950bf44fb4e2 - https://git.kernel.org/stable/c/5e4f25091e6d06e99a23f724c839a58a8776a527 - https://git.kernel.org/stable/c/d33fe1714a44ff540629b149d8fab4ac6967585c
CVE ID: CVE-2024-42094 State: PUBLISHED Published: 2024-07-29T17:39:30.191Z Last Updated: 2025-11-03T22:01:27.638Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: net/iucv: Avoid explicit cpumask var allocation on stack For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vu
PUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/2b085521be5292016097b5e7ca81b26be3f7098d - https://git.kernel.org/stable/c/842afb47d84536fc976fece8fb6c54bea711ad1a - https://git.kernel.org/stable/c/9dadab0db7d904413ea1cdaa13f127da05c31e71 - https://git.kernel.org/stable/c/0af718a690acc089aa1bbb95a93df833d864ef53 - https://git.kernel.org/stable/c/d85ca8179a54ff8cf1e1f8c3c9e3799831319bae - https://git.kernel.org/stable/c/724e7965af054079242b8d6f7e50ee226730a756 - https://git.kernel.org/stable/c/2d090c7f7be3b26fcb80ac04d08a4a8062b1d959 - https://git.kernel.org/stable
0ee226730a756 - https://git.kernel.org/stable/c/2d090c7f7be3b26fcb80ac04d08a4a8062b1d959 - https://git.kernel.org/stable/c/be4e1304419c99a164b4c0e101c7c2a756b635b9
CVE ID: CVE-2024-42095 State: PUBLISHED Published: 2024-07-29T17:39:30.948Z Last Updated: 2025-11-03T22:01:29.111Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: serial: 8250_omap: Implementation of Errata i2310 As per Errata i2310[0], Erroneous timeout can be triggered, if this Erroneous interrupt is not cleared then it may leads to storm of interrupts, therefore apply Errata i2310 solution. [0] https://www.ti.com/lit/pdf/sprz536 page 23 Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/cb879300669881970eabebe64bd509dbbe42b9de - https://git.kernel.org/stab
nt: References: - https://git.kernel.org/stable/c/cb879300669881970eabebe64bd509dbbe42b9de - https://git.kernel.org/stable/c/87257a28271c828a98f762bf2dd803c1793d2b5b - https://git.kernel.org/stable/c/98840e410d53329f5331ecdce095e740791963d0 - https://git.kernel.org/stable/c/e67d7f38008e56fb691b6a72cadf16c107c2f48b - https://git.kernel.org/stable/c/6270051f656004ca5cde644c73cb1fa4d718792e - https://git.kernel.org/stable/c/9d141c1e615795eeb93cd35501ad144ee997a826
CVE ID: CVE-2024-42096 State: PUBLISHED Published: 2024-07-29T17:39:31.620Z Last Updated: 2025-11-03T22:01:30.636Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: x86: stop playing stack games in profile_pc() The 'profile_pc()' function is used for timer-based profiling, which isn't really all that relevant any more to begin with, but it also ends up making assumptions based on the stack layout that aren't necessarily valid. Basically, the code tries to account the time spent in spinlocks to the caller rather than the spinlock, and while I support that as a concept, it's not worth the code complexity or the KASAN warnings when n
han the spinlock, and while I support that as a concept, it's not worth the code complexity or the KASAN warnings when no serious profiling is done using timers anyway these days. And the code really does depend on stack layout that is only true in the simplest of cases. We've lost the comment at some point (I think when the 32-bit and 64-bit code was unified), but it used to say: Assume the lock function has either no stack frame or a copy of eflags from PUSHF. which explains why it just blindly loads a word or two straight off the stack pointer and then takes a minimal look at the values to just check if they might be eflags or the return pc: Eflags always has bits 22 and up cleared unlike
ok at the values to just check if they might be eflags or the return pc: Eflags always has bits 22 and up cleared unlike kernel addresses but that basic stack layout assumption assumes that there isn't any lock debugging etc going on that would complicate the code and cause a stack frame. It causes KASAN unhappiness reported for years by syzkaller [1] and others [2]. With no real practical reason for this any more, just remove the code. Just for historical interest, here's some background commits relating to this code from 2006: 0cb91a229364 ("i386: Account spinlocks to the caller during profiling for !FP kernels") 31679f38d886 ("Simplify profile_pc on x86-64") and a code unification from 20
caller during profiling for !FP kernels") 31679f38d886 ("Simplify profile_pc on x86-64") and a code unification from 2009: ef4512882dbe ("x86: time_32/64.c unify profile_pc") but the basics of this thing actually goes back to before the git tree. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/65ebdde16e7f5da99dbf8a548fb635837d78384e - https://git.kernel.org/stable/c/27c3be840911b15a3f24ed623f86153c825b6b29 - https://git.kernel.org/stable/c/49c09ca35a5f521d7fa18caf62fdf378f15e8aa4 - https://git.kernel.org/stable/c/2d07fea561d64357fb7b3f3751e653bf20306d77 - https://git.kernel.org/stable/c/161cef818545ecf980f0e2ebaf8ba7
l.org/stable/c/2d07fea561d64357fb7b3f3751e653bf20306d77 - https://git.kernel.org/stable/c/161cef818545ecf980f0e2ebaf8ba7326ce53c2b - https://git.kernel.org/stable/c/16222beb9f8e5ceb0beeb5cbe54bef16df501a92 - https://git.kernel.org/stable/c/a3b65c8cbc139bfce9541bc81c1bb766e5ba3f68 - https://git.kernel.org/stable/c/093d9603b60093a9aaae942db56107f6432a5dca
CVE ID: CVE-2024-42097 State: PUBLISHED Published: 2024-07-29T17:39:32.470Z Last Updated: 2025-11-03T22:01:32.160Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: ALSA: emux: improve patch ioctl data validation In load_data(), make the validation of and skipping over the main info block match that in load_guspatch(). In load_guspatch(), add checking that the specified patch length matches the actually supplied data, like load_data() already did. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/40d7def67841343c10f8642a41031fecbb248bab - https://git.kernel.or
richment: References: - https://git.kernel.org/stable/c/40d7def67841343c10f8642a41031fecbb248bab - https://git.kernel.org/stable/c/79d9a000f0220cdaba1682d2a23c0d0c61d620a3 - https://git.kernel.org/stable/c/d23982ea9aa438f35a8c8a6305943e98a8db90f6 - https://git.kernel.org/stable/c/7a18293fd8d8519c2f7a03753bc1583b18e3db69 - https://git.kernel.org/stable/c/d0ff2443fcbb472206d45a5d2a90cc694065804e - https://git.kernel.org/stable/c/d8f5ce3cb9adf0c72e2ad6089aba02d7a32469c2 - https://git.kernel.org/stable/c/87039b83fb7bfd7d0e0499aaa8e6c049906b4d14 - https://git.kernel.org/stable/c/89b32ccb12ae67e630c6453d778ec30a592a212f
CVE ID: CVE-2024-42098 State: PUBLISHED Published: 2024-07-29T17:39:33.395Z Last Updated: 2025-11-03T22:01:33.618Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: crypto: ecdh - explicitly zeroize private_key private_key is overwritten with the key parameter passed in by the caller (if present), or alternatively a newly generated private key. However, it is possible that the caller provides a key (or the newly generated key) which is shorter than the previous key. In that scenario, some key material from the previous key would not be overwritten. The easiest solution is to explicitly zeroize the entire private_key array first. N
evious key would not be overwritten. The easiest solution is to explicitly zeroize the entire private_key array first. Note that this patch slightly changes the behavior of this function: previously, if the ecc_gen_privkey failed, the old private_key would remain. Now, the private_key is always zeroized. This behavior is consistent with the case where params.key is set and ecc_is_key_valid fails. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/39173b04abda87872b43c331468a4a14f8f05ce8 - https://git.kernel.org/stable/c/fd7ef325911eba1b7191b83cb580463242f2090d - https://git.kernel.org/stable/c/80575b252ab0358b7e93895b2a51
nel.org/stable/c/fd7ef325911eba1b7191b83cb580463242f2090d - https://git.kernel.org/stable/c/80575b252ab0358b7e93895b2a510beb3cb3f975 - https://git.kernel.org/stable/c/d96187eb8e59b572a8e6a68b6a9837a867ea29df - https://git.kernel.org/stable/c/73e5984e540a76a2ee1868b91590c922da8c24c9
CVE ID: CVE-2024-42099 State: PUBLISHED Published: 2024-07-30T07:45:55.643Z Last Updated: 2025-05-04T09:22:58.973Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: s390/dasd: Fix invalid dereferencing of indirect CCW data pointer Fix invalid dereferencing of indirect CCW data pointer in dasd_eckd_dump_sense() that leads to a kernel panic in error cases. When using indirect addressing for DASD CCWs (IDAW) the CCW CDA pointer does not contain the data address itself but a pointer to the IDAL. This needs to be translated from physical to virtual as well before using it. This dereferencing is also used for dasd_page_cache and also fi
slated from physical to virtual as well before using it. This dereferencing is also used for dasd_page_cache and also fixed although it is very unlikely that this code path ever gets used. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/c116475f7d6410b1e6d399207ac75de6cf9c3652 - https://git.kernel.org/stable/c/b3a58f3b90f564f42a5c35778d8c5107b2c2150b
CVE ID: CVE-2024-42100 State: PUBLISHED Published: 2024-07-30T07:45:56.462Z Last Updated: 2025-05-04T12:57:36.650Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: clk: sunxi-ng: common: Don't call hw_to_ccu_common on hw without common In order to set the rate range of a hw sunxi_ccu_probe calls hw_to_ccu_common() assuming all entries in desc->ccu_clks are contained in a ccu_common struct. This assumption is incorrect and, in consequence, causes invalid pointer de-references. Remove the faulty call. Instead, add one more loop that iterates over the ccu_clks and sets the rate range, if required. Additional Analyst Notes: - CVE Pro
one more loop that iterates over the ccu_clks and sets the rate range, if required. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/14c78d69dbca6a28af14095f639ec4318ec07fdc - https://git.kernel.org/stable/c/7a0e2738cb6da5a55c9908dff333600aeb263e07 - https://git.kernel.org/stable/c/ea977d742507e534d9fe4f4d74256f6b7f589338
CVE ID: CVE-2024-42101 State: PUBLISHED Published: 2024-07-30T07:45:57.384Z Last Updated: 2025-11-03T22:01:35.079Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: drm/nouveau: fix null pointer dereference in nouveau_connector_get_modes In nouveau_connector_get_modes(), the return value of drm_mode_duplicate() is assigned to mode, which will lead to a possible NULL pointer dereference on failure of drm_mode_duplicate(). Add a check to avoid npd. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/9baf60323efa992b7c915094529f0a1882c34e7e - https://git.kernel.org
ichment: References: - https://git.kernel.org/stable/c/9baf60323efa992b7c915094529f0a1882c34e7e - https://git.kernel.org/stable/c/e36364f5f3785d054a94e57e971385284886d41a - https://git.kernel.org/stable/c/274cba8d2d1b48c72d8bd90e76c9e2dc1aa0a81d - https://git.kernel.org/stable/c/f48dd3f19614022f2e1b794fbd169d2b4c398c07 - https://git.kernel.org/stable/c/1f32535238493008587a8c5cb17eb2ca097592ef - https://git.kernel.org/stable/c/744b229f09134ccd091427a6f9ea6d97302cfdd9 - https://git.kernel.org/stable/c/7db5411c5d0bd9c29b8c2ad93c36b5c16ea46c9e - https://git.kernel.org/stable/c/80bec6825b19d95ccdfd3393cf8ec15ff2a749b4
CVE ID: CVE-2024-42102 State: PUBLISHED Published: 2024-07-30T07:45:58.423Z Last Updated: 2025-11-03T22:01:36.684Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: Revert "mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again" Patch series "mm: Avoid possible overflows in dirty throttling". Dirty throttling logic assumes dirty limits in page units fit into 32-bits. This patch series makes sure this is true (see patch 2/2 for more details). This patch (of 2): This reverts commit 9319b647902cbd5cc884ac08a8a6d54ce111fc78. The commit is broken in several ways. Firstly, the removed (u64) cast from the multiplication wi
84ac08a8a6d54ce111fc78. The commit is broken in several ways. Firstly, the removed (u64) cast from the multiplication will introduce a multiplication overflow on 32-bit archs if wb_thresh * bg_thresh >= 1<<32 (which is actually common - the default settings with 4GB of RAM will trigger this). Secondly, the div64_u64() is unnecessarily expensive on 32-bit archs. We have div64_ul() in case we want to be safe & cheap. Thirdly, if dirty thresholds are larger than 1<<32 pages, then dirty balancing is going to blow up in many other spectacular ways anyway so trying to fix one possible overflow is just moot. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - h
sible overflow is just moot. Additional Analyst Notes: - CVE Program Container: - CISA ADP Vulnrichment: References: - https://git.kernel.org/stable/c/253f9ea7e8e53a5176bd80ceb174907b10724c1a - https://git.kernel.org/stable/c/23a28f5f3f6ca1e4184bd0e9631cd0944cf1c807 - https://git.kernel.org/stable/c/145faa3d03688cbb7bbaaecbd84c01539852942c - https://git.kernel.org/stable/c/2820005edae13b140f2d54267d1bd6bb23915f59 - https://git.kernel.org/stable/c/cbbe17a324437c0ff99881a3ee453da45b228a00 - https://git.kernel.org/stable/c/f6620df12cb6bdcad671d269debbb23573502f9d - https://git.kernel.org/stable/c/000099d71648504fb9c7a4616f92c2b70c3e44ec - https://git.kernel.org/stable/c/30139c702048f1097342a313
.kernel.org/stable/c/000099d71648504fb9c7a4616f92c2b70c3e44ec - https://git.kernel.org/stable/c/30139c702048f1097342a31302cbd3d478f50c63
CVE ID: CVE-2024-42103 State: PUBLISHED Published: 2024-07-30T07:45:59.220Z Last Updated: 2025-11-03T22:01:38.141Z Vendors: Linux Products: Linux Description: In the Linux kernel, the following vulnerability has been resolved: btrfs: fix adding block group to a reclaim list and the unused list during reclaim There is a potential parallel list adding for retrying in btrfs_reclaim_bgs_work and adding to the unused list. Since the block group is removed from the reclaim list and it is on a relocation work, it can be added into the unused list in parallel. When that happens, adding it to the reclaim list will corrupt the list head and trigger list corruption like below. Fix it by taking fs_info-
ding it to the reclaim list will corrupt the list head and trigger list corruption like below. Fix it by taking fs_info->unused_bgs_lock. [177.504][T2585409] BTRFS error (device nullb1): error relocating ch= unk 2415919104 [177.514][T2585409] list_del corruption. next->prev should be ff1100= 0344b119c0, but was ff11000377e87c70. (next=3Dff110002390cd9c0) [177.529][T2585409] ------------[ cut here ]------------ [177.537][T2585409] kernel BUG at lib/list_debug.c:65! [177.545][T2585409] Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN NOPTI [177.555][T2585409] CPU: 9 PID: 2585409 Comm: kworker/u128:2 Tainted: G W 6.10.0-rc5-kts #1 [177.568][T2585409] Hardware name: Supermicro SYS-520P-WTR/X12S
5409 Comm: kworker/u128:2 Tainted: G W 6.10.0-rc5-kts #1 [177.568][T2585409] Hardware name: Supermicro SYS-520P-WTR/X12SPW-TF, BIOS 1.2 02/14/2022 [177.579][T2585409] Workqueue: events_unbound btrfs_reclaim_bgs_work[btrfs] [177.589][T2585409] RIP: 0010:__list_del_entry_valid_or_report.cold+0x70/0x72 [177.624][T2585409] RSP: 0018:ff11000377e87a70 EFLAGS: 00010286 [177.633][T2585409] RAX: 000000000000006d RBX: ff11000344b119c0 RCX:0000000000000000 [177.644][T2585409] RDX: 000000000000006d RSI: 0000000000000008 RDI:ffe21c006efd0f40 [177.655][T2585409] RBP: ff110002e0509f78 R08: 0000000000000001 R09:ffe21c006efd0f08 [177.665][T2585409] R10: ff11000377e87847 R11: 0000000000000000 R12:ff110002390c
: 0000000000000001 R09:ffe21c006efd0f08 [177.665][T2585409] R10: ff11000377e87847 R11: 0000000000000000 R12:ff110002390cd9c0 [177.676][T2585409] R13: ff11000344b119c0 R14: ff110002e0508000 R15:dffffc0000000000 [177.687][T2585409] FS: 0000000000000000(0000) GS:ff11000fec880000(0000) knlGS:0000000000000000 [177.700][T2585409] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [177.709][T2585409] CR2: 00007f06bc7b1978 CR3: 0000001021e86005 CR4:0000000000771ef0 [177.720][T2585409] DR0: 0000000000000000 DR1: 0000000000000000 DR2:0000000000000000 [177.731][T2585409] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7:0000000000000400 [177.742][T2585409] PKRU: 55555554 [177.748][T2585409] Call Trace: [17
000000 DR6: 00000000fffe0ff0 DR7:0000000000000400 [177.742][T2585409] PKRU: 55555554 [177.748][T2585409] Call Trace: [177.753][T2585409] <TASK> [177.759][T2585409] ? __die_body.cold+0x19/0x27 [177.766][T2585409] ? die+0x2e/0x50 [177.772][T2585409] ? do_trap+0x1ea/0x2d0 [177.779][T2585409] ? __list_del_entry_valid_or_report.cold+0x70/0x72 [177.788][T2585409] ? do_error_trap+0xa3/0x160 [177.795][T2585409] ? __list_del_entry_valid_or_report.cold+0x70/0x72 [177.805][T2585409] ? handle_invalid_op+0x2c/0x40 [177.812][T2585409] ? __list_del_entry_valid_or_report.cold+0x70/0x72 [177.820][T2585409] ? exc_invalid_op+0x2d/0x40 [177.827][T2585409] ? asm_exc_invalid_op+0x1a/0x20 [177.834][T2585409] ? __l
7.820][T2585409] ? exc_invalid_op+0x2d/0x40 [177.827][T2585409] ? asm_exc_invalid_op+0x1a/0x20 [177.834][T2585409] ? __list_del_entry_valid_or_report.cold+0x70/0x72 [177.843][T2585409] btrfs_delete_unused_bgs+0x3d9/0x14c0 [btrfs] There is a similar retry_list code in btrfs_delete_unused_bgs(), but it is safe, AFAICS. Since the block group was in the unused list, the used bytes should be 0 when it was added to the unused list. Then, it checks block_group->{used,reserved,pinned} are still 0 under the block_group->lock. So, they should be still eligible for the unused list, not the reclaim list. The reason it is safe there it's because because we're holding space_info->groups_sem in write mode.