Messages in this thread | | | From | Hubertus Franke <> | Subject | Re: Fwd: [Lse-tech] get_pid() performance fix | Date | Tue, 5 Mar 2002 11:43:44 -0500 |
| |
On Tuesday 05 March 2002 11:26 am, OGAWA Hirofumi wrote: > Hubertus Franke <frankeh@watson.ibm.com> writes: > > @@ -153,13 +155,18 @@ > > if(last_pid & 0xffff8000) > > last_pid = 300; > > next_safe = PID_MAX; > > + goto repeat; > > } > > - goto repeat; > > + if(unlikely(last_pid == beginpid)) > > + goto nomorepids; > > + continue; > > It isn't guaranteed that pid is unique. > > In the case: > task->pid = 300, task->xxx = 301 > pid 301 is free > > This get_pid() returns 301. > > Regards.
No the point of this patch was to limit the search time for finding the next available pid. We are not mocking around with the logic that declares a pid available or not. That stays the same. However, one doesn't need to start every single time from the beginning to find the next available pid.
-- -- Hubertus Franke (frankeh@watson.ibm.com) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |