|
PostgreSQL Source Code git master
|
#include "postgres.h"#include "miscadmin.h"#include "storage/aio.h"#include "storage/aio_internal.h"#include "storage/fd.h"#include "utils/wait_event.h"
Go to the source code of this file.
Functions | |
| static void | pgaio_io_before_start (PgAioHandle *ioh) |
| int | pgaio_io_get_iovec (PgAioHandle *ioh, struct iovec **iov) |
| PgAioOp | pgaio_io_get_op (PgAioHandle *ioh) |
| PgAioOpData * | pgaio_io_get_op_data (PgAioHandle *ioh) |
| void | pgaio_io_start_readv (PgAioHandle *ioh, int fd, int iovcnt, uint64 offset) |
| void | pgaio_io_start_writev (PgAioHandle *ioh, int fd, int iovcnt, uint64 offset) |
| void | pgaio_io_perform_synchronously (PgAioHandle *ioh) |
| const char * | pgaio_io_get_op_name (PgAioHandle *ioh) |
| bool | pgaio_io_uses_fd (PgAioHandle *ioh, int fd) |
| int | pgaio_io_get_iovec_length (PgAioHandle *ioh, struct iovec **iov) |
|
static |
Definition at line 156 of file aio_io.c.
References Assert, fb(), PgAioBackend::handed_out_io, INTERRUPTS_CAN_BE_PROCESSED, PGAIO_HS_HANDED_OUT, pgaio_io_has_target(), pgaio_my_backend, and PGAIO_OP_INVALID.
Referenced by pgaio_io_start_readv(), and pgaio_io_start_writev().
| int pgaio_io_get_iovec | ( | PgAioHandle * | ioh, |
| struct iovec ** | iov | ||
| ) |
Definition at line 42 of file aio_io.c.
References Assert, fb(), PgAioCtl::iovecs, PG_IOV_MAX, pgaio_ctl, and PGAIO_HS_HANDED_OUT.
Referenced by mdstartreadv().
| int pgaio_io_get_iovec_length | ( | PgAioHandle * | ioh, |
| struct iovec ** | iov | ||
| ) |
Definition at line 219 of file aio_io.c.
References Assert, fb(), PgAioCtl::iovecs, pg_unreachable, pgaio_ctl, PGAIO_HS_DEFINED, PGAIO_OP_READV, and PGAIO_OP_WRITEV.
Referenced by IoWorkerMain().
| PgAioOp pgaio_io_get_op | ( | PgAioHandle * | ioh | ) |
| PgAioOpData * pgaio_io_get_op_data | ( | PgAioHandle * | ioh | ) |
| const char * pgaio_io_get_op_name | ( | PgAioHandle * | ioh | ) |
Definition at line 175 of file aio_io.c.
References Assert, fb(), PGAIO_OP_COUNT, PGAIO_OP_INVALID, PGAIO_OP_READV, and PGAIO_OP_WRITEV.
Referenced by pg_get_aios().
| void pgaio_io_perform_synchronously | ( | PgAioHandle * | ioh | ) |
Definition at line 116 of file aio_io.c.
References elog, END_CRIT_SECTION, ERROR, fb(), PgAioCtl::iovecs, pg_preadv(), pg_pwritev(), pgaio_ctl, pgaio_io_process_completion(), PGAIO_OP_INVALID, PGAIO_OP_READV, PGAIO_OP_WRITEV, pgstat_report_wait_end(), pgstat_report_wait_start(), and START_CRIT_SECTION.
Referenced by IoWorkerMain(), pgaio_io_stage(), and pgaio_worker_submit_internal().
| void pgaio_io_start_readv | ( | PgAioHandle * | ioh, |
| int | fd, | ||
| int | iovcnt, | ||
| uint64 | offset | ||
| ) |
Definition at line 78 of file aio_io.c.
References fb(), fd(), pgaio_io_before_start(), pgaio_io_stage(), and PGAIO_OP_READV.
Referenced by FileStartReadV().
| void pgaio_io_start_writev | ( | PgAioHandle * | ioh, |
| int | fd, | ||
| int | iovcnt, | ||
| uint64 | offset | ||
| ) |
Definition at line 91 of file aio_io.c.
References fb(), fd(), pgaio_io_before_start(), pgaio_io_stage(), and PGAIO_OP_WRITEV.
| bool pgaio_io_uses_fd | ( | PgAioHandle * | ioh, |
| int | fd | ||
| ) |
Definition at line 197 of file aio_io.c.
References Assert, fb(), fd(), PGAIO_HS_DEFINED, PGAIO_OP_INVALID, PGAIO_OP_READV, and PGAIO_OP_WRITEV.
Referenced by pgaio_closing_fd().