Proper use of daemonize()?

From: Stuart MacDonald
Date: Wed Oct 06 2004 - 10:25:24 EST


I've been looking at the kernel threads that use daemonize() and have
some questions about the proper use of this call:

1: Some threads use the lock_kernel() calls around the daemonize()
call. Is this necessary? I thought the BKL was phasing out.

2: Some threads do their setup (like changing the comm string, setting
the signal masks, etc) before daemonize(), some do it after. Is there
any benefit to a particular order of operations? I can't see one.

3: Some threads set current->tty to NULL. Why would a thread *not* do
this?

4: Some threads grab the sigmask_lock before manipulating their masks.
Is this necessary? If so, some threads have bugs. If not, why do some
threads bother?

5: Some threads do flush_signals() or recalc_sigpending() before
updating their blocked mask, some do it after. Does the order matter?
I suspect not.

6: MOD_INC_USE_COUNT should be used by all threads that could be in
drivers built as modules, correct?

7: If you're not spawning a permanent kernel thread (like kswapd frex)
is the any benefit to using reparent_to_init()? I can't see one.

Thanks,
..Stu

-
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/