Messages in this thread | | | Date | Tue, 30 Apr 2013 19:00:27 +0200 | From | Oleg Nesterov <> | Subject | Re: [PATCH 09/10] sigtimedwait: use freezable blocking call |
| |
On 04/30, Colin Cross wrote: > On Tue, Apr 30, 2013 at 9:38 AM, Oleg Nesterov <oleg@redhat.com> wrote: > > On 04/29, Colin Cross wrote: > >> > >> Avoid waking up every thread sleeping in a sigtimedwait call during > >> suspend and resume by calling a freezable blocking call. > > > > This doesn't explain why do want this change... > > > > OK, probably to avoid -EAGAIN from sigtimedwait() if the freezer wakes > > up the caller. > > See http://marc.info/?l=linux-pm&m=136727197819593&w=2 for the full > justification. I will include a fuller description of the reason for > this patch in the next version.
Yes, thanks, I already realized what are you trying to do.
> > The task will be interrupted anyway and the syscall will return > > -EAGAIN, this only changes the time when try_to_freeze() is called. > > > > For what? The task will call do_signal/try_to_freeze really "soon". > > See http://marc.info/?l=linux-pm&m=136727204919622&w=2, which removes > the wakeup sent to skipped tasks, so schedule_timeout_interruptible() > will only return if the timeout finishes or another task
Or if freeze_task() was already called.
but I guess you do not care.
Oleg.
| |