*参照元 [#wcbe14cc] #backlinks *説明 [#t80e5866] -パス: [[linux-4.4.1/mm/page_alloc.c]] -FIXME: これは何? --ページの確保をわざと失敗させる **引数 [#nf150bcf] -gfp_t gfp_mask -- --[[linux-4.4.1/gfp_mask]] -unsigned int order --確保する領域のサイズをページ数のオーダーで指定する **返り値 [#g336d1a8] -bool --ページの確保に失敗するなら true、成功するなら false **参考 [#i7b55c4a] *実装 [#c05bda82] #ifdef CONFIG_FAIL_PAGE_ALLOC -ページの確保をわざと失敗させるテスト機能が有効な場合 --[[linux-4.4.1/CONFIG_FAIL_PAGE_ALLOC]] ... static bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order) { if (order < fail_page_alloc.min_order) return false; if (gfp_mask & __GFP_NOFAIL) return false; if (fail_page_alloc.ignore_gfp_highmem && (gfp_mask & __GFP_HIGHMEM)) return false; if (fail_page_alloc.ignore_gfp_reclaim && (gfp_mask & __GFP_DIRECT_RECLAIM)) return false; return should_fail(&fail_page_alloc.attr, 1 << order); } ... #else /* CONFIG_FAIL_PAGE_ALLOC */ -ページの確保をわざと失敗させるテスト機能が無効な場合 static inline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order) { return false; } -常に false #endif /* CONFIG_FAIL_PAGE_ALLOC */ *コメント [#u92977e0]