Messages in this thread | | | Date | Thu, 26 Jul 2012 10:29:00 +0530 | From | Srikar Dronamraju <> | Subject | Re: [PATCH] uprobes: teach build_probe_list() to consider the range |
| |
* Oleg Nesterov <oleg@redhat.com> [2012-07-09 15:35:10]:
> Currently build_probe_list() builds the list of all uprobes attached > to the given inode, and the caller should filter out those who don't > fall into the [start,end) range, this is sub-optimal. > > This patch turns find_least_offset_node() into find_node_in_range() > which returns the first node inside the [min,max] range, and changes > build_probe_list() to use this node as a starting point for rb_prev() > and rb_next() to find all other nodes the caller needs. The resulting > list is no longer sorted but we do not care. > > This can speed up both build_probe_list() and the callers, but there > is another reason to introduce find_node_in_range(). It can be used > to figure out whether the given vma has uprobes or not, this will be > needed soon. > > While at it, shift INIT_LIST_HEAD(tmp_list) into build_probe_list(). > > Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
| |