lkml.org 
[lkml]   [2021]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.14 784/849] selftests/net: udpgso_bench_rx: fix port argument
    Date
    From: Willem de Bruijn <willemb@google.com>

    [ Upstream commit d336509cb9d03970911878bb77f0497f64fda061 ]

    The below commit added optional support for passing a bind address.
    It configures the sockaddr bind arguments before parsing options and
    reconfigures on options -b and -4.

    This broke support for passing port (-p) on its own.

    Configure sockaddr after parsing all arguments.

    Fixes: 3327a9c46352 ("selftests: add functionals test for UDP GRO")
    Reported-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    tools/testing/selftests/net/udpgso_bench_rx.c | 11 +++++++----
    1 file changed, 7 insertions(+), 4 deletions(-)

    diff --git a/tools/testing/selftests/net/udpgso_bench_rx.c b/tools/testing/selftests/net/udpgso_bench_rx.c
    index 76a24052f4b47..6a193425c367f 100644
    --- a/tools/testing/selftests/net/udpgso_bench_rx.c
    +++ b/tools/testing/selftests/net/udpgso_bench_rx.c
    @@ -293,19 +293,17 @@ static void usage(const char *filepath)

    static void parse_opts(int argc, char **argv)
    {
    + const char *bind_addr = NULL;
    int c;

    - /* bind to any by default */
    - setup_sockaddr(PF_INET6, "::", &cfg_bind_addr);
    while ((c = getopt(argc, argv, "4b:C:Gl:n:p:rR:S:tv")) != -1) {
    switch (c) {
    case '4':
    cfg_family = PF_INET;
    cfg_alen = sizeof(struct sockaddr_in);
    - setup_sockaddr(PF_INET, "0.0.0.0", &cfg_bind_addr);
    break;
    case 'b':
    - setup_sockaddr(cfg_family, optarg, &cfg_bind_addr);
    + bind_addr = optarg;
    break;
    case 'C':
    cfg_connect_timeout_ms = strtoul(optarg, NULL, 0);
    @@ -341,6 +339,11 @@ static void parse_opts(int argc, char **argv)
    }
    }

    + if (!bind_addr)
    + bind_addr = cfg_family == PF_INET6 ? "::" : "0.0.0.0";
    +
    + setup_sockaddr(cfg_family, bind_addr, &cfg_bind_addr);
    +
    if (optind != argc)
    usage(argv[0]);

    --
    2.33.0


    \
     
     \ /
      Last update: 2021-11-16 00:26    [W:2.219 / U:0.164 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site