Messages in this thread | | | From | Arnd Bergmann <> | Subject | Re: including <linux/workqueue.h> isn't self contained | Date | Thu, 8 Sep 2011 17:14:29 +0200 |
| |
On Tuesday 06 September 2011, Uwe Kleine-König wrote: > compiling drivers/rtc/rtc-imxdi.c currently results in: > > drivers/rtc/rtc-imxdi.c: In function 'di_write_wait': > drivers/rtc/rtc-imxdi.c:168:301: error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function) > drivers/rtc/rtc-imxdi.c:168:301: note: each undeclared identifier is reported only once for each function it appears in > drivers/rtc/rtc-imxdi.c:168:2: error: implicit declaration of function 'signal_pending' > drivers/rtc/rtc-imxdi.c:168:2: error: implicit declaration of function 'schedule_timeout' > drivers/rtc/rtc-imxdi.c: In function 'dryice_norm_irq': > drivers/rtc/rtc-imxdi.c:329:34: error: 'TASK_INTERRUPTIBLE' undeclared (first use in this function) > > This is a regression from > > 4ba8216 (BKL: That's all, folks) > > that removes #inclusion of <linux/sched.h> from include/linux/hardirq.h. > > Adding > > #include <linux/sched.h> > > to the driver fixes it, but I wonder if that is the correct fix because > the driver only uses wait_event_interruptible_timeout (and > wake_up_interruptible) explicitly but none of the three undeclared > symbols.
Sorry about that. I would just include sched.h in there as an easy workaround. Cleaning up the dependencies around sched.h is a larger task and has been going on for roughly as long as the BKL removal, so it's not your job to figure it out now.
Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |