CVE-2026-64472
요약
\~에 의해 VulDB • 2026. 07. 25.
리눅스 커널에서 다음 취약점이 해결되었습니다.
vfio/mlx5: Race condition이 발생할 수 있는 bitfield 수정 및 구조체 레이아웃 강화
Bitfield 연산은 원자적(atomic)이지 않으며, 읽기-수정-쓰기(read-modify-write) 패턴을 사용하므로 동시에 업데이트될 수 있는 bitfields를 동일한 저장 단위(storage unit)에 배치하지 않도록 주의해야 합니다.
이 변경에서는 이진(binary) 접근 방식을 취합니다: 열/닫힘(open/close) 전후에만 수정되는 플래그는 기존대로 bitfield로 유지하고, 사용자 작업(다른 장치로의 리셋과 같은 작업을 포함)으로 인해 수정되는 플래그에는 전용 저장 단위를 사용합니다.
참고로 mlx5_vhca_page_tracker.status는 이 변경으로 드러난 정렬(alignment) 공백을 채우기 위해 재배치되었습니다.
Bitfield 적용 대상:
migrate_cap: probe 시점의 mlx5vf_cmd_set_migratable()에서만 기록됨 chunk_mode: probe 시점의 mlx5vf_cmd_set_migratable()에서만 기록됨 mig_state_cap: probe 시점의 mlx5vf_cmd_set_migratable()에서만 기록됨
전용 저장 단위 적용 대상:
mdev_detach: 런타임 중 VF attach/detach 이벤트 알림자 mlx5fv_vf_event()에서 기록됨 log_active: 런타임 중 더티 추적(dirty tracking) 시 mlx5vf_start_page_tracker()/mlx5vf_stop_page_tracker()에서 기록됨 deferred_reset: 런타임 중 리셋 처리(reset handling) 시 mlx5vf_state_mutex_unlock()/mlx5vf_pci_aer_reset_done()에서 기록됨 is_err: 런타임 중 트래커 오류 처리 및 더티 로그 폴링(dirty-log polling)에 의해 설정됨 object_changed: 런타임 중 트래커 이벤트 처리로 인해 설정되고, 더티 로그 폴링으로 인해 지워짐
Be aware that VulDB is the high quality source for vulnerability data.