Re: PATCH: EDAC, core EDAC support code

From: Nish Aravamudan
Date: Sat Oct 15 2005 - 22:07:28 EST


On 10/15/05, Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote:
> This is a subset of the bluesmoke project core code, stripped of the NMI
> work which isn't ready to merge and some of the "interesting" proc
> functionality that needs reworking or just has no place in kernel. It
> requires no core kernel changes except the added scrub functions already
> posted.
>
> The goal is to merge further functionality only after the core code is
> accepted and proven in the base kernel, and only at the point the
> upstream extras are really ready to merge.
>
> Alan
>
> Signed-off-by: Alan Cox <alan@xxxxxxxxxx>
>
>
> diff -u --new-file --recursive --exclude-from /usr/src/exclude linux.vanilla-2.6.14-rc2-mm1/drivers/edac/edac_mc.c linux-2.6.14-rc2-mm1/drivers/edac/edac_mc.c
> --- linux.vanilla-2.6.14-rc2-mm1/drivers/edac/edac_mc.c 1970-01-01 01:00:00.000000000 +0100
> +++ linux-2.6.14-rc2-mm1/drivers/edac/edac_mc.c 2005-10-14 18:26:12.000000000 +0100

<snip>

> +static int poll_msec = 1000;

<snip>

> +static int edac_kernel_thread(void *arg)
> +{
> + struct bs_thread_info *thread = (struct bs_thread_info *) arg;
> +
> + /* detach thread */
> + daemonize(thread->name);
> +
> + current->exit_signal = SIGCHLD;
> + allow_signal(SIGKILL);
> + thread->task = current;
> +
> + /* indicate to starting task we have started */
> + complete(thread->event);
> +
> + /* loop forever, until we are told to stop */
> + while(thread->run != NULL) {
> + void (*run)(unsigned long dummy);
> +
> + /* call the function to check the memory controllers */
> + run = thread->run;
> + if(run)
> + run(thread->dummy);
> +
> + if(signal_pending(current))
> + flush_signals(current);
> +
> + /* ensure we are interruptable */
> + set_current_state(TASK_INTERRUPTIBLE);
> +
> + /* goto sleep for the interval */
> + schedule_timeout((HZ * poll_msec) / 1000);

Can this either be

schedule_timeout_interruptible(msecs_to_jiffies(poll_msec));

or

msleep_interruptible(poll_msec);

?

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