linux-2.6.33/__find_vmap_area()
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#o5c66877]
#backlinks
*説明 [#z0a0c98a]
-パス: [[linux-2.6.33/mm/vmalloc.c]]
-FIXME: これは何?
--スピンロックによる排他なし。
排他が必要な場合は find_vmap_area() を使うこと。
**引数 [#c23863f1]
-unsigned long addr
--
**返り値 [#b41ac496]
-struct vmap_area *
--
--[[linux-2.6.33/vmap_area]]
**参考 [#m57f9621]
*実装 [#v4b17b01]
static struct vmap_area *__find_vmap_area(unsigned long ...
{
struct rb_node *n = vmap_area_root.rb_node;
-
--[[linux-2.6.33/rb_node]]
-
--[[linux-2.6.33/vmap_area_root(global)]]
while (n) {
struct vmap_area *va;
va = rb_entry(n, struct vmap_area, rb_node);
-
--[[linux-2.6.33/rb_entry()]]
if (addr < va->va_start)
n = n->rb_left;
else if (addr > va->va_start)
n = n->rb_right;
else
return va;
}
return NULL;
}
*コメント [#vf465947]
終了行:
*参照元 [#o5c66877]
#backlinks
*説明 [#z0a0c98a]
-パス: [[linux-2.6.33/mm/vmalloc.c]]
-FIXME: これは何?
--スピンロックによる排他なし。
排他が必要な場合は find_vmap_area() を使うこと。
**引数 [#c23863f1]
-unsigned long addr
--
**返り値 [#b41ac496]
-struct vmap_area *
--
--[[linux-2.6.33/vmap_area]]
**参考 [#m57f9621]
*実装 [#v4b17b01]
static struct vmap_area *__find_vmap_area(unsigned long ...
{
struct rb_node *n = vmap_area_root.rb_node;
-
--[[linux-2.6.33/rb_node]]
-
--[[linux-2.6.33/vmap_area_root(global)]]
while (n) {
struct vmap_area *va;
va = rb_entry(n, struct vmap_area, rb_node);
-
--[[linux-2.6.33/rb_entry()]]
if (addr < va->va_start)
n = n->rb_left;
else if (addr > va->va_start)
n = n->rb_right;
else
return va;
}
return NULL;
}
*コメント [#vf465947]
ページ名: