Hi Jim.... > when the BH work is done in a workqueue, is it typically the top half > that does the enqueing, or is it usually a BH pump-primer ? I am not sure what you really mean here.... > Sounds like do_softirqs() is the real BH pump-primer, > and the registered softirq handlers would encqueue the work. > close ? Maybe. But IMHO, this is case by case answer. > Is there a recommended max for top-half execution time, > instruction count, no-looping, asmlinkage, etc ? I don't know.The basic rule I know are just "do it as fast as you can and defer as many as you can outside interrupt context" and "minimize lock contention" regards Mulyadi -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/