On 24.07.2018 14:22, Vlastimil Babka wrote: > On 07/24/2018 01:19 PM, Michal Hocko wrote: >>> When creating a crashdump, I definitely need the pages containing memmap >>> included in the dump, so I can inspect the struct pages. But this is a >>> bit recursive issue, so I'll try making it clearer: >>> >>> 1) there are kernel pages with data (e.g. slab) that I typically need in >>> the dump, and are not PageReserved >>> 2) there are struct pages for pages 1) in the memmap that physically >>> hold the pageflags for 1), and these are PageReserved >>> 3) there are struct pages for pages 2) somewhere else in the memmap, >>> physically hold the pageflags for 2). They are probably also >>> PageReserved themselves ? and self-referencing. >>> >>> Excluding PageReserved from dump means there won't be cases 2) and 3) in >>> the dump, which at least for case 2) is making such dump almost useless >>> in many cases. >> >> Yes, we cannot simply exclude all PageReserved pages. I was merely >> suggesting to rule out new special PageReserved pages that are denoting >> offline pages. The same could be applied to HWPoison pages > > So how about marking them with some "page type" that we got after > Matthew's struct page reorg? I assume the pages we're talking about are > in a state that they don't need the mapcount/mapping field or whatever > unions with the page type... but I guess some care would be needed to > not have false positives when the union field is actually used but > happens to look like the new type. > Had that implemented, Michal didn't like it so far. ("waste of one bit") -- Thanks, David / dhildenb