mirror of
https://github.com/torvalds/linux.git
synced 2026-05-26 08:02:27 +02:00
net: devmem: ksft: add 5 tuple FS support
ncdevmem supports drivers that are limited to either 3-tuple or 5-tuple FS support, but the ksft is currently 3-tuple only. Support drivers that have 5-tuple FS supported by adding a ksft arg. Signed-off-by: Mina Almasry <almasrymina@google.com> fix 5-tuple fix 5-tuple Acked-by: Stanislav Fomichev <sdf@fomichev.me> Link: https://patch.msgid.link/20250523230524.1107879-7-almasrymina@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
57605ae8e1
commit
243d47a5e1
|
|
@ -24,11 +24,11 @@ def check_rx(cfg) -> None:
|
|||
require_devmem(cfg)
|
||||
|
||||
port = rand_port()
|
||||
listen_cmd = f"{cfg.bin_local} -l -f {cfg.ifname} -s {cfg.addr} -p {port}"
|
||||
listen_cmd = f"{cfg.bin_local} -l -f {cfg.ifname} -s {cfg.addr} -p {port} -c {cfg.remote_addr}"
|
||||
|
||||
with bkg(listen_cmd, exit_wait=True) as ncdevmem:
|
||||
wait_port_listen(port)
|
||||
cmd(f"echo -e \"hello\\nworld\"| socat -u - TCP{cfg.addr_ipver}:{cfg.addr}:{port}", host=cfg.remote, shell=True)
|
||||
cmd(f"echo -e \"hello\\nworld\"| socat -u - TCP{cfg.addr_ipver}:{cfg.addr}:{port},bind={cfg.remote_addr}:{port}", host=cfg.remote, shell=True)
|
||||
|
||||
ksft_eq(ncdevmem.stdout.strip(), "hello\nworld")
|
||||
|
||||
|
|
|
|||
|
|
@ -373,7 +373,8 @@ static int configure_flow_steering(struct sockaddr_in6 *server_sin)
|
|||
server_addr = strrchr(server_addr, ':') + 1;
|
||||
}
|
||||
|
||||
return run_command("sudo ethtool -N %s flow-type %s %s %s dst-ip %s %s %s dst-port %s queue %d >&2",
|
||||
/* Try configure 5-tuple */
|
||||
if (run_command("sudo ethtool -N %s flow-type %s %s %s dst-ip %s %s %s dst-port %s queue %d >&2",
|
||||
ifname,
|
||||
type,
|
||||
client_ip ? "src-ip" : "",
|
||||
|
|
@ -381,7 +382,17 @@ static int configure_flow_steering(struct sockaddr_in6 *server_sin)
|
|||
server_addr,
|
||||
client_ip ? "src-port" : "",
|
||||
client_ip ? port : "",
|
||||
port, start_queue);
|
||||
port, start_queue))
|
||||
/* If that fails, try configure 3-tuple */
|
||||
if (run_command("sudo ethtool -N %s flow-type %s dst-ip %s dst-port %s queue %d >&2",
|
||||
ifname,
|
||||
type,
|
||||
server_addr,
|
||||
port, start_queue))
|
||||
/* If that fails, return error */
|
||||
return -1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int bind_rx_queue(unsigned int ifindex, unsigned int dmabuf_fd,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user