lkml.org 
[lkml]   [2016]   [Feb]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] assoc_array: don't call compare_object() on a node
Date
Jerome Marchand <jmarchan@redhat.com> wrote:

> In assoc_array_insert_into_terminal_node(), we call the
> compare_object() method on all empty slots,

Ummm... That shouldn't happen - the:

if (!ptr) {
free_slot = i;
continue;
}

preceding the line you modified should cause the comparison to be skipped on a
slot if it's empty.

> even when they're not leaves, passing a pointer to an unexpected structure
> to compare_object().

Do you instead mean a metadata pointer rather than an empty slot?

> Currently it causes an out-of-bound read access in keyring_compare_object
> detected by KASan. The issue is easily reproduced with keyutils testsuite.

I don't see it. Did you modify the testsuite, or is it a matter of running it
often enough?

Also, can you include the oops output you get in the patch description,
please?

That said, I can see that there is probably an issue that your patch fixes -
but it's not quite the one you describe (see above).

David

\
 
 \ /
  Last update: 2016-02-22 18:01    [W:0.046 / U:1.288 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site