Hi Dai and all, first of all, apologies for the long delay on my side.
I am referring to Dai's latest webrev at http://cr.opensolaris.org/~dain/6817942 : Prepared by: Dai Ngo <dai.ngo at sun.com> on Mon May 4 23:53:10 PDT 2009 > What would you think about a fix following your idea of always putting > the last used entry upfront the list, but removing the time stamp code? Dai, in the latest version of your webrev you have removed the prev_time code. Thanks. You have also removed the other static declarations, which is good. Let's find some agreement about which fix to integrate, yours or mine (http://cr.opensolaris.org/~nigoroll/rpc_loadbalancing_6817942/). What I do still like about my suggested change is that it reduces complexity for dooming entries and that I viewed it as a starting point for introducing a more scalable data structure for the RPC connection table. But I really do agree now that your proposed solution is better because it involves only minimal change and is very simple. I would like to make one (last?) suggestion, though: In this piece of code ... 1889 if ((i > 1) && (prev != &cm_hd)) { 1890 /* 1891 * remove and re-insert entry at head of list. 1892 */ 1893 *prev = lru_entry->x_next; 1894 lru_entry->x_next = cm_hd; 1895 cm_hd = lru_entry; 1896 } ... it is assumed that prev has been properly set whenever i > 1. I fear that future changes could break this assumption. I would suggest to initialize prev in line 1777 of your CR to make this a little more robust. prev = cmp = &cm_hd; Other than that, I'm happy with your change now. I also want to state again publicly that, in retrospect, I think I have not taken your suggestions as constructively as I would have wanted to. I want to try to be as objective as possible, and I think that in this case I failed to do so. Thank you, Nils