Page MenuHomeFreeBSD

ufshci: release the CCB after sending a start stop unit command
ClosedPublic

Authored by jaeyoon on Aug 5 2026, 8:12 AM.
Tags
None
Referenced Files
F170685564: D58669.diff
Sun, Sep 6, 12:46 AM
Unknown Object (File)
Thu, Sep 3, 4:22 PM
Unknown Object (File)
Wed, Sep 2, 7:01 PM
Unknown Object (File)
Tue, Sep 1, 11:54 AM
Unknown Object (File)
Sun, Aug 30, 12:05 PM
Unknown Object (File)
Sun, Aug 30, 12:01 PM
Unknown Object (File)
Thu, Aug 27, 4:57 AM
Unknown Object (File)
Fri, Aug 21, 12:53 PM
Subscribers
None

Details

Summary

ufshci_sim_send_ssu() got a CCB from cam_periph_getccb() but never
returned it. Each call leaked the CCB and one slot of the device's
CCB allocation budget. When the budget runs out, the next
cam_periph_getccb() waits forever and the suspend path hangs.

Release the CCB while the periph lock is still held, as the other CAM
periph drivers do.

Sponsored by: Samsung Electronics

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 75387
Build 72270: arc lint + arc unit