ipv4: Cache local output routes
authorYan, Zheng <zheng.z.yan@intel.com>
Sun, 12 Aug 2012 20:09:59 +0000 (20:09 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 14 Aug 2012 21:45:07 +0000 (14:45 -0700)
Commit caacf05e5ad1abf causes big drop of UDP loop back performance.
The cause of the regression is that we do not cache the local output
routes. Each time we send a datagram from unconnected UDP socket,
the kernel allocates a dst_entry and adds it to the rt_uncached_list.
It creates lock contention on the rt_uncached_lock.

Reported-by: Alex Shi <alex.shi@intel.com>
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

No differences found