Contributed by pitrh on 2015-11-09 from the the twisty little paths dept.

Our next u2k15 report comes from Martin Pieuchot (mpi@):

I spent most of my time with bluhm@ doing the necessary plumbing to ensure that resources obtained from a route lookup are always valid as long as a CPU processing packets in the hot path need to access them. As explained two years ago my ground work has been to limit the number of globally accessible data structures to a single one: the routing table. So the idea is to convert all the lookups in the hot path to use the routing table and then turn the routing table lookups' code MP-safe.

And that's exactly what Alexander did in ``in_arpinput()'' as a result of our work during u2k15.

We now have to make sure the interface pointers obtained from route entries are always valid to be able to take ``in_arpinput()'' outside of the KERNEL_LOCK.

Once this is done the next big step is pf_test() which should allow us to unlock the IPv4 forwarding path... Stay tunned!

I'd like to thank Stefan Sperling for organising this awesome hackathon and IN-Berlin for hosting us.