aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/net/core/pktgen.c
diff options
context:
space:
mode:
authorPeter Seiderer <ps.report@gmx.net>2025-02-19 09:45:24 +0100
committerJakub Kicinski <kuba@kernel.org>2025-02-20 17:24:56 -0800
commit3ba38c25a8c03b77ed448220a6c93dd5552a264e (patch)
tree9c6b455b76b56dd4ac1d08c473da978256ecd230 /net/core/pktgen.c
parentnet: pktgen: fix hex32_arg parsing for short reads (diff)
downloadwireguard-linux-3ba38c25a8c03b77ed448220a6c93dd5552a264e.tar.xz
wireguard-linux-3ba38c25a8c03b77ed448220a6c93dd5552a264e.zip
net: pktgen: fix 'rate 0' error handling (return -EINVAL)
Given an invalid 'rate' command e.g. 'rate 0' the return value is '1', leading to the following misleading output: - the good case $ echo "rate 100" > /proc/net/pktgen/lo\@0 $ grep "Result:" /proc/net/pktgen/lo\@0 Result: OK: rate=100 - the bad case (before the patch) $ echo "rate 0" > /proc/net/pktgen/lo\@0" -bash: echo: write error: Invalid argument $ grep "Result:" /proc/net/pktgen/lo\@0 Result: No such parameter "ate" - with patch applied $ echo "rate 0" > /proc/net/pktgen/lo\@0 -bash: echo: write error: Invalid argument $ grep "Result:" /proc/net/pktgen/lo\@0 Result: Idle Signed-off-by: Peter Seiderer <ps.report@gmx.net> Reviewed-by: Simon Horman <horms@kernel.org> Link: https://patch.msgid.link/20250219084527.20488-5-ps.report@gmx.net Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to '')
-rw-r--r--net/core/pktgen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/core/pktgen.c b/net/core/pktgen.c
index 28dbbf70e142..75c7511bf492 100644
--- a/net/core/pktgen.c
+++ b/net/core/pktgen.c
@@ -1115,7 +1115,7 @@ static ssize_t pktgen_if_write(struct file *file,
i += len;
if (!value)
- return len;
+ return -EINVAL;
pkt_dev->delay = pkt_dev->min_pkt_size*8*NSEC_PER_USEC/value;
if (debug)
pr_info("Delay set at: %llu ns\n", pkt_dev->delay);