Linuxカーネルにおいて、以下の脆弱性が修正されました。s390/cioのcss_alloc_subchannel()関数のデバイスライフサイクル管理に関する修正です。css_alloc_subchannel()はDMAマスクを設定する前にdevice_initialize()を呼び出します。dma_set_coherent_mask()またはdma_set_mask()が失敗した場合、エラーパスはデバイスモデルの参照カウントをバイパスして直接サブチャネル構造体を解放していました。device_initialize()が呼び出された後は、埋め込みのstruct deviceをput_device()で解放する必要があり、これによりリリースコールバックがコンテナ構造体を解放します。エラーパスではkfree()を直接呼び出すのではなく、put_device()で最初のデバイス参照を放棄するように修正しました。これにより、正しいデバイスのライフタイム管理が保証され、use-after-freeやダブルフリーの問題を回避できます。
Linux Linux Kernel 3.10 以上 6.6.128 未満 Linux Kernel 6.13 以上 6.18.14 未満 Linux Kernel 6.19 以上 6.19.4 未満 Linux Kernel 6.7 以上 6.12.75 未満
・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアが完全に停止する可能性があります。
リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。
有効期限後のメモリの解放の欠如(CWE-401) [NVD評価]
CVE-2026-45981
National Vulnerability Database (NVD) : CVE-2026-45981 関連文書 : s390/cio: Fix device lifecycle handling in css_alloc_subchannel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/abb6e07f46a740cda4f07d1b561ae4eaa7a1df42) 関連文書 : s390/cio: Fix device lifecycle handling in css_alloc_subchannel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/f96c5ccf95ae5f27218c1ce2d6a3ad2d3e105424) 関連文書 : s390/cio: Fix device lifecycle handling in css_alloc_subchannel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/c35cfbb5341ba05ad1b4476ffc3c21cc3ff8f603) 関連文書 : s390/cio: Fix device lifecycle handling in css_alloc_subchannel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/f65c75b0b9b5a390bc3beadcde0a6fbc3ad118f7) 関連文書 : s390/cio: Fix device lifecycle handling in css_alloc_subchannel() - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/6715560527e343a387e4a0d2e6c401748e89fa55)
[2026年06月17日] 掲載