if (!rc)
ctx = malloc(sizeof(struct thread_ctx));
- if (!rc && ctx == NULL)
- {
+ if (!rc && ctx == NULL) {
log_err("windowsaio: failed to allocate memory for thread context structure\n");
CloseHandle(hFile);
rc = 1;
}
- if (!rc)
- {
+ if (!rc) {
DWORD threadid;
ctx->iocp = hFile;
{
DWORD error;
DWORD isharemode = (FILE_SHARE_DELETE | FILE_SHARE_READ |
- FILE_SHARE_WRITE);
+ FILE_SHARE_WRITE);
HANDLE ihFile;
int rc = 0;
/* If we're going to use direct I/O, Windows will try and invalidate
* its cache at that point so there's no need to do it here */
- if (td->o.invalidate_cache && !td->o.odirect) {
+ if (td->o.invalidate_cache && !td->o.odirect)
windowsaio_invalidate_cache(f);
- }
f->hFile = CreateFile(f->file_name, access, sharemode,
NULL, openmode, flags, NULL);
break;
}
- if (dequeued >= min || (t != NULL && timeout_expired(start_count, end_count)))
+ if (dequeued >= min ||
+ (t != NULL && timeout_expired(start_count, end_count)))
break;
} while (1);
switch (io_u->ddir) {
case DDIR_WRITE:
- success = WriteFile(io_u->file->hFile, io_u->xfer_buf, io_u->xfer_buflen, NULL, lpOvl);
+ success = WriteFile(io_u->file->hFile, io_u->xfer_buf,
+ io_u->xfer_buflen, NULL, lpOvl);
break;
case DDIR_READ:
- success = ReadFile(io_u->file->hFile, io_u->xfer_buf, io_u->xfer_buflen, NULL, lpOvl);
+ success = ReadFile(io_u->file->hFile, io_u->xfer_buf,
+ io_u->xfer_buflen, NULL, lpOvl);
break;
case DDIR_SYNC:
case DDIR_DATASYNC:
}
return FIO_Q_COMPLETED;
- break;
case DDIR_TRIM:
log_err("windowsaio: manual TRIM isn't supported on Windows\n");
io_u->error = 1;
io_u->resid = io_u->xfer_buflen;
return FIO_Q_COMPLETED;
- break;
default:
assert(0);
break;
wd = ctx->wd;
do {
- if (!GetQueuedCompletionStatus(ctx->iocp, &bytes, &ulKey, &ovl, 250) && ovl == NULL)
+ BOOL ret;
+
+ ret = GetQueuedCompletionStatus(ctx->iocp, &bytes, &ulKey,
+ &ovl, 250);
+ if (!ret && ovl == NULL)
continue;
fov = CONTAINING_RECORD(ovl, struct fio_overlapped, o);