This is the RHEL4 version of this bug. +++ This bug was initially created as a clone of Bug #235648 +++ for function nlm_lookup_host in fs/lockd/host.c, when the host found is not the head in the bucket in the hash table, it will be moved to head. source is like this, --------------------- if (hp != nlm_hosts + hash) { *hp = host->h_next; host->h_next = nlm_hosts[hash]; nlm_hosts[hash] = host; } -------------------------- won't it lose hosts that are originally between the one to search for and the original head? for *hp is not handled after *hp = host->h_next; this problem covers rhel4 and rhel5. i think it fixed in kernel 2.6.20. -- Additional comment from pknirsch on 2007-05-24 10:37 EST -- Reassigning to kernel component. Read ya, Phil
The short answer here is no. See the details and test program in bug #235648 as to why. Please reopen if my conclusion is incorrect.