On Wed 07 May at 13:36:00 +0200 Nadia.Derbey@bull.net said:Does idr_remove_all() need an rcu_dereference() in the loop preceeding the above, where it does: while (n > IDR_BITS && p) { n -= IDR_BITS; *paa++ = p; ----> p = p->ary[(id >> n) & IDR_MASK]; } idr_replace() also has that loop without rcu_derefernce, but I _think_ I see why that one should be ok. At least there the comment is clear that locking at a higher level should be happening. And then idr_remove_all() is almost unused and it looks like it is only in serialized places. Otherwise, thanks for redoing...This patch set was much easier to digest and looks reasonable to me. I've been having some machine issues, but hope to give this patch set a run still on a 128way machine and mainline to provide some additional datapoints. -- Tim Pepper <lnxninja@linux.vnet.ibm.com> IBM Linux Technology Center --
| debian developer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Greg Kroah-Hartman | [PATCH 002/196] Chinese: rephrase English introduction in HOWTO |
| Jan Engelhardt | intel iommu (Re: -mm merge plans for 2.6.23) |
| Vladislav Bolkhovitin | Re: Integration of SCST in the mainstream Linux kernel |
git: | |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| Antonio Almeida | HTB accuracy for high speed |
| David Miller | [GIT]: Networking |
