lkml.org 
[lkml]   [2021]   [Sep]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.4 040/109] samples: bpf: Fix tracex7 error raised on the missing argument
    Date
    From: Juhee Kang <claudiajkang@gmail.com>

    [ Upstream commit 7d07006f05922b95518be403f08ef8437b67aa32 ]

    The current behavior of 'tracex7' doesn't consist with other bpf samples
    tracex{1..6}. Other samples do not require any argument to run with, but
    tracex7 should be run with btrfs device argument. (it should be executed
    with test_override_return.sh)

    Currently, tracex7 doesn't have any description about how to run this
    program and raises an unexpected error. And this result might be
    confusing since users might not have a hunch about how to run this
    program.

    // Current behavior
    # ./tracex7
    sh: 1: Syntax error: word unexpected (expecting ")")
    // Fixed behavior
    # ./tracex7
    ERROR: Run with the btrfs device argument!

    In order to fix this error, this commit adds logic to report a message
    and exit when running this program with a missing argument.

    Additionally in test_override_return.sh, there is a problem with
    multiple directory(tmpmnt) creation. So in this commit adds a line with
    removing the directory with every execution.

    Signed-off-by: Juhee Kang <claudiajkang@gmail.com>
    Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
    Acked-by: Yonghong Song <yhs@fb.com>
    Link: https://lore.kernel.org/bpf/20210727041056.23455-1-claudiajkang@gmail.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    samples/bpf/test_override_return.sh | 1 +
    samples/bpf/tracex7_user.c | 5 +++++
    2 files changed, 6 insertions(+)

    diff --git a/samples/bpf/test_override_return.sh b/samples/bpf/test_override_return.sh
    index e68b9ee6814b..35db26f736b9 100755
    --- a/samples/bpf/test_override_return.sh
    +++ b/samples/bpf/test_override_return.sh
    @@ -1,5 +1,6 @@
    #!/bin/bash

    +rm -r tmpmnt
    rm -f testfile.img
    dd if=/dev/zero of=testfile.img bs=1M seek=1000 count=1
    DEVICE=$(losetup --show -f testfile.img)
    diff --git a/samples/bpf/tracex7_user.c b/samples/bpf/tracex7_user.c
    index ea6dae78f0df..2ed13e9f3fcb 100644
    --- a/samples/bpf/tracex7_user.c
    +++ b/samples/bpf/tracex7_user.c
    @@ -13,6 +13,11 @@ int main(int argc, char **argv)
    char command[256];
    int ret;

    + if (!argv[1]) {
    + fprintf(stderr, "ERROR: Run with the btrfs device argument!\n");
    + return 0;
    + }
    +
    snprintf(filename, sizeof(filename), "%s_kern.o", argv[0]);

    if (load_bpf_file(filename)) {
    --
    2.30.2
    \
     
     \ /
      Last update: 2021-09-09 15:07    [W:3.573 / U:1.276 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site