[lttng-dev] [PATCH lttng-tools 2/5] Fix: should pass the reg_enum_lookup pointer directly
Francis Deslauriers
francis.deslauriers at efficios.com
Thu Feb 8 11:42:23 EST 2018
2018-02-07 15:48 GMT-05:00 Mathieu Desnoyers <mathieu.desnoyers at efficios.com>:
> ----- On Feb 7, 2018, at 2:36 PM, Francis Deslauriers francis.deslauriers at efficios.com wrote:
>
>> As the ht_hash_enum and ht_match_enum functions are not changing the
>> pointer there is no need to pass the address of the pointer.
>
> The changelog seems too nice. The current situation is that the arguments
> passed to the cds_lfht_lookup() function do not match the args expected by ht_has_enum
> and ht_match_enum, and by chance we probably always end up comparing with garbage ?
>
> The changelog should better describe the current problem.
Here is a revised version:
Fix: calling ht_{hash, match}_enum with wrong argument
ht_hash_enum and ht_match_enum are currently called with the address of the
pointer to a ust_registry_enum rather than the expected pointer to a
ust_registry_enum. This means that those function calls would end up
using garbage for hashing and comparing.
Thank you,
Francis
>
> Thanks,
>
> Mathieu
>
>>
>> Signed-off-by: Francis Deslauriers <francis.deslauriers at efficios.com>
>> ---
>> src/bin/lttng-sessiond/ust-registry.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/bin/lttng-sessiond/ust-registry.c
>> b/src/bin/lttng-sessiond/ust-registry.c
>> index e336b9e..cd6fdac 100644
>> --- a/src/bin/lttng-sessiond/ust-registry.c
>> +++ b/src/bin/lttng-sessiond/ust-registry.c
>> @@ -558,8 +558,8 @@ struct ust_registry_enum *
>> struct lttng_ht_iter iter;
>>
>> cds_lfht_lookup(session->enums->ht,
>> - ht_hash_enum((void *) ®_enum_lookup, lttng_ht_seed),
>> - ht_match_enum, ®_enum_lookup, &iter.iter);
>> + ht_hash_enum((void *) reg_enum_lookup, lttng_ht_seed),
>> + ht_match_enum, reg_enum_lookup, &iter.iter);
>> node = lttng_ht_iter_get_node_str(&iter);
>> if (!node) {
>> goto end;
>> --
>> 2.7.4
>>
>> _______________________________________________
>> lttng-dev mailing list
>> lttng-dev at lists.lttng.org
>> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
>
> --
> Mathieu Desnoyers
> EfficiOS Inc.
> http://www.efficios.com
--
Francis Deslauriers
Software developer
EfficiOS inc.
More information about the lttng-dev
mailing list