Re: [PATCH][RFC v2] PM / Hibernate: Disable wathdog when creating snapshot

From: Michal Hocko
Date: Wed Aug 16 2017 - 08:34:13 EST


On Wed 16-08-17 12:53:38, Chen Yu wrote:
[...]
> @@ -2537,10 +2538,15 @@ void mark_free_pages(struct zone *zone)
> unsigned long flags;
> unsigned int order, t;
> struct page *page;
> + bool wd_suspended;
>
> if (zone_is_empty(zone))
> return;
>
> + wd_suspended = lockup_detector_suspend() ? false : true;
> + if (!wd_suspended)
> + pr_warn_once("Failed to disable lockup detector during hibernation.\n");
> +
> spin_lock_irqsave(&zone->lock, flags);
>
> max_zone_pfn = zone_end_pfn(zone);

I am not maintainer of this code so I am not very familiar with the full
context of this function but lockup_detector_suspend is just too heavy
for the purpose you are trying to achive. Really why don't you just
poke the watchdog every N pages?
--
Michal Hocko
SUSE Labs