#author("2025-10-20T17:16:32+09:00","default:guest","guest")
#author("2025-10-20T17:16:52+09:00","default:guest","guest")
*参照元 [#ubcecf02]
#backlinks

*説明 [#t603c530]
-パス: [[linux-5.15/mm/page_alloc.c]]

-pcplist(Per-CPU list)からページを確保するかどうかを判定する。


**引数 [#c8ffb8e6]
-unsigned int order
--オーダー


**返り値 [#uccb6554]
-bool
--trueならpcplistからページ確保する、falseならpcplistからページ確保しない。


**参考 [#qc7b2151]


*実装 [#x3618d75]

 static inline bool pcp_allowed_order(unsigned int order)
 {
 	if (order <= PAGE_ALLOC_COSTLY_ORDER)
 		return true;
 #ifdef CONFIG_TRANSPARENT_HUGEPAGE
 	if (order == pageblock_order)
 		return true;
 #endif
 	return false;
 }

-Transparent Hugepageが無効: 3以下ならtrue
--PAGE_ALLOC_COSTLY_ORDERは3
-Transparent Hugepageが有効: pageblock_orderと等しければtrue
--pageblock_order = HUGETLB_PAGE_ORDER = 9
--AArch64版の例: pageblock_order = HUGETLB_PAGE_ORDER = 9
--[[linux-5.15/HUGETLB_PAGE_ORDER]]


*コメント [#u5b5ac57]

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS