X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Ftests%2Fsendfile_grouplock.c;h=c293fd68fecd0546b4d6b92946387e863b9820c5;hp=42d66a3c8c6a3b2a63c20b11dffe520771748206;hb=ca754ec8b43416d41bbd401bad7d9f93746fb867;hpb=3e6c20afa18a64c5cb949ecf2ed0f49202ba3e15 diff --git a/lustre/tests/sendfile_grouplock.c b/lustre/tests/sendfile_grouplock.c index 42d66a3..c293fd6 100644 --- a/lustre/tests/sendfile_grouplock.c +++ b/lustre/tests/sendfile_grouplock.c @@ -22,6 +22,9 @@ /* * Copyright 2015 Cray Inc, all rights reserved. + * + * Copyright (c) 2017, Intel Corporation. + * * Author: Frank Zago. * * A few portions are extracted from llapi_layout_test.c @@ -60,12 +63,12 @@ #include #include #include +#include #include #include #include #include -#include #define ERROR(fmt, ...) \ fprintf(stderr, "%s: %s:%d: %s: " fmt "\n", \ @@ -226,7 +229,7 @@ static int sendfile_copy(const char *source, int source_gid, source_gid, source, strerror(-rc)); } - fd_out = open(dest, O_WRONLY | O_TRUNC | O_CREAT); + fd_out = open(dest, O_WRONLY | O_TRUNC | O_CREAT, 0644); ASSERTF(fd_out >= 0, "creation failed for '%s': %s", dest, strerror(errno)); @@ -266,6 +269,17 @@ static int sendfile_copy(const char *source, int source_gid, } + if (dest_gid != 0) { + rc = llapi_group_unlock(fd_out, dest_gid); + ASSERTF(rc == 0, "cannot clear group lock %d for '%s': %s", + dest_gid, dest, strerror(-rc)); + } + if (source_gid != 0) { + rc = llapi_group_unlock(fd_in, source_gid); + ASSERTF(rc == 0, "cannot clear group lock %d for '%s': %s", + source_gid, source, strerror(-rc)); + } + close(fd_out); close(fd_in);