mirror of
https://github.com/samba-team/samba.git
synced 2025-01-10 01:18:15 +03:00
s3:cleanupd: use MSG_SMB_BRL_VALIDATE to signal cleanupd unclean process shutdown
Since6423ca4bf2
messaging_send_all() broadcasts messages in a cluster, so cleanupd receives those broadcasts and acts upon it by re-broadcasting the message. Result: message storm. By reactivating the currently unused MSG_SMB_BRL_VALIDATE for the trigger message to cleanupd we avoid the storm. Note that MSG_SMB_BRL_VALIDATE was unused only in the sense that noone *listened* to it, but we were still *sending* the message in smbd_parent_ctdb_reconfigured().de6fe2a1dd
removed listening for MSG_SMB_BRL_VALIDATE from cleanupd. This commits brings it back. Bug: https://bugzilla.samba.org/show_bug.cgi?id=13414 Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
This commit is contained in:
parent
a753ccfd94
commit
d3b9d11bad
@ -757,7 +757,7 @@ static void cleanup_timeout_fn(struct tevent_context *event_ctx,
|
||||
parent->cleanup_te = NULL;
|
||||
|
||||
messaging_send_buf(parent->msg_ctx, parent->cleanupd,
|
||||
MSG_SMB_UNLOCK, NULL, 0);
|
||||
MSG_SMB_BRL_VALIDATE, NULL, 0);
|
||||
}
|
||||
|
||||
static void cleanupd_started(struct tevent_req *req)
|
||||
|
@ -71,7 +71,7 @@ struct tevent_req *smbd_cleanupd_send(TALLOC_CTX *mem_ctx,
|
||||
return tevent_req_post(req, ev);
|
||||
}
|
||||
|
||||
status = messaging_register(msg, NULL, MSG_SMB_UNLOCK,
|
||||
status = messaging_register(msg, NULL, MSG_SMB_BRL_VALIDATE,
|
||||
smbd_cleanupd_unlock);
|
||||
if (tevent_req_nterror(req, status)) {
|
||||
return tevent_req_post(req, ev);
|
||||
|
Loading…
Reference in New Issue
Block a user