Loading drivers/soc/qcom/mem-offline.c +8 −0 Original line number Diff line number Diff line Loading @@ -118,6 +118,14 @@ static int mem_event_callback(struct notifier_block *self, start_addr = __pfn_to_phys(start); end_addr = __pfn_to_phys(end); sec_nr = pfn_to_section_nr(start); if (sec_nr > end_section_nr || sec_nr < start_section_nr) { if (action == MEM_ONLINE || action == MEM_OFFLINE) pr_info("mem-offline: %s mem%d, but not our block. Not performing any action\n", action == MEM_ONLINE ? "Onlined" : "Offlined", sec_nr); return NOTIFY_OK; } switch (action) { case MEM_GOING_ONLINE: pr_debug("mem-offline: MEM_GOING_ONLINE : start = 0x%lx end = 0x%lx\n", Loading mm/page_alloc.c +1 −1 Original line number Diff line number Diff line Loading @@ -8087,7 +8087,7 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn) zone->free_area[order].nr_free--; for (i = 0; i < (1 << order); i++) SetPageReserved((page+i)); post_alloc_hook(page, order, GFP_KERNEL); post_alloc_hook(page, order, GFP_NOWAIT); pfn += (1 << order); } spin_unlock_irqrestore(&zone->lock, flags); Loading Loading
drivers/soc/qcom/mem-offline.c +8 −0 Original line number Diff line number Diff line Loading @@ -118,6 +118,14 @@ static int mem_event_callback(struct notifier_block *self, start_addr = __pfn_to_phys(start); end_addr = __pfn_to_phys(end); sec_nr = pfn_to_section_nr(start); if (sec_nr > end_section_nr || sec_nr < start_section_nr) { if (action == MEM_ONLINE || action == MEM_OFFLINE) pr_info("mem-offline: %s mem%d, but not our block. Not performing any action\n", action == MEM_ONLINE ? "Onlined" : "Offlined", sec_nr); return NOTIFY_OK; } switch (action) { case MEM_GOING_ONLINE: pr_debug("mem-offline: MEM_GOING_ONLINE : start = 0x%lx end = 0x%lx\n", Loading
mm/page_alloc.c +1 −1 Original line number Diff line number Diff line Loading @@ -8087,7 +8087,7 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn) zone->free_area[order].nr_free--; for (i = 0; i < (1 << order); i++) SetPageReserved((page+i)); post_alloc_hook(page, order, GFP_KERNEL); post_alloc_hook(page, order, GFP_NOWAIT); pfn += (1 << order); } spin_unlock_irqrestore(&zone->lock, flags); Loading