On Mon 21-10-19 07:00:46, Naoya Horiguchi wrote: > On Fri, Oct 18, 2019 at 01:48:32PM +0200, Michal Hocko wrote: > > On Thu 17-10-19 16:21:08, Oscar Salvador wrote: > > > From: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx> > > > > > > Drop the PageHuge check since memory_failure forks into memory_failure_hugetlb() > > > for hugetlb pages. > > > > > > Signed-off-by: Oscar Salvador <osalvador@xxxxxxx> > > > Signed-off-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx> > > > > s-o-b chain is reversed. > > > > The code is a bit confusing. Doesn't this check aim for THP? > > No, PageHuge() is false for thp, so this if branch is just dead code. > > > AFAICS > > PageTransHuge(hpage) will split the THP or fail so PageTransHuge > > shouldn't be possible anymore, right? > > Yes, that's right. > > > But why does hwpoison_user_mappings > > still work with hpage then? > > hwpoison_user_mappings() is called both from memory_failure() and > from memory_failure_hugetlb(), so it need handle both cases. Thanks for the clarification. Maybe the changelog could be more explicit because the code is quite confusing. -- Michal Hocko SUSE Labs