HomeFreeBSD

Add SIM refcounting. This is slightly different from what DragonFly
rS186185Unpublished

Unpublished Commit ยท Learn More

No further details are available.

Description

Add SIM refcounting. This is slightly different from what DragonFly
does - in DragonFly, it's cam_sim_release() what actually frees the
SIM; cam_sim_free does nothing more than calling cam_sim_release().
Here, we drain in cam_sim_free, waiting for refcount to drop to zero.
We cannot do the same think DragonFly does, because after cam_sim_free
returns, client would destroy the sim->mtx, and CAM would trip over
an initialized mutex.

Reviewed by: scottl
Approved by: rwatson (mentor)
Sponsored by: FreeBSD Foundation

Details

Provenance
traszAuthored on
Parents
rS186184: Get rid of dead_sim. There is no way to make it work - any attempt
Branches
Unknown
Tags
Unknown

Event Timeline