- for (i = 0; i < count; i++) {
- fd = open(filename, O_RDWR|O_LARGEFILE|O_DIRECT);
- if (fd < 0) {
- fprintf(stderr, "open(%s, O_RDWR): %s\n",
- filename, strerror(errno));
- rc = errno;
- break;
- }
- if (close(fd) < 0) {
- fprintf(stderr, "close(): %s\n",
- strerror(errno));
- rc = errno;
- break;
- }
- }
- unlink:
- if (unlink(filename) < 0) {
- fprintf(stderr, "unlink(%s): %s\n", filename,
- strerror(errno));
- rc = errno;
- }
- if (threads)
- printf("Thread %d done: rc = %d\n", thread, rc);
- else
- printf("Done: rc = %d\n", rc);
- }
+ for (i = 0; i < count; i++) {
+ fd = open(filename, O_RDWR|O_LARGEFILE|O_DIRECT);
+ if (fd < 0) {
+ rc = errno;
+ fprintf(stderr, "open(%s, O_RDWR): %s\n",
+ filename, strerror(rc));
+ break;
+ }
+ if (ioctl(fd, LL_IOC_SETFLAGS, &ioctl_flags) < 0 &&
+ errno != ENOTTY) {
+ rc = errno;
+ fprintf(stderr, "ioctl(): %s\n", strerror(rc));
+ break;
+ }
+ if (close(fd) < 0) {
+ rc = errno;
+ fprintf(stderr, "close(): %s\n", strerror(rc));
+ break;
+ }
+ }
+ unlink:
+ if (unlink(filename) < 0) {
+ rc = errno;
+ fprintf(stderr, "unlink(%s): %s\n", filename,
+ strerror(rc));
+ }
+ if (threads)
+ printf("Thread %d done: rc = %d\n", thread, rc);
+ else
+ printf("Done: rc = %d\n", rc);
+ }