Commit d43ee51
committed
Optimize comparison of similar sockets
Take advantage from de-duplication done in allocate_sfd. Create a new
special case, when sfd is created, but its fd is not. Such case is used
for interface bound sockets only with random outgoing ports.
Speed up searching in random sockets. Server members are not compared
one after one, but just pointer to sfd is compared. We ensure each
serverfd is unique, so different pointers means different servers.1 parent 509dce5 commit d43ee51
4 files changed
+75
-50
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1691 | 1691 | | |
1692 | 1692 | | |
1693 | 1693 | | |
1694 | | - | |
| 1694 | + | |
| 1695 | + | |
1695 | 1696 | | |
1696 | 1697 | | |
1697 | 1698 | | |
| |||
1742 | 1743 | | |
1743 | 1744 | | |
1744 | 1745 | | |
1745 | | - | |
| 1746 | + | |
1746 | 1747 | | |
1747 | 1748 | | |
1748 | 1749 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
541 | 541 | | |
542 | 542 | | |
543 | 543 | | |
544 | | - | |
| 544 | + | |
545 | 545 | | |
546 | 546 | | |
547 | 547 | | |
548 | 548 | | |
549 | 549 | | |
550 | 550 | | |
| 551 | + | |
| 552 | + | |
551 | 553 | | |
552 | | - | |
| 554 | + | |
553 | 555 | | |
| 556 | + | |
554 | 557 | | |
555 | 558 | | |
556 | 559 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2174 | 2174 | | |
2175 | 2175 | | |
2176 | 2176 | | |
2177 | | - | |
2178 | | - | |
2179 | | - | |
2180 | | - | |
2181 | | - | |
2182 | | - | |
2183 | | - | |
2184 | | - | |
2185 | | - | |
2186 | | - | |
2187 | 2177 | | |
2188 | 2178 | | |
2189 | 2179 | | |
| |||
2202 | 2192 | | |
2203 | 2193 | | |
2204 | 2194 | | |
2205 | | - | |
| 2195 | + | |
2206 | 2196 | | |
2207 | 2197 | | |
2208 | 2198 | | |
2209 | 2199 | | |
2210 | | - | |
| 2200 | + | |
| 2201 | + | |
2211 | 2202 | | |
2212 | 2203 | | |
2213 | 2204 | | |
| |||
2224 | 2215 | | |
2225 | 2216 | | |
2226 | 2217 | | |
2227 | | - | |
| 2218 | + | |
| 2219 | + | |
2228 | 2220 | | |
2229 | 2221 | | |
2230 | 2222 | | |
| |||
2237 | 2229 | | |
2238 | 2230 | | |
2239 | 2231 | | |
2240 | | - | |
| 2232 | + | |
| 2233 | + | |
2241 | 2234 | | |
2242 | 2235 | | |
2243 | 2236 | | |
| |||
2527 | 2520 | | |
2528 | 2521 | | |
2529 | 2522 | | |
2530 | | - | |
2531 | 2523 | | |
2532 | 2524 | | |
2533 | 2525 | | |
2534 | 2526 | | |
2535 | 2527 | | |
2536 | | - | |
2537 | | - | |
2538 | | - | |
2539 | | - | |
2540 | | - | |
2541 | | - | |
2542 | 2528 | | |
2543 | 2529 | | |
2544 | 2530 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1378 | 1378 | | |
1379 | 1379 | | |
1380 | 1380 | | |
| 1381 | + | |
| 1382 | + | |
| 1383 | + | |
| 1384 | + | |
| 1385 | + | |
| 1386 | + | |
| 1387 | + | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
1381 | 1400 | | |
1382 | 1401 | | |
1383 | 1402 | | |
1384 | | - | |
1385 | | - | |
| 1403 | + | |
1386 | 1404 | | |
1387 | 1405 | | |
1388 | 1406 | | |
| |||
1391 | 1409 | | |
1392 | 1410 | | |
1393 | 1411 | | |
1394 | | - | |
1395 | | - | |
1396 | | - | |
1397 | | - | |
1398 | | - | |
1399 | | - | |
1400 | | - | |
| 1412 | + | |
| 1413 | + | |
| 1414 | + | |
| 1415 | + | |
| 1416 | + | |
| 1417 | + | |
| 1418 | + | |
| 1419 | + | |
| 1420 | + | |
1401 | 1421 | | |
1402 | 1422 | | |
1403 | 1423 | | |
| |||
1411 | 1431 | | |
1412 | 1432 | | |
1413 | 1433 | | |
1414 | | - | |
1415 | | - | |
1416 | | - | |
1417 | | - | |
1418 | | - | |
1419 | | - | |
1420 | 1434 | | |
1421 | | - | |
1422 | | - | |
1423 | | - | |
1424 | | - | |
1425 | | - | |
1426 | | - | |
1427 | | - | |
1428 | | - | |
| 1435 | + | |
| 1436 | + | |
| 1437 | + | |
| 1438 | + | |
| 1439 | + | |
| 1440 | + | |
| 1441 | + | |
| 1442 | + | |
| 1443 | + | |
1429 | 1444 | | |
1430 | 1445 | | |
1431 | 1446 | | |
| |||
1607 | 1622 | | |
1608 | 1623 | | |
1609 | 1624 | | |
| 1625 | + | |
| 1626 | + | |
| 1627 | + | |
| 1628 | + | |
| 1629 | + | |
| 1630 | + | |
| 1631 | + | |
| 1632 | + | |
| 1633 | + | |
| 1634 | + | |
| 1635 | + | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
1610 | 1646 | | |
1611 | 1647 | | |
1612 | 1648 | | |
| |||
1747 | 1783 | | |
1748 | 1784 | | |
1749 | 1785 | | |
1750 | | - | |
1751 | | - | |
| 1786 | + | |
1752 | 1787 | | |
1753 | 1788 | | |
1754 | 1789 | | |
| |||
0 commit comments