Lines Matching full:aio
229 * every aio write request started in record__aio_push() so in record__aio_complete()
236 * aio write request may require restart with the in record__aio_complete()
252 struct aiocb **aiocb = md->aio.aiocb; in record__aio_sync()
253 struct aiocb *cblocks = md->aio.cblocks; in record__aio_sync()
259 for (i = 0; i < md->aio.nr_cblocks; ++i) { in record__aio_sync()
267 * Started aio write is not complete yet in record__aio_sync()
278 while (aio_suspend((const struct aiocb **)aiocb, md->aio.nr_cblocks, &timeout)) { in record__aio_sync()
293 struct record_aio *aio = to; in record__aio_pushfn() local
296 * map->core.base data pointed by buf is copied into free map->aio.data[] buffer in record__aio_pushfn()
309 if (record__comp_enabled(aio->rec)) { in record__aio_pushfn()
310 size = zstd_compress(aio->rec->session, aio->data + aio->size, in record__aio_pushfn()
311 mmap__mmap_len(map) - aio->size, in record__aio_pushfn()
314 memcpy(aio->data + aio->size, buf, size); in record__aio_pushfn()
317 if (!aio->size) { in record__aio_pushfn()
319 * Increment map->refcount to guard map->aio.data[] buffer in record__aio_pushfn()
321 * released earlier than aio write request started on in record__aio_pushfn()
322 * map->aio.data[] buffer is complete. in record__aio_pushfn()
325 * after started aio request completion or at record__aio_push() in record__aio_pushfn()
331 aio->size += size; in record__aio_pushfn()
340 struct record_aio aio = { .rec = rec, .size = 0 }; in record__aio_push() local
343 * Call record__aio_sync() to wait till map->aio.data[] buffer in record__aio_push()
344 * becomes available after previous aio write operation. in record__aio_push()
348 aio.data = map->aio.data[idx]; in record__aio_push()
349 ret = perf_mmap__push(map, &aio, record__aio_pushfn); in record__aio_push()
354 ret = record__aio_write(&(map->aio.cblocks[idx]), trace_fd, aio.data, aio.size, *off); in record__aio_push()
356 *off += aio.size; in record__aio_push()
357 rec->bytes_written += aio.size; in record__aio_push()
365 * aio write operation finishes successfully. in record__aio_push()
2151 if (!strcmp(var, "record.aio")) { in perf_record_config()
2573 OPT_CALLBACK_OPTARG(0, "aio", &record.opts,