On Mon, Apr 24, 2023 at 2:37 PM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote: > > On Mon, Apr 24, 2023 at 02:17:12PM -0700, Yang Shi wrote: > > On Fri, Apr 21, 2023 at 8:05 PM Luis Chamberlain <mcgrof@xxxxxxxxxx> wrote: > > > > > > On Fri, Apr 21, 2023 at 11:42:53PM +0100, Matthew Wilcox wrote: > > > > On Fri, Apr 21, 2023 at 02:43:54PM -0700, Luis Chamberlain wrote: > > > > > The PageHWPoison() call can be converted over to the respective folio call > > > > > folio_test_hwpoison(). This introduces no functional changes. > > > > > > > > Um, no. Nobody should use folio_test_hwpoison(), it's a nonsense. > > > > > > > > Individual pages are hwpoisoned. You're only testing the head page > > > > if you use folio_test_hwpoison(). There's folio_has_hwpoisoned() to > > > > test if _any_ page in the folio is poisoned. But blindly converting > > > > PageHWPoison to folio_test_hwpoison() is wrong. > > > > > > Thanks! I don't see folio_has_hwpoisoned() though. > > > > We do have PageHasHWPoisoned(), which indicates at least one subpage > > is hwpoisoned in the huge page. > > > > You may need to add a folio variant. > > PAGEFLAG(HasHWPoisoned, has_hwpoisoned, PF_SECOND) > TESTSCFLAG(HasHWPoisoned, has_hwpoisoned, PF_SECOND) > > That generates folio_has_hwpoisoned() along with > folio_set_has_hwpoisoned(), folio_clear_has_hwpoisoned(), > folio_test_set_has_hwpoisoned() and folio_test_clear_has_hwpoisoned(). Oh, yeah, I missed that part. Thanks.