lkml.org 
[lkml]   [2007]   [Jan]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] flush_cpu_workqueue: don't flush an empty ->worklist
On Tue, Jan 09, 2007 at 01:51:52AM -0800, Andrew Morton wrote:
> > This thread makes absolutely -no- calls to try_to_freeze() in its lifetime.
>
> Looks like a bug to me. powerpc does appear to try to support the freezer.
>
> > 1. Does this mean that the thread can't be frozen? (lets say that the
> > thread's PF_NOFREEZE is not set)
>
> yup. I'd expect the freeze_processes() call would fail if this thread is
> running.

ok.

>
> > AFAICS it can still be frozen by sending it a signal and have the signal
> > delivery code call try_to_freeze() ..
>
> kernel threads don't take signals in the same manner as userspace. A
> kernel thread needs to explicitly poll, via
>
> if (signal_pending(current))
> do_something()

Thanks for the education! I feel much better about the use of process
freezer now ..

> > 2. If the thread can be frozen at any arbitrary point of its execution, then I
> > dont see what prevents cpu_online_map from changing under the feet of rtasd
> > thread,
>
> It cannot.

Excellent ..

I just hope the latency of freeze_processes() is tolerable ..

--
Regards,
vatsa
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-01-09 11:37    [W:0.151 / U:1.800 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site