diff options
author | Gluster Ant <bugzilla-bot@gluster.org> | 2018-09-12 17:52:45 +0530 |
---|---|---|
committer | Nigel Babu <nigelb@redhat.com> | 2018-09-12 17:52:45 +0530 |
commit | e16868dede6455cab644805af6fe1ac312775e13 (patch) | |
tree | 15aebdb4fff2d87cf8a72f836816b3aa634da58d /tests/bugs/protocol/bug-808400-fcntl.c | |
parent | 45a71c0548b6fd2c757aa2e7b7671a1411948894 (diff) |
Land part 2 of clang-format changes
Change-Id: Ia84cc24c8924e6d22d02ac15f611c10e26db99b4
Signed-off-by: Nigel Babu <nigelb@redhat.com>
Diffstat (limited to 'tests/bugs/protocol/bug-808400-fcntl.c')
-rw-r--r-- | tests/bugs/protocol/bug-808400-fcntl.c | 191 |
1 files changed, 99 insertions, 92 deletions
diff --git a/tests/bugs/protocol/bug-808400-fcntl.c b/tests/bugs/protocol/bug-808400-fcntl.c index 87a83f317b8..a703ca5c120 100644 --- a/tests/bugs/protocol/bug-808400-fcntl.c +++ b/tests/bugs/protocol/bug-808400-fcntl.c @@ -12,106 +12,113 @@ #endif int -run_child (char *filename) +run_child(char *filename) { - int fd = -1, ret = -1; - struct flock lock = {0, }; - int ppid = 0; - - fd = open (filename, O_RDWR); - if (fd < 0) { - fprintf (stderr, "open failed (%s)\n", strerror (errno)); - goto out; - } - - ppid = getppid (); - - lock.l_type = F_WRLCK; - lock.l_whence = SEEK_SET; - lock.l_start = 0; - lock.l_len = 0; - - ret = fcntl (fd, F_GETLK, &lock); - if (ret < 0) { - fprintf (stderr, "GETLK failed (%s)\n", strerror (errno)); - goto out; - } - - if ((lock.l_type == F_UNLCK) || - (ppid != lock.l_pid)) { - fprintf (stderr, "no locks present, though parent has held " - "one\n"); - ret = -1; - goto out; - } - - ret = 0; + int fd = -1, ret = -1; + struct flock lock = { + 0, + }; + int ppid = 0; + + fd = open(filename, O_RDWR); + if (fd < 0) { + fprintf(stderr, "open failed (%s)\n", strerror(errno)); + goto out; + } + + ppid = getppid(); + + lock.l_type = F_WRLCK; + lock.l_whence = SEEK_SET; + lock.l_start = 0; + lock.l_len = 0; + + ret = fcntl(fd, F_GETLK, &lock); + if (ret < 0) { + fprintf(stderr, "GETLK failed (%s)\n", strerror(errno)); + goto out; + } + + if ((lock.l_type == F_UNLCK) || (ppid != lock.l_pid)) { + fprintf(stderr, + "no locks present, though parent has held " + "one\n"); + ret = -1; + goto out; + } + + ret = 0; out: - return ret; + return ret; } int -main (int argc, char *argv[]) +main(int argc, char *argv[]) { - int fd = -1, ret = -1, status = 0; - char *filename = NULL, *cmd = NULL; - struct stat stbuf = {0, }; - struct flock lock = {0, }; - - if (argc != 3) { - fprintf (stderr, "Usage: %s <filename> " - "<gluster-cmd-to-trigger-graph-switch>\n", argv[0]); - goto out; - } - - filename = argv[1]; - cmd = argv[2]; - - fd = open (filename, O_RDWR | O_CREAT, 0); - if (fd < 0) { - fprintf (stderr, "open (%s) failed (%s)\n", filename, - strerror (errno)); - goto out; - } - - lock.l_type = F_WRLCK; - lock.l_whence = SEEK_SET; - lock.l_start = 0; - lock.l_len = 0; - - ret = fcntl (fd, F_SETLK, &lock); - if (ret < 0) { - fprintf (stderr, "fcntl failed (%s)\n", strerror (errno)); - goto out; - } - - system (cmd); - - /* wait till graph switch completes */ - ret = fstat64 (fd, &stbuf); - if (ret < 0) { - fprintf (stderr, "fstat64 failure (%s)\n", strerror (errno)); - goto out; - } - - sleep (10); - - /* By now old-graph would be disconnected and locks should be cleaned - * up if they are not migrated. Check that by trying to acquire a lock - * on a new fd opened by another process on same file. - */ - ret = fork (); - if (ret == 0) { - ret = run_child (filename); + int fd = -1, ret = -1, status = 0; + char *filename = NULL, *cmd = NULL; + struct stat stbuf = { + 0, + }; + struct flock lock = { + 0, + }; + + if (argc != 3) { + fprintf(stderr, + "Usage: %s <filename> " + "<gluster-cmd-to-trigger-graph-switch>\n", + argv[0]); + goto out; + } + + filename = argv[1]; + cmd = argv[2]; + + fd = open(filename, O_RDWR | O_CREAT, 0); + if (fd < 0) { + fprintf(stderr, "open (%s) failed (%s)\n", filename, strerror(errno)); + goto out; + } + + lock.l_type = F_WRLCK; + lock.l_whence = SEEK_SET; + lock.l_start = 0; + lock.l_len = 0; + + ret = fcntl(fd, F_SETLK, &lock); + if (ret < 0) { + fprintf(stderr, "fcntl failed (%s)\n", strerror(errno)); + goto out; + } + + system(cmd); + + /* wait till graph switch completes */ + ret = fstat64(fd, &stbuf); + if (ret < 0) { + fprintf(stderr, "fstat64 failure (%s)\n", strerror(errno)); + goto out; + } + + sleep(10); + + /* By now old-graph would be disconnected and locks should be cleaned + * up if they are not migrated. Check that by trying to acquire a lock + * on a new fd opened by another process on same file. + */ + ret = fork(); + if (ret == 0) { + ret = run_child(filename); + } else { + wait(&status); + if (WIFEXITED(status)) { + ret = WEXITSTATUS(status); } else { - wait (&status); - if (WIFEXITED(status)) { - ret = WEXITSTATUS(status); - } else { - ret = 0; - } + ret = 0; } + } out: - return ret; + return ret; } |