1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
|
'\" t
.\" Copyright, the authors of the Linux man-pages project
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.TH valloc 3 2025-12-13 "Linux man-pages (unreleased)"
.SH NAME
valloc
\-
page-aligned memory allocation
.SH LIBRARY
Standard C library
.RI ( libc ,\~ \-lc )
.SH SYNOPSIS
.nf
.B #include <stdlib.h>
.P
.BI "[[deprecated]] void *valloc(size_t " size );
.fi
.P
.RS -4
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.RE
.P
.BR valloc ():
.nf
Since glibc 2.12:
(_XOPEN_SOURCE >= 500) && !(_POSIX_C_SOURCE >= 200112L)
|| /* glibc >= 2.19: */ _DEFAULT_SOURCE
|| /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE
Before glibc 2.12:
_BSD_SOURCE || _XOPEN_SOURCE >= 500
.\" || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
.fi
.SH DESCRIPTION
.BR valloc ()
allocates
.I size
bytes and returns a pointer to the allocated memory.
The memory address will be a multiple of the page size.
.P
It is equivalent to
.IR "memalign(sysconf(_SC_PAGESIZE),size)" .
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lbx lb lb
l l l.
Interface Attribute Value
T{
.na
.nh
.BR valloc ()
T} Thread safety MT-Unsafe init
.TE
.SH VERSIONS
According to SUSv2,
.BR valloc ()
is declared in
.IR <stdlib.h> .
.\" Libc4,5 and
glibc declares it in
.IR <malloc.h> ,
and also in
.I <stdlib.h>
if suitable feature test macros are defined (see above).
.SH STANDARDS
BSD, GNU.
.SH HISTORY
glibc 2.0.
3.0BSD.
Documented as obsolete in 4.3BSD,
and as legacy in SUSv2.
.\"
.SH CAVEATS
See
.BR memalign (3).
.\" Other systems allow passing the result of
.\" .IR valloc ()
.\" to
.\" .IR free (3),
.\" but not to
.\" .IR realloc (3).
.SH SEE ALSO
.BR memalign (3)
|