Lines Matching +full:phase +full:- +full:shift
1 // SPDX-License-Identifier: CDDL-1.0
10 * or https://opensource.org/licenses/CDDL-1.0.
94 static int phase = PHASE_ALL; variable
103 "usage: %s [-hvycdrRk] [-n <nth>] [-f <files>] [-x <xattrs>]\n" in usage()
104 " [-s <bytes>] [-p <path>] [-t <script> ] [-o <phase>]\n", in usage()
108 " --help -h This help\n" in usage()
109 " --verbose -v Increase verbosity\n" in usage()
110 " --verify -y Verify xattr contents\n" in usage()
111 " --nth -n <nth> Print every nth file\n" in usage()
112 " --files -f <files> Set xattrs on N files\n" in usage()
113 " --xattrs -x <xattrs> Set N xattrs on each file\n" in usage()
114 " --size -s <bytes> Set N bytes per xattr\n" in usage()
115 " --path -p <path> Path to files\n" in usage()
116 " --synccaches -c Sync caches between phases\n" in usage()
117 " --dropcaches -d Drop caches between phases\n" in usage()
118 " --script -t <script> Exec script between phases\n" in usage()
119 " --seed -e <seed> Random seed value\n" in usage()
120 " --random -r Randomly sized xattrs [16-size]\n" in usage()
121 " --randomvalue -R Random xattr values\n" in usage()
122 " --keep -k Don't unlink files\n" in usage()
123 " --only -o <num> Only run phase N\n" in usage()
137 while ((c = getopt_long(argc, argv, shortopts, longopts, NULL)) != -1) { in parse_args()
159 fprintf(stderr, "Error: the -s value may not " in parse_args()
189 phase = strtol(optarg, NULL, 0); in parse_args()
190 if (phase <= PHASE_ALL || phase >= PHASE_INVAL) { in parse_args()
191 fprintf(stderr, "Error: the -o value must be " in parse_args()
223 fprintf(stdout, "only: %d\n", phase); in parse_args()
237 if (fd == -1) { in drop_caches()
243 if ((rc == -1) || (rc != 1)) { in drop_caches()
250 if (rc == -1) { in drop_caches()
269 _exit(-1); in run_process()
276 _exit(-1); in run_process()
280 while ((rc = waitpid(pid, &status, 0)) == -1 && in run_process()
284 return (-1); in run_process()
289 return (-1); in run_process()
293 post_hook(const char *phase) in post_hook() argument
295 char *argv[3] = { (char *)script, (char *)phase, NULL }; in post_hook()
320 usec -= USEC_PER_SEC; in timeval_normalize()
326 sec--; in timeval_normalize()
329 tv->tv_sec = sec; in timeval_normalize()
330 tv->tv_usec = usec; in timeval_normalize()
337 tv1->tv_sec - tv2->tv_sec, in timeval_sub()
338 tv1->tv_usec - tv2->tv_usec); in timeval_sub()
371 if (snprintf(file, fsize, "%s/file-%d", path, i) >= fsize) { in create_files()
381 if ((rc == -1) && (errno != ENOENT)) { in create_files()
388 if (rc == -1) { in create_files()
396 if (rc == -1) { in create_files()
428 ssize_t rc = read(rand, buf + bytes_read, bytes - bytes_read); in get_random_bytes()
442 int i, j, rnd_size = size, shift, rc = 0; in setxattrs() local
470 if (snprintf(file, fsize, "%s/file-%d", path, i) >= fsize) { in setxattrs()
481 rnd_size = (random() % (size - 16)) + 16; in setxattrs()
484 shift = sprintf(value, "size=%d ", rnd_size); in setxattrs()
485 memcpy(value + shift, xattrbytes, in setxattrs()
486 sizeof (xattrbytes) - shift); in setxattrs()
489 if (rc == -1) { in setxattrs()
516 int i, j, rnd_size, shift, rc = 0; in getxattrs() local
559 if (snprintf(file, fsize, "%s/file-%d", path, i) >= fsize) { in getxattrs()
572 if (rc == -1) { in getxattrs()
581 sscanf(value, "size=%d [a-z]", &rnd_size); in getxattrs()
582 shift = sprintf(verify_value, "size=%d ", in getxattrs()
584 memcpy(verify_value + shift, xattrbytes, in getxattrs()
585 sizeof (xattrbytes) - shift); in getxattrs()
638 if (snprintf(file, fsize, "%s/file-%d", path, i) >= fsize) { in unlink_files()
648 if ((rc == -1) && (errno != ENOENT)) { in unlink_files()
690 if (phase == PHASE_ALL || phase == PHASE_CREATE) { in main()
696 if (phase == PHASE_ALL || phase == PHASE_SETXATTR) { in main()
702 if (phase == PHASE_ALL || phase == PHASE_GETXATTR) { in main()
708 if (!keep_files && (phase == PHASE_ALL || phase == PHASE_UNLINK)) { in main()