Home
last modified time | relevance | path

Searched hist:a3c00e46efdb4009369971c97203ea67f7630fe4 (Results 1 – 1 of 1) sorted by relevance

/openbmc/linux/net/ipv6/
H A Droute.cdiff a3c00e46efdb4009369971c97203ea67f7630fe4 Mon Oct 20 15:42:43 CDT 2014 Martin KaFai Lau <kafai@fb.com> ipv6: Remove BACKTRACK macro

It is the prep work to reduce the number of calls to fib6_lookup().

The BACKTRACK macro could be hard-to-read and error-prone due to
its side effects (mainly goto).

This patch is to:
1. Replace BACKTRACK macro with a function (fib6_backtrack) with the following
return values:
* If it is backtrack-able, returns next fn for retry.
* If it reaches the root, returns NULL.
2. The caller needs to decide if a backtrack is needed (by testing
rt == net->ipv6.ip6_null_entry).
3. Rename the goto labels in ip6_pol_route() to make the next few
patches easier to read.

Cc: David Miller <davem@davemloft.net>
Cc: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Signed-off-by: David S. Miller <davem@davemloft.net>