*参照元 [#l29d63df]
#backlinks
*説明 [#c3cfcd97]
-パス: [[linux-4.4.1/mm/page_alloc.c]]
-page_order を指定された値に設定し、ページを未使用にする。
--page_order は、このページを先頭として、2^n ページ連続した空き領域があるか?を表す値。
---struct page のプライベート領域(private メンバ)に格納される。
--ページの _mapcount を PAGE_BUDDY_MAPCOUNT_VALUE にする。
_mapcount が PAGE_BUDDY_MAPCOUNT_VALUE の値=未使用、という意味になるようだ。
---PAGE_BUDDY_MAPCOUNT_VALUE は -128
**引数 [#i8ff74ce]
-struct page *page
--ページ
-unsigned int order
--オーダー
**返り値 [#w59248ab]
-void
**参考 [#bac8768a]
-取得する関数。
--[[linux-4.4.1/page_order()]]
--[[linux-4.4.1/page_order_unsafe()]]
-削除する関数。
--[[linux-4.4.1/rmv_page_order()]]
*実装 [#dce17bd4]
static inline void set_page_order(struct page *page, unsigned int order)
{
set_page_private(page, order);
__SetPageBuddy(page);
}
-page_order を order にして、ページを未使用にする。
--[[linux-4.4.1/set_page_private()]]
--[[linux-4.4.1/__SetPageBuddy()]]
*コメント [#sd78877a]