CVE-2026-90107 PUBLISHED

net/smc: free pending qentry in smc_llc_flow_stop() before memset

Assigner: Linux
Reserved: 11.09.2026 Published: 17.09.2026 Updated: 17.09.2026

In the Linux kernel, the following vulnerability has been resolved:

net/smc: free pending qentry in smc_llc_flow_stop() before memset

smc_llc_flow_stop() resets a flow struct with a blind memset:

<pre>spin_lock_bh(&lgr->llc_flow_lock); memset(flow, 0, sizeof(*flow)); flow->type = SMC_LLC_FLOW_NONE; spin_unlock_bh(&lgr->llc_flow_lock); </pre>

If flow->qentry is non-NULL at this point the pointer is overwritten without the allocation being freed, leaking one kmalloc object.

A late-arriving duplicate CONFIRM_LINK or ADD_LINK_CONT message can set flow->qentry after the legitimate message has been consumed by the waiter via smc_llc_flow_qentry_clr() (which NULLs the pointer but leaves flow->type non-zero) but before the flow completes and smc_llc_flow_stop() runs. In that window the duplicate is stashed into flow->qentry, and then lost when smc_llc_flow_stop() zeros the struct.

Call smc_llc_flow_qentry_del() inside the lock before the memset. smc_llc_flow_qentry_del() already checks flow->qentry before freeing, so the normal case where no entry is pending is a no-op.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to 8e3deb150a5237b672c4579e69a6deb02027dbed (excl.)
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to 11bc373ee6630709f0c2da2e7860c23d503c9e9d (excl.)
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to 032aec7d03c9102616b98fea74f8f7145e7f867c (excl.)
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to 957dba2b8b5aebfe09caa6a6b22b958079082eab (excl.)
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to f03aa5d36ae3c4068a1c3885146be99aa7fd9307 (excl.)
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to 0879ea157acc1ac6752f6fcb755d1f91a2359238 (excl.)
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to 5ff429dd6725fa6c1e17a4ed0be8ab675f67a98b (excl.)
  • affected from 555da9af827d95134656fa459c8f3ece04dd867a to 5ee0ceddc7785c6dcf4a8107fef01f0414a354f4 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.8 is affected
  • unaffected from 0 to 5.8 (excl.)
  • unaffected from 5.10.270 to 5.10.* (incl.)
  • unaffected from 5.15.221 to 5.15.* (incl.)
  • unaffected from 6.1.188 to 6.1.* (incl.)
  • unaffected from 6.6.157 to 6.6.* (incl.)
  • unaffected from 6.12.110 to 6.12.* (incl.)
  • unaffected from 6.18.52 to 6.18.* (incl.)
  • unaffected from 7.2.6 to 7.2.* (incl.)
  • unaffected from 7.3-rc1 to * (incl.)

References