Hi Tobin, I took a look on my system, and I wasn't able to find where PageHead is defined either. I used grep to search for it as well as vim with ctags. Maybe it's hidden away in some built-in.a or binary file. I'm looking on version 5.0.0. Good luck, Jesse Simpson On Thu, Mar 28, 2019 at 09:26:15AM +1100, Tobin C. Harding wrote:
Hi,
I cannot locate the definition of PageHead? It seems to have disappeared after v4.0? I can see it defined as a function here:
https://elixir.bootlin.com/linux/v4.0/source/include/linux/page-flags.h#L401
But on the mainline (v5.1-rc2) I get:
$ git grep ' PageHead' include/linux/page-flags.h:int PageHeadHuge(struct page *page); include/linux/page-flags.h: return PageHead(page); include/linux/page-flags.h: return PageHead(page) && test_bit(PG_double_map, &page[1].flags); mm/hugetlb.c: return PageHead(page) && PagePrivate(&page[1]); mm/hugetlb.c: * PageHeadHuge() only returns true for hugetlbfs head page, but not for mm/hugetlb.c:int PageHeadHuge(struct page *page_head)
Clearly it is defined _somewhere_. Anyone any idea what brain dysfunction I am having right now?
thanks, Tobin.
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies