PostgreSQL Source Code git master
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
aio_subsys.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * aio_subsys.h
4 * Interaction with AIO as a subsystem, rather than actually issuing AIO
5 *
6 * This header is for AIO related functionality that's being called by files
7 * that don't perform AIO, but interact with the AIO subsystem in some
8 * form. E.g. postmaster.c and shared memory initialization need to initialize
9 * AIO but don't perform AIO.
10 *
11 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
12 * Portions Copyright (c) 1994, Regents of the University of California
13 *
14 * src/include/storage/aio_subsys.h
15 *
16 *-------------------------------------------------------------------------
17 */
18#ifndef AIO_SUBSYS_H
19#define AIO_SUBSYS_H
20
21
22/* aio_init.c */
23extern Size AioShmemSize(void);
24extern void AioShmemInit(void);
25
26extern void pgaio_init_backend(void);
27
28
29/* aio.c */
30extern void pgaio_error_cleanup(void);
31extern void AtEOXact_Aio(bool is_commit);
32
33
34/* aio_worker.c */
35extern bool pgaio_workers_enabled(void);
36
37#endif /* AIO_SUBSYS_H */
void pgaio_init_backend(void)
Definition: aio_init.c:222
void AioShmemInit(void)
Definition: aio_init.c:153
Size AioShmemSize(void)
Definition: aio_init.c:117
bool pgaio_workers_enabled(void)
void pgaio_error_cleanup(void)
Definition: aio.c:1058
void AtEOXact_Aio(bool is_commit)
Definition: aio.c:1086
size_t Size
Definition: c.h:576