Commit 3dec89b
net/ipv6: Remove expired routes with a separated list of routes.
FIB6 GC walks trees of fib6_tables to remove expired routes. Walking a tree
can be expensive if the number of routes in a table is big, even if most of
them are permanent. Checking routes in a separated list of routes having
expiration will avoid this potential issue.
Signed-off-by: Kui-Feng Lee <thinker.li@gmail.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>1 parent d147085 commit 3dec89b
3 files changed
Lines changed: 103 additions & 22 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
182 | 185 | | |
183 | 186 | | |
184 | 187 | | |
| |||
247 | 250 | | |
248 | 251 | | |
249 | 252 | | |
250 | | - | |
251 | | - | |
252 | | - | |
253 | | - | |
254 | | - | |
255 | | - | |
256 | | - | |
257 | | - | |
258 | | - | |
259 | | - | |
260 | | - | |
261 | | - | |
262 | | - | |
263 | 253 | | |
264 | 254 | | |
265 | 255 | | |
266 | 256 | | |
267 | 257 | | |
268 | 258 | | |
269 | 259 | | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
270 | 265 | | |
271 | 266 | | |
272 | 267 | | |
| |||
388 | 383 | | |
389 | 384 | | |
390 | 385 | | |
| 386 | + | |
391 | 387 | | |
392 | 388 | | |
393 | 389 | | |
| |||
504 | 500 | | |
505 | 501 | | |
506 | 502 | | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
507 | 545 | | |
508 | 546 | | |
509 | 547 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
160 | 160 | | |
161 | 161 | | |
162 | 162 | | |
| 163 | + | |
| 164 | + | |
163 | 165 | | |
164 | 166 | | |
165 | 167 | | |
| |||
246 | 248 | | |
247 | 249 | | |
248 | 250 | | |
| 251 | + | |
249 | 252 | | |
250 | 253 | | |
251 | 254 | | |
| |||
1057 | 1060 | | |
1058 | 1061 | | |
1059 | 1062 | | |
| 1063 | + | |
| 1064 | + | |
1060 | 1065 | | |
1061 | 1066 | | |
1062 | 1067 | | |
| |||
1118 | 1123 | | |
1119 | 1124 | | |
1120 | 1125 | | |
1121 | | - | |
| 1126 | + | |
1122 | 1127 | | |
1123 | | - | |
| 1128 | + | |
| 1129 | + | |
1124 | 1130 | | |
1125 | 1131 | | |
1126 | 1132 | | |
| |||
1479 | 1485 | | |
1480 | 1486 | | |
1481 | 1487 | | |
| 1488 | + | |
| 1489 | + | |
| 1490 | + | |
| 1491 | + | |
1482 | 1492 | | |
1483 | 1493 | | |
1484 | 1494 | | |
| |||
2285 | 2295 | | |
2286 | 2296 | | |
2287 | 2297 | | |
2288 | | - | |
| 2298 | + | |
2289 | 2299 | | |
2290 | | - | |
2291 | 2300 | | |
2292 | 2301 | | |
2293 | 2302 | | |
2294 | 2303 | | |
2295 | 2304 | | |
2296 | 2305 | | |
2297 | 2306 | | |
2298 | | - | |
| 2307 | + | |
2299 | 2308 | | |
2300 | 2309 | | |
2301 | 2310 | | |
| |||
2312 | 2321 | | |
2313 | 2322 | | |
2314 | 2323 | | |
| 2324 | + | |
| 2325 | + | |
| 2326 | + | |
| 2327 | + | |
| 2328 | + | |
| 2329 | + | |
| 2330 | + | |
| 2331 | + | |
| 2332 | + | |
| 2333 | + | |
| 2334 | + | |
| 2335 | + | |
| 2336 | + | |
| 2337 | + | |
| 2338 | + | |
| 2339 | + | |
| 2340 | + | |
| 2341 | + | |
| 2342 | + | |
| 2343 | + | |
| 2344 | + | |
| 2345 | + | |
| 2346 | + | |
| 2347 | + | |
| 2348 | + | |
| 2349 | + | |
| 2350 | + | |
| 2351 | + | |
| 2352 | + | |
| 2353 | + | |
| 2354 | + | |
| 2355 | + | |
| 2356 | + | |
| 2357 | + | |
2315 | 2358 | | |
2316 | 2359 | | |
2317 | 2360 | | |
| |||
2327 | 2370 | | |
2328 | 2371 | | |
2329 | 2372 | | |
2330 | | - | |
| 2373 | + | |
2331 | 2374 | | |
2332 | 2375 | | |
2333 | 2376 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3761 | 3761 | | |
3762 | 3762 | | |
3763 | 3763 | | |
3764 | | - | |
3765 | | - | |
| 3764 | + | |
| 3765 | + | |
3766 | 3766 | | |
3767 | | - | |
| 3767 | + | |
3768 | 3768 | | |
3769 | 3769 | | |
3770 | 3770 | | |
| |||
0 commit comments