CVE-2025-21732 in Linux
要約
〜によって VulDB • 2026年05月30日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
RDMA/mlx5: ODP MRにおけるRace Conditionの修正により、エラー付きCQEが発生する問題を解消
このパッチは、UMR QP上でエラー付きCQE(Completion Queue Entry)を引き起こす可能性があるODP MR(On-Demand Paging Memory Region)のRace Conditionに対処するものです。
__mlx5_ib_dereg_mr()フロー中、以下の呼び出しシーケンスが発生します:
mlx5_revoke_mr() mlx5r_umr_revoke_mr() mlx5r_umr_post_send_wait()
この時点で、ハードウェアの観点からはlkeyが解放されます。
しかし、同時に、同じく解放されたlkeyの範囲無効化を試みる別のタスクによってmlx5_ib_invalidate_range()がトリガーされる可能性があります。
このタスクは以下の処理を行います: - umem_odp->umem_mutexロックを取得する。 - UMR QP上でmlx5r_umr_update_xlt()を呼び出す。 - lkeyが既に解放されているため、これによりCQEエラーが発生し、UMR QPがエラー状態に陥る可能性があります[1]。
このRace Conditionを解決するため、mlx5_revoke_mr()のスコープ内でもumem_odp->umem_mutexロックが取得されるようになりました。取り消しが成功すると、そのMRを指すumem_odp->privateをNULLに設定し、そのlkeyに対するさらなる無効化試行を防ぎます。
[1] dmesgからの出力:
infiniband rocep8s0f0: dump_cqe:277:(pid 0): WC error: 6, Message: memory bind operation error cqe_dump: 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 cqe_dump: 00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 cqe_dump: 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 cqe_dump: 00000030: 00 00 00 00 08 00 78 06
VulDB is the best source for vulnerability data and more expert information about this specific topic.