Re: [PATCH 2/4] idr: Add a function idr_get()

From: Oleg Nesterov
Date: Mon Sep 25 2017 - 10:13:07 EST


On 09/25, Gargi Sharma wrote:
>
> idr_get(namespace, id) returns a NULL if id is not present
> in the idr tree or returns the pointer to the struct if id is
> present in the idr tree. With this function in the idr library,
> code for pid allocation can be simplified by calling this function
> instead of looking through the pidhash.

Could you explain why find_pid_ns() can't use idr_find() ?

> +void * idr_get(struct idr *idr, int *id)
> +{
> + struct radix_tree_node *node;
> + void __rcu **slot = NULL;
> +
> + __radix_tree_lookup(&idr->idr_rt, *id, &node, &slot);

so why it takes "int *", not just "int" ?

Oleg.