'\" t .\" Title: vfree .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.78.1 .\" Date: May 2018 .\" Manual: Memory Management in Linux .\" Source: Kernel Hackers Manual 3.16.56 .\" Language: English .\" .TH "VFREE" "9" "May 2018" "Kernel Hackers Manual 3\&.16\&" "Memory Management in Linux" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" vfree \- release memory allocated by \fBvmalloc\fR .SH "SYNOPSIS" .HP \w'void\ vfree('u .BI "void vfree(const\ void\ *\ " "addr" ");" .SH "ARGUMENTS" .PP \fIaddr\fR .RS 4 memory base address .RE .SH "DESCRIPTION" .PP Free the virtually continuous memory area starting at \fIaddr\fR, as obtained from \fBvmalloc\fR, \fBvmalloc_32\fR or \fB__vmalloc\fR\&. If \fIaddr\fR is NULL, no operation is performed\&. .PP Must not be called in NMI context (strictly speaking, only if we don\*(Aqt have CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG, but making the calling conventions for \fBvfree\fR arch\-depenedent would be a really bad idea) .SH "NOTE" .PP assumes that the object at *addr has a size >= sizeof(llist_node) .SH "COPYRIGHT" .br