next up previous contents index
Next: 8. Slab Allocator Up: 7. Non-Contiguous Memory Allocation Previous: 7.3 Allocating A Non-Contiguous   Contents   Index

7.4 Freeing A Non-Contiguous Area



\includegraphics[width=6cm]{graphs/vfree.ps}
Figure: Call Graph: vfree


The function vfree() is responsible for freeing a virtual area. It linearly searches the list of vm_structs looking for the desired region and then calls vmfree_area_pages() on the region of memory to be freed.

The function vmfree_area_pages() is the exact opposite of vmalloc_area_pages(). It walks the page tables freeing up the page table entries and associated pages for the region.


Table 7.2: Non-Contiguous Memory Free API
\begin{table}\begin{center}
\begin{tabularx}{13.5cm}{\vert X\vert}
\hline
\p...
...ma or
vmalloc\_32 \\ \\
\par
\hline
\end{tabularx}
\end{center} \end{table}




Mel 2003-01-14