Skip to contentSkip to conversation

BUG: unable to handle kernel NULL pointer dereference under stress (possibly related to https://lkml.org/lkml/2019/5/24/292 ?)

Bug 203715 [email protected] 1 participant 1 message Jun 7, 2019 1 message not in the archive Memory management

lore
Share & tools
lore
#1 lore raw
In reply to a message not in the archive
Quoted 28 lines

Please try the following on top of 5.2-rc3

mm/compaction.c +1 -2
index 9e1b9acb116b..69f4ddfddfa4 100644
@@ -277,8 +277,7 @@ __reset_isolation_pfn(struct zone *zone, unsigned long pf
 n,
 bool check_source,
        }
 
        /* Ensure the end of the pageblock or zone is online and valid */
-       block_pfn += pageblock_nr_pages;
-       block_pfn = min(block_pfn, zone_end_pfn(zone) - 1);
+       block_pfn = min(pageblock_end_pfn(block_pfn), zone_end_pfn(zone) - 1)
 ;
        end_page = pfn_to_online_page(block_pfn);
        if (!end_page)
                return false;
mm/compaction.c +1 -1
@@ -289,7 +288,7 @@ __reset_isolation_pfn(struct zone *zone, unsigned long pf
 n,
 bool check_source,
         * is necessary for the block to be a migration source/target.
         */
        do {
-               if (pfn_valid_within(pfn)) {
+               if (pfn_valid(pfn)) {
                        if (check_source && PageLRU(page)) {
Quoted 3 lines
                                clear_pageblock_skip(page);
                                return true;

no joy; I left the FF build running and found the machine frozen this morning; however, firefox build could apparently complete successfully; I can't say when exactly the problem happened, as I haven't found any message in the logs

thanks
ciao
-g