File: valloc.3

package info (click to toggle)
manpages 6.17-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 20,812 kB
  • sloc: sh: 853; python: 227; perl: 191; makefile: 29; lisp: 22
file content (88 lines) | stat: -rw-r--r-- 1,773 bytes parent folder | download
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)