diff options
Diffstat (limited to 'net/ipv4/fib_frontend.c')
| -rw-r--r-- | net/ipv4/fib_frontend.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c index 60123905dbbf..732d8f088b13 100644 --- a/net/ipv4/fib_frontend.c +++ b/net/ipv4/fib_frontend.c | |||
| @@ -59,6 +59,13 @@ struct fib_table *ip_fib_main_table; | |||
| 59 | #define FIB_TABLE_HASHSZ 1 | 59 | #define FIB_TABLE_HASHSZ 1 |
| 60 | static struct hlist_head fib_table_hash[FIB_TABLE_HASHSZ]; | 60 | static struct hlist_head fib_table_hash[FIB_TABLE_HASHSZ]; |
| 61 | 61 | ||
| 62 | static void __init fib4_rules_init(void) | ||
| 63 | { | ||
| 64 | ip_fib_local_table = fib_hash_init(RT_TABLE_LOCAL); | ||
| 65 | hlist_add_head_rcu(&ip_fib_local_table->tb_hlist, &fib_table_hash[0]); | ||
| 66 | ip_fib_main_table = fib_hash_init(RT_TABLE_MAIN); | ||
| 67 | hlist_add_head_rcu(&ip_fib_main_table->tb_hlist, &fib_table_hash[0]); | ||
| 68 | } | ||
| 62 | #else | 69 | #else |
| 63 | 70 | ||
| 64 | #define FIB_TABLE_HASHSZ 256 | 71 | #define FIB_TABLE_HASHSZ 256 |
| @@ -905,14 +912,8 @@ void __init ip_fib_init(void) | |||
| 905 | 912 | ||
| 906 | for (i = 0; i < FIB_TABLE_HASHSZ; i++) | 913 | for (i = 0; i < FIB_TABLE_HASHSZ; i++) |
| 907 | INIT_HLIST_HEAD(&fib_table_hash[i]); | 914 | INIT_HLIST_HEAD(&fib_table_hash[i]); |
| 908 | #ifndef CONFIG_IP_MULTIPLE_TABLES | 915 | |
| 909 | ip_fib_local_table = fib_hash_init(RT_TABLE_LOCAL); | ||
| 910 | hlist_add_head_rcu(&ip_fib_local_table->tb_hlist, &fib_table_hash[0]); | ||
| 911 | ip_fib_main_table = fib_hash_init(RT_TABLE_MAIN); | ||
| 912 | hlist_add_head_rcu(&ip_fib_main_table->tb_hlist, &fib_table_hash[0]); | ||
| 913 | #else | ||
| 914 | fib4_rules_init(); | 916 | fib4_rules_init(); |
| 915 | #endif | ||
| 916 | 917 | ||
| 917 | register_netdevice_notifier(&fib_netdev_notifier); | 918 | register_netdevice_notifier(&fib_netdev_notifier); |
| 918 | register_inetaddr_notifier(&fib_inetaddr_notifier); | 919 | register_inetaddr_notifier(&fib_inetaddr_notifier); |
