*参照元 [#a7336aa7] #backlinks *説明 [#w19d738e] -パス: [[linux-4.4.1/include/linux/page-flags.h]] -FIXME: これは何? --説明 **引数 [#g82ea9a8] -struct page *page -- --[[linux-4.4.1/page]] **返り値 [#q97332d9] -int -- **参考 [#a3a31d6b] *実装 [#h6cb949e] #ifdef CONFIG_TRANSPARENT_HUGEPAGE - --[[linux-4.4.1/CONFIG_TRANSPARENT_HUGEPAGE]] /* * PageHuge() only returns true for hugetlbfs pages, but not for * normal or transparent huge pages. * * PageTransHuge() returns true for both transparent huge and * hugetlbfs pages, but not normal pages. PageTransHuge() can only be * called only in the core VM paths where hugetlbfs pages can't exist. */ static inline int PageTransHuge(struct page *page) { VM_BUG_ON_PAGE(PageTail(page), page); return PageHead(page); } ... - --[[linux-4.4.1/VM_BUG_ON_PAGE()]] --[[linux-4.4.1/PageTail()]] --[[linux-4.4.1/PageHead()]] /* * PageTransCompound returns true for both transparent huge pages * and hugetlbfs pages, so it should only be called when it's known * that hugetlbfs pages aren't involved. */ static inline int PageTransCompound(struct page *page) { return PageCompound(page); } - --[[linux-4.4.1/PageCompound()]] /* * PageTransTail returns true for both transparent huge pages * and hugetlbfs pages, so it should only be called when it's known * that hugetlbfs pages aren't involved. */ static inline int PageTransTail(struct page *page) { return PageTail(page); } - --[[linux-4.4.1/PageTail()]] #else static inline int PageTransHuge(struct page *page) { return 0; } ... static inline int PageTransCompound(struct page *page) { return 0; } static inline int PageTransTail(struct page *page) { return 0; } #endif *コメント [#zaabe65a]