1*4882a593Smuzhiyun.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2*4882a593Smuzhiyun.. c:namespace:: DTV.dmx 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun.. _dmx-munmap: 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun************ 7*4882a593SmuzhiyunDVB munmap() 8*4882a593Smuzhiyun************ 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunName 11*4882a593Smuzhiyun==== 12*4882a593Smuzhiyun 13*4882a593Smuzhiyundmx-munmap - Unmap device memory 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun.. warning:: This API is still experimental. 16*4882a593Smuzhiyun 17*4882a593SmuzhiyunSynopsis 18*4882a593Smuzhiyun======== 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun.. code-block:: c 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun #include <unistd.h> 23*4882a593Smuzhiyun #include <sys/mman.h> 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun.. c:function:: int munmap( void *start, size_t length ) 26*4882a593Smuzhiyun 27*4882a593SmuzhiyunArguments 28*4882a593Smuzhiyun========= 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun``start`` 31*4882a593Smuzhiyun Address of the mapped buffer as returned by the 32*4882a593Smuzhiyun :c:func:`mmap()` function. 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun``length`` 35*4882a593Smuzhiyun Length of the mapped buffer. This must be the same value as given to 36*4882a593Smuzhiyun :c:func:`mmap()`. 37*4882a593Smuzhiyun 38*4882a593SmuzhiyunDescription 39*4882a593Smuzhiyun=========== 40*4882a593Smuzhiyun 41*4882a593SmuzhiyunUnmaps a previously with the :c:func:`mmap()` function mapped 42*4882a593Smuzhiyunbuffer and frees it, if possible. 43*4882a593Smuzhiyun 44*4882a593SmuzhiyunReturn Value 45*4882a593Smuzhiyun============ 46*4882a593Smuzhiyun 47*4882a593SmuzhiyunOn success :c:func:`munmap()` returns 0, on failure -1 and the 48*4882a593Smuzhiyun``errno`` variable is set appropriately: 49*4882a593Smuzhiyun 50*4882a593SmuzhiyunEINVAL 51*4882a593Smuzhiyun The ``start`` or ``length`` is incorrect, or no buffers have been 52*4882a593Smuzhiyun mapped yet. 53