[PATCH] kexec: yield to scheduler when loading kimage segments

Eric W. Biederman ebiederm at xmission.com
Mon Jun 11 17:45:11 PDT 2018


"Farnitano, Jarrett" <jmf at amazon.com> writes:

>> On 6/11/18, 4:00 PM, "Eric W. Biederman" <ebiederm at xmission.com> wrote:
>> 
>>     Is there a practical problem with unresponsiveness?  You are talking
>>     an embedded machine and rarely are there people in front of embedded
>>     computers these days.
>
> I did run into a practical problem. Hardware watchdogs on embedded
> systems can have short timers on the order of seconds. If the system
> is locked up for a few seconds with only a single core available, the
> watchdog may not be pet in a timely fashion. If this happens, the
> hardware watchdog will fire and reset the system.
>
> This really only becomes a problem when you are working with a single
> core, a decently sized initrd, and have a constrained hardware
> watchdog.

That would do it.

My foggy memory says this was not included back in the days where
cond_resched was spelled "if (need_resched) schedule();"  There were
concerns with spreading that too thin.  cond_resched in this path seems
as reasonable as anything.

Eric



More information about the kexec mailing list