{"id":"CVE-2026-89566","revision":"f980d7cd916041149f17f47bc7f77b35","records":[{"revision":"f980d7cd916041149f17f47bc7f77b35","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-89566","aliases":[],"title":"jbd2: check need_resched() when skipping busy checkpoint buffers","description":"In the Linux kernel, the following vulnerability has been resolved:\n\njbd2: check need_resched() when skipping busy checkpoint buffers\n\njournal_shrink_one_cp_list() skips busy checkpoint buffers when called\nwith JBD2_SHRINK_BUSY_SKIP.  The continue statement on this path also\nskips the need_resched() check at the end of the loop body.\n\nConsequently, when a checkpoint list contains mostly busy buffers, the\nshrinker can walk the entire list while holding journal->j_list_lock,\neven when a reschedule has been requested.  Large checkpoint lists under\nmemory pressure can therefore cause long lock hold times and leave other\nCPUs spinning on j_list_lock, resulting in soft lockups or RCU stalls.\n\nRoute the busy-buffer path through the need_resched() check so that the\nshrinker can release j_list_lock and reschedule promptly, restoring\nparity with the clean-buffer path, which already checks need_resched().\nThis does not change which checkpoint buffers are eligible for removal.","state":0,"publishedAt":"2026-09-11T19:44:36.599+00:00","modifiedAt":"2026-10-21T12:47:53.628+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"fs/jbd2/checkpoint.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"b98dba273a0e47dbfade89c9af73c5b012a4eabb\",\n                            \"lessThan\": \"dc7ece0b827fe3b748db685fb85cd2fc3710c3f9\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b98dba273a0e47dbfade89c9af73c5b012a4eabb\",\n                            \"lessThan\": \"f83c23286e54180cdc83a36463a60003534cc290\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b98dba273a0e47dbfade89c9af73c5b012a4eabb\",\n                            \"lessThan\": \"f9182a85991a0ad5cd2940df6db75f40ad90028c\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b98dba273a0e47dbfade89c9af73c5b012a4eabb\",\n                            \"lessThan\": \"595cac7f1b32d009b97f83dd2b2d6a1a445e9bb4\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b98dba273a0e47dbfade89c9af73c5b012a4eabb\",\n                            \"lessThan\": \"f213e12ff5c9590b1034ae8da0e6d09665c772d0\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"9c31bb2684f8035beca0275349d19d679b679ffb\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5fda50e262e65bd553ff777c4b280afd1495a18b\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"557fda9ed70ebf8eda2620ba3d746215285a1303\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5.15.129\",\n                            \"lessThan\": \"5.16\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.50\",\n                            \"lessThan\": \"6.2\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.4.13\",\n                            \"lessThan\": \"6.5\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"fs/jbd2/checkpoint.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"6.5\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"6.5\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.160\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.109\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.50\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2.4\",\n                            \"lessThanOrEqual\": \"7.2.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.3\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[],"references":["https://git.kernel.org/stable/c/dc7ece0b827fe3b748db685fb85cd2fc3710c3f9","https://git.kernel.org/stable/c/f83c23286e54180cdc83a36463a60003534cc290","https://git.kernel.org/stable/c/f9182a85991a0ad5cd2940df6db75f40ad90028c","https://git.kernel.org/stable/c/595cac7f1b32d009b97f83dd2b2d6a1a445e9bb4","https://git.kernel.org/stable/c/f213e12ff5c9590b1034ae8da0e6d09665c772d0"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-89566","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-89566","identifiers":["CVE-2026-89566"]},"retained":false,"historicalAffected":[]}],"coverage":[]}