CVE-2026-46061 in Linux정보

요약

\~에 의해 VulDB • 2026. 05. 28.

리눅스 커널에서 다음 취약점이 해결되었습니다:

jbd2: jbd2_journal_cancel_revoke()에서의 데드락 수정

커밋 f76d4c28a46a("fs/jbd2: __find_get_block()의 수면 버전 사용")는 jbd2_journal_cancel_revoke()가 i_private_lock 대신 folio lock을 보유하는 __find_get_block_nonatomic()을 사용하도록 변경했습니다. 이로 인해 잠금 순서(folio -> buffer)가 깨지고, 파일시스템 블록크기가 페이지크기보다 작을 때 ABBA 데드락이 발생합니다:

T1 T2 ext4_mkdir() ext4_init_new_dir() ext4_append() ext4_getblk() lock_buffer() <- A sync_blockdev() blkdev_writepages() writeback_iter() writeback_get_folio() folio_lock() <- B ext4_journal_get_create_access() jbd2_journal_cancel_revoke() __find_get_block_nonatomic() folio_lock() <- B block_write_full_folio() lock_buffer() <- A

이로 인해 generic/013이 가끔씩 멈출 수 있습니다.

전달된 buffer_head가 bdev에 속하지 않는 경우에만 __find_get_block_nonatomic()을 호출하여 수정합니다. 이는 해당 bdev 별칭을 조회해야 하는 유일한 경우입니다. 그렇지 않으면, 발견된 buffer_head가 전달된 것과 동일하므로 조회가 중복됩니다.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

출처

Do you want to use VulDB in your project?

Use the official API to access entries easily!