• Tejun Heo's avatar
    staging/fwserial: don't use PREPARE_WORK · 6c256cb6
    Tejun Heo authored
    PREPARE_[DELAYED_]WORK() are being phased out.  They have few users
    and a nasty surprise in terms of reentrancy guarantee as workqueue
    considers work items to be different if they don't have the same work
    function.
    
    fwtty_peer->work is multiplexed with multiple work functions.
    Introduce fwserial_peer_workfn() which invokes fwtty_peer->workfn and
    always use it as the work function and update the users to set the
    ->workfn field instead of overriding the work function using
    PREPARE_WORK().
    
    It would probably be best to route this with other related updates
    through the workqueue tree.
    
    Compile tested.
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    Acked-by: default avatarPeter Hurley <peter@hurleysoftware.com>
    6c256cb6
fwserial.c 77.1 KB