| 577 | } |
| 578 | |
| 579 | static void |
| 580 | rack_init_sysctls(void) |
| 581 | { |
| 582 | struct sysctl_oid *rack_counters; |
| 583 | struct sysctl_oid *rack_attack; |
| 584 | struct sysctl_oid *rack_pacing; |
| 585 | struct sysctl_oid *rack_timely; |
| 586 | struct sysctl_oid *rack_timers; |
| 587 | struct sysctl_oid *rack_tlp; |
| 588 | struct sysctl_oid *rack_misc; |
| 589 | struct sysctl_oid *rack_measure; |
| 590 | struct sysctl_oid *rack_probertt; |
| 591 | |
| 592 | rack_attack = SYSCTL_ADD_NODE(&rack_sysctl_ctx, |
| 593 | SYSCTL_CHILDREN(rack_sysctl_root), |
| 594 | OID_AUTO, |
| 595 | "sack_attack", |
| 596 | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, |
| 597 | "Rack Sack Attack Counters and Controls"); |
| 598 | rack_counters = SYSCTL_ADD_NODE(&rack_sysctl_ctx, |
| 599 | SYSCTL_CHILDREN(rack_sysctl_root), |
| 600 | OID_AUTO, |
| 601 | "stats", |
| 602 | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, |
| 603 | "Rack Counters"); |
| 604 | SYSCTL_ADD_S32(&rack_sysctl_ctx, |
| 605 | SYSCTL_CHILDREN(rack_sysctl_root), |
| 606 | OID_AUTO, "rate_sample_method", CTLFLAG_RW, |
| 607 | &rack_rate_sample_method , USE_RTT_LOW, |
| 608 | "What method should we use for rate sampling 0=high, 1=low "); |
| 609 | /* Probe rtt related controls */ |
| 610 | rack_probertt = SYSCTL_ADD_NODE(&rack_sysctl_ctx, |
| 611 | SYSCTL_CHILDREN(rack_sysctl_root), |
| 612 | OID_AUTO, |
| 613 | "probertt", |
| 614 | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, |
| 615 | "ProbeRTT related Controls"); |
| 616 | SYSCTL_ADD_U16(&rack_sysctl_ctx, |
| 617 | SYSCTL_CHILDREN(rack_probertt), |
| 618 | OID_AUTO, "exit_per_hpb", CTLFLAG_RW, |
| 619 | &rack_atexit_prtt_hbp, 130, |
| 620 | "What percentage above goodput do we clamp CA/SS to at exit on high-BDP path 110%"); |
| 621 | SYSCTL_ADD_U16(&rack_sysctl_ctx, |
| 622 | SYSCTL_CHILDREN(rack_probertt), |
| 623 | OID_AUTO, "exit_per_nonhpb", CTLFLAG_RW, |
| 624 | &rack_atexit_prtt, 130, |
| 625 | "What percentage above goodput do we clamp CA/SS to at exit on a non high-BDP path 100%"); |
| 626 | SYSCTL_ADD_U16(&rack_sysctl_ctx, |
| 627 | SYSCTL_CHILDREN(rack_probertt), |
| 628 | OID_AUTO, "gp_per_mul", CTLFLAG_RW, |
| 629 | &rack_per_of_gp_probertt, 60, |
| 630 | "What percentage of goodput do we pace at in probertt"); |
| 631 | SYSCTL_ADD_U16(&rack_sysctl_ctx, |
| 632 | SYSCTL_CHILDREN(rack_probertt), |
| 633 | OID_AUTO, "gp_per_reduce", CTLFLAG_RW, |
| 634 | &rack_per_of_gp_probertt_reduce, 10, |
| 635 | "What percentage of goodput do we reduce every gp_srtt"); |
| 636 | SYSCTL_ADD_U16(&rack_sysctl_ctx, |
no test coverage detected