Our documentation of the current page flags is ... not great. I think I can improve it for the page cache side of things; I understand the meanings of locked, writeback, uptodate, dirty, head, waiters, slab, mlocked, mappedtodisk, error, hwpoison, readahead, anon_exclusive, has_hwpoisoned, hugetlb and large_remappable. Where I'm a lot more shaky is the meaning of the more "real MM" flags, like active, referenced, lru, workingset, reserved, reclaim, swapbacked, unevictable, young, idle, swapcache, isolated, and reported. Perhaps we could have an MM session where we try to explain slowly and carefully to each other what all these flags actually mean, talk about what combinations of them make sense, how we might eliminate some of them to make more space in the flags word, and what all this looks like in a memdesc world. And maybe we can get some documentation written about it! Not trying to nerd snipe Jon into attending this session, but if he did ... [thanks to Amir for reminding me that I meant to propose this topic]