Hello Alex,
Yes, I spend long time in this code and the dependance with
low level qos code introduce many complications... I have tried
many things to optimize this but changing the current rt_cache
structure will broke some routings dependances... even RCU
spin_lock optimization don't increase perf.
RCU won't buy you a lot without SMP. Stupid question: did you
readprofile/oprofile it once? I'd be interested to get some numbers.
as you said :), what about not adding new entries per packets in the
rt_cache ? that way hash key will miss and submit routing lookup and
gc_.. will have a simple low job not the current big linearization aging task.
I was thinking of the _intern_hash func to not append new entries ?
Again stupid question: Is it really the lookup that consumes the precious time?
Best regards,
Roberto Nibali, ratz
--
echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq' | dc
|