On Mon, Feb 21, 2011 at 9:36 AM, Felipe Balbi <balbi@xxxxxx> wrote: > Hi, > > On Sat, Feb 19, 2011 at 06:04:58PM +0200, David Cohen wrote: >> > I have to disagree. The fundamental problem is the circular dependency >> > between those two files: >> > >> > sched.h uses wait_queue_head_t defined in wait.h >> > wait.h uses TASK_* defined in sched.h >> > >> > So, IMO the real fix would be clear out the circular dependency. Maybe >> > introducing <linux/task.h> to define those TASK_* symbols and include >> > that on sched.h and wait.h >> > >> > Just dig a quick and dirty to try it out and works like a charm >> >> We have 2 problems: >> Â- omap24xxcam compilation broken >> Â- circular dependency between sched.h and wait.h >> >> To fix the broken compilation we can do what the rest of the kernel is >> doing, which is to include sched.h. >> Then, the circular dependency is fixed by some different approach >> which would probably change *all* current usage of TASK_*. > > considering that 1 is caused by 2 I would fix 2. > >> IMO, there's no need to create a dependency between those issues. > > There's no dependency between them, it's just that the root cause for > this problem is a circular dependency between wait.h and sched.h I did a try to fix this circular dependency and the comment I got was to include sched.h in omap24xxcam.c file: http://marc.info/?l=linux-omap&m=129828637120270&w=2 I'm working to remove v4l2 internal device interface from omap24xxcam and then I need this driver's compilation fixed. The whole kernel is including sched.h when wake_up*() macro is used, so this should be our first solution IMO. As I said earlier, no need to make this compilation fix be dependent of wait.h fix (if it's really going to be changed). I think we should proceed with this patch. Br, David > > -- > balbi > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html