On Mon, 2013-03-18 at 20:53 +0530, Viresh Kumar wrote:
+/*
- This routine returns the nearest non-idle cpu. It accepts a
bitwise OR of
- SD_* flags present in linux/sched.h. If the local CPU isn't idle,
it is
- returned back. If it is idle, then we must look for another CPU
which have
- all the flags passed as argument as set.
- */
+int sched_select_cpu(unsigned int sd_flags)
So the only problem I have is that you expose the SD_flags to !sched code. The only proposed user is in the workqueue code and passes 0.
Why not leave out the sd_flags argument and introduce it once you start using it; at which point we can argue on the interface.