• Stefan Richter's avatar
    firewire: sbp2: protect a reference counter properly · 0765cbd3
    Stefan Richter authored
    The assertion in the comment in sbp2_allow_block() is no longer true.
    Or maybe it never was true.  At least now, the sole caller of
    sbp2_allow_block(), sbp2_login, can run concurrently to one of
    sbp2_unblock()'s callers, sbp2_remove.
    
    sbp2_login is performed by sbp2_logical_unit.work.
    sbp2_remove is performed by fw_device.work.
    sbp2_remove cancels sbp2_logical_unit.work, but only after it called
    sbp2_unblock.
    Signed-off-by: default avatarStefan Richter <stefanr@s5r6.in-berlin.de>
    0765cbd3
sbp2.c 47.2 KB