lkml.org 
[lkml]   [2020]   [Feb]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.5 172/367] selftests: bpf: Use a temporary file in test_sockmap
    Date
    From: Lorenz Bauer <lmb@cloudflare.com>

    commit c31dbb1e41d1857b403f9bf58c87f5898519a0bc upstream.

    Use a proper temporary file for sendpage tests. This means that running
    the tests doesn't clutter the working directory, and allows running the
    test on read-only filesystems.

    Fixes: 16962b2404ac ("bpf: sockmap, add selftests")
    Signed-off-by: Lorenz Bauer <lmb@cloudflare.com>
    Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
    Reviewed-by: Jakub Sitnicki <jakub@cloudflare.com>
    Acked-by: Martin KaFai Lau <kafai@fb.com>
    Acked-by: John Fastabend <john.fastabend@gmail.com>
    Link: https://lore.kernel.org/bpf/20200124112754.19664-2-lmb@cloudflare.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    tools/testing/selftests/bpf/test_sockmap.c | 15 +++++----------
    1 file changed, 5 insertions(+), 10 deletions(-)

    --- a/tools/testing/selftests/bpf/test_sockmap.c
    +++ b/tools/testing/selftests/bpf/test_sockmap.c
    @@ -331,7 +331,7 @@ static int msg_loop_sendpage(int fd, int
    FILE *file;
    int i, fp;

    - file = fopen(".sendpage_tst.tmp", "w+");
    + file = tmpfile();
    if (!file) {
    perror("create file for sendpage");
    return 1;
    @@ -340,13 +340,8 @@ static int msg_loop_sendpage(int fd, int
    fwrite(&k, sizeof(char), 1, file);
    fflush(file);
    fseek(file, 0, SEEK_SET);
    - fclose(file);

    - fp = open(".sendpage_tst.tmp", O_RDONLY);
    - if (fp < 0) {
    - perror("reopen file for sendpage");
    - return 1;
    - }
    + fp = fileno(file);

    clock_gettime(CLOCK_MONOTONIC, &s->start);
    for (i = 0; i < cnt; i++) {
    @@ -354,11 +349,11 @@ static int msg_loop_sendpage(int fd, int

    if (!drop && sent < 0) {
    perror("send loop error");
    - close(fp);
    + fclose(file);
    return sent;
    } else if (drop && sent >= 0) {
    printf("sendpage loop error expected: %i\n", sent);
    - close(fp);
    + fclose(file);
    return -EIO;
    }

    @@ -366,7 +361,7 @@ static int msg_loop_sendpage(int fd, int
    s->bytes_sent += sent;
    }
    clock_gettime(CLOCK_MONOTONIC, &s->end);
    - close(fp);
    + fclose(file);
    return 0;
    }


    \
     
     \ /
      Last update: 2020-02-10 14:02    [W:3.411 / U:0.860 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site