libceph: flush msgr queue during mon_client shutdown
We need to flush the msgr workqueue during mon_client shutdown to ensure that any work affecting our embedded ceph_connection is finished so that we can be safely destroyed. Previously, we were flushing the work queue after osd_client shutdown and before mon_client shutdown to ensure that any osd connection refs to authorizers are flushed. Remove the redundant flush, and document in the comment that the mon_client flush is needed to cover that case as well. Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Alex Elder <elder@inktank.com>
This commit is contained in:
parent
89a86be0ce
commit
f3dea7edd3
2 changed files with 8 additions and 7 deletions
|
@ -498,13 +498,6 @@ void ceph_destroy_client(struct ceph_client *client)
|
|||
/* unmount */
|
||||
ceph_osdc_stop(&client->osdc);
|
||||
|
||||
/*
|
||||
* make sure osd connections close out before destroying the
|
||||
* auth module, which is needed to free those connections'
|
||||
* ceph_authorizers.
|
||||
*/
|
||||
ceph_msgr_flush();
|
||||
|
||||
ceph_monc_stop(&client->monc);
|
||||
|
||||
ceph_debugfs_client_cleanup(client);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue