On Mon, Apr 19, 2004 at 03:58:17AM -0400, Pavel Roskin wrote:
> On Mon, 19 Apr 2004, Steven Scholz wrote:
>
> > Pavel Roskin wrote:
> > >>
> > >>Does 2.4 support "work queues"?
> > >
> > > No.
> >
> > And what comes with the MTD/JFFS2 code
> >
> > #if LINUX_VERSION_CODE > KERNEL_VERSION(2,5,40)
> > #include_next <linux/workqueue.h>
> > #else
> > #include <linux/tqueue.h>
> > #define work_struct tq_struct
> > #define schedule_work(x) schedule_task(x)
> > #define flush_scheduled_work flush_scheduled_tasks
> > #define INIT_WORK(x,y,z) INIT_TQUEUE(x,y,z)
> > #endif
> >
> > is only to "simulate" work queues?
>
> That's the same as our kcompat.h. It's not real work queues. You
> cannot sleep in them.
Err... I think you're mistaken there. I started using task queues
precisely so that I could sleep.
> > > In a nutshell, "task queues" and "work queues" have a very similar
> > > interface, but "work queues" run in the user context and can sleep.
> > > "task queues" are run as bottom halves and cannot be preempted by
> > > softirqs.
> > So if I need sometihing done "real soon now" in a device driver then I'd
> > take tasklets !?
>
> I have never used tasklets. I'm afraid you'll have to ask someone else.
> I don't want to be a Google proxy for you :-)
Tasklets and task queues are entirely different things..
--
David Gibson | For every complex problem there is a
david AT gibson.dropbear.id.au | solution which is simple, neat and
| wrong.
http://www.ozlabs.org/people/dgibson
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
|