*参照元 [#fe7d4f62] #backlinks *説明 [#h3778c31] -パス: 複数あり --MMU 無効の場合: [[linux-2.6.33/mm/nommu.c]] --MMU 有効の場合: [[linux-2.6.33/mm/vmalloc.c]] -FIXME: これは何? --説明 **引数 [#c031a50b] -const void *addr --マッピングを解除する領域の先頭の仮想アドレス。 **返り値 [#p2011650] -なし **参考 [#n0e73c39] *実装 [#j6b96fb0] **MMU 無効の場合 [#s024d995] void vunmap(const void *addr) { BUG(); -MMU がないアーキテクチャでは、使用してはいけない。 --[[linux-2.6.33/BUG()]] } EXPORT_SYMBOL(vunmap); -特にライセンスを区別せずシンボルを公開する。 --[[linux-2.6.33/EXPORT_SYMBOL()]] **MMU 有効の場合 [#q1d41c3d] /** * vunmap - release virtual mapping obtained by vmap() * @addr: memory base address * * Free the virtually contiguous memory area starting at @addr, * which was created from the page array passed to vmap(). * * Must not be called in interrupt context. */ void vunmap(const void *addr) { BUG_ON(in_interrupt()); - -割り込みコンテキスト内で呼び出してはいけない。 --[[linux-2.6.33/BUG_ON()]] - --[[linux-2.6.33/in_interrupt()]] might_sleep(); - --[[linux-2.6.33/might_sleep()]] __vunmap(addr, 0); - --[[linux-2.6.33/__vunmap()]] } EXPORT_SYMBOL(vunmap); -特にライセンスを区別せずシンボルを公開する。 --[[linux-2.6.33/EXPORT_SYMBOL()]] *コメント [#ab5146f7]