File tree 1 file changed +3
-2
lines changed
1 file changed +3
-2
lines changed Original file line number Diff line number Diff line change @@ -804,8 +804,6 @@ static void drm_dp_destroy_mst_branch_device(struct kref *kref)
804
804
struct drm_dp_mst_port * port , * tmp ;
805
805
bool wake_tx = false;
806
806
807
- cancel_work_sync (& mstb -> mgr -> work );
808
-
809
807
/*
810
808
* destroy all ports - don't need lock
811
809
* as there are no more references to the mst branch
@@ -1993,6 +1991,8 @@ void drm_dp_mst_topology_mgr_suspend(struct drm_dp_mst_topology_mgr *mgr)
1993
1991
drm_dp_dpcd_writeb (mgr -> aux , DP_MSTM_CTRL ,
1994
1992
DP_MST_EN | DP_UPSTREAM_IS_SRC );
1995
1993
mutex_unlock (& mgr -> lock );
1994
+ flush_work (& mgr -> work );
1995
+ flush_work (& mgr -> destroy_connector_work );
1996
1996
}
1997
1997
EXPORT_SYMBOL (drm_dp_mst_topology_mgr_suspend );
1998
1998
@@ -2765,6 +2765,7 @@ EXPORT_SYMBOL(drm_dp_mst_topology_mgr_init);
2765
2765
*/
2766
2766
void drm_dp_mst_topology_mgr_destroy (struct drm_dp_mst_topology_mgr * mgr )
2767
2767
{
2768
+ flush_work (& mgr -> work );
2768
2769
flush_work (& mgr -> destroy_connector_work );
2769
2770
mutex_lock (& mgr -> payload_lock );
2770
2771
kfree (mgr -> payloads );
You can’t perform that action at this time.
0 commit comments