aboutsummaryrefslogtreecommitdiff
path: root/kernel/bpf/syscall.c
diff options
context:
space:
mode:
authorKui-Feng Lee <[email protected]>2023-03-22 20:23:59 -0700
committerMartin KaFai Lau <[email protected]>2023-03-22 22:53:00 -0700
commit8fb1a76a0f35c45a424c9eb84b0f97ffd51e6052 (patch)
treefbe167ee5d52342b50005ab130fdc88d7e4c02e8 /kernel/bpf/syscall.c
parentb671c2067a04c0668df174ff5dfdb573d1f9b074 (diff)
net: Update an existing TCP congestion control algorithm.
This feature lets you immediately transition to another congestion control algorithm or implementation with the same name. Once a name is updated, new connections will apply this new algorithm. The purpose is to update a customized algorithm implemented in BPF struct_ops with a new version on the flight. The following is an example of using the userspace API implemented in later BPF patches. link = bpf_map__attach_struct_ops(skel->maps.ca_update_1); ....... err = bpf_link__update_map(link, skel->maps.ca_update_2); We first load and register an algorithm implemented in BPF struct_ops, then swap it out with a new one using the same name. After that, newly created connections will apply the updated algorithm, while older ones retain the previous version already applied. This patch also takes this chance to refactor the ca validation into the new tcp_validate_congestion_control() function. Cc: [email protected], Eric Dumazet <[email protected]> Signed-off-by: Kui-Feng Lee <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Martin KaFai Lau <[email protected]>
Diffstat (limited to 'kernel/bpf/syscall.c')
0 files changed, 0 insertions, 0 deletions