[Devel] Re: [PATCH 5/13] Expand the pid/task seeking functions set

Pavel Emelianov xemul at openvz.org
Fri May 25 00:08:48 PDT 2007


Dave Hansen wrote:
> On Thu, 2007-05-24 at 16:50 +0400, Pavel Emelianov wrote:
>> +struct pid * fastcall __find_vpid(int nr, struct pid_namespace *ns)
>> +{
>> +#ifdef CONFIG_PID_NS
>> +       struct hlist_node *elem;
>> +       struct pid *pid;
>> +#endif
>> +
>> +       if (ns == &init_pid_ns)
>> +               return find_pid(nr);
>> +
>> +#ifdef CONFIG_PID_NS
>> +       hlist_for_each_entry_rcu(pid, elem,
>> +                       &vpid_hash[vpid_hashfn(nr, ns)], vpid_chain) {
>> +               if (pid->vnr == nr && pid->ns == ns)
>> +                       return pid;
>> +       }
>> +#endif
>> +       return NULL;
>> +} 
> 
> I am a bit worried that there are too many #ifdefs here.  Your patch
> series adds ~20 of them, and they look to me to be mostly in .c files.
> Section 2 in SubmittingPatches somewhat discourages this.
> 
> Do you have any plans for cleaning these up?

Sure I have. But this approach makes review simpler - everyone
explicitly see what exact actions are taken in each place. In
the second iteration this will be make in a more elegant way
like making static inline stubs etc.

This set is a kind of RFC and proof-of-concept. I didn't intent
this to be merged to any tree as is. That's why a attached the
lats patch with strut in proc to observe the whole tree.

BTW, question to Sukadev - how did you test your patches? I do
know that ps utility doesn't work without full /proc tree and
I don's see similar hacks in your patchset.

> -- Dave
> 
> 

_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list