On 03/10/2016 04:55 AM, Alberto Garcia wrote: > The QUORUM_REPORT_BAD event is emitted whenever there's an I/O error > in a child of a Quorum device. This event is emitted at a maximum rate > of 1 per second. This means that an error in one of the children will > mask errors in the other children if they happen within the same 1 > second interval. > > This patch modifies qapi_event_throttle_equal() so QUORUM_REPORT_BAD > events are kept separately if they come from different children. > > Signed-off-by: Alberto Garcia <be...@igalia.com> > Reviewed-by: Max Reitz <mre...@redhat.com> > --- > monitor.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/monitor.c b/monitor.c > index e99ca8c..c9fe862 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -572,6 +572,10 @@ static unsigned int qapi_event_throttle_hash(const void > *key) > hash += g_str_hash(qdict_get_str(evstate->data, "id")); > } > > + if (evstate->event == QAPI_EVENT_QUORUM_REPORT_BAD) { > + hash += g_str_hash(qdict_get_str(evstate->data, "node-name"));
Is ^= any better than += when computing hashes, so that carry bits aren't weakening the distribution of bits? But as long as the computation is consistent, I'm not too worried, since you were copying the line above. Reviewed-by: Eric Blake <ebl...@redhat.com> -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature