lkml.org 
[lkml]   [2009]   [Jun]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: BUG: Bad page state [was: Strange oopses in 2.6.30]
    Date
    > On Mon, Jun 22, 2009 at 11:39:53AM +0900, KOSAKI Motohiro wrote:
    > > (cc to Mel and some reviewer)
    > >
    > > > Flags are:
    > > > 0000000000400000 -- __PG_MLOCKED
    > > > 800000000050000c -- my page flags
    > > > 3650000c -- Maxim's page flags
    > > > 0000000000693ce1 -- my PAGE_FLAGS_CHECK_AT_FREE
    > >
    > > I guess commit da456f14d (page allocator: do not disable interrupts in
    > > free_page_mlock()) is a bit wrong.
    > >
    > > current code is:
    > > -------------------------------------------------------------
    > > static void free_hot_cold_page(struct page *page, int cold)
    > > {
    > > (snip)
    > > int clearMlocked = PageMlocked(page);
    > > (snip)
    > > if (free_pages_check(page))
    > > return;
    > > (snip)
    > > local_irq_save(flags);
    > > if (unlikely(clearMlocked))
    > > free_page_mlock(page);
    > > -------------------------------------------------------------
    > >
    > > Oh well, we remove PG_Mlocked *after* free_pages_check().
    > > Then, it makes false-positive warning.
    > >
    > > Sorry, my review was also wrong. I think reverting this patch is better ;)
    > >
    >
    > I think a revert is way overkill. The intention of the patch is sound -
    > reducing the number of times interrupts are disabled. Having pages
    > with the PG_locked bit is now somewhat of an expected situation. I'd
    > prefer to go with either
    >
    > 1. Unconditionally clearing the bit with TestClearPageLocked as the
    > patch already posted does
    > 2. Removing PG_locked from the free_pages_check()
    > 3. Unlocking the pages as we go when an mlocked VMA is being torn town
    >
    > The patch that addresses 1 seemed ok to me. What do you think?

    Yes, I've overlooked Hanns's patch. I think that is good patch.
    Thansk folks.






    \
     
     \ /
      Last update: 2009-06-23 13:07    [W:0.022 / U:0.420 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site