Re: tasklets in 2.4.6

2001-07-06 Thread Jeff Garzik
Andrea Arcangeli wrote: > On Fri, Jul 06, 2001 at 04:25:49AM -0400, Jeff Garzik wrote: > > Why does tasklet_trylock go away? > > because the logic is different, that's perfectly ok. In short when irq > are enabled and the TASKLET_STATE_SCHED bit is set, then the tasklet is > also queued. That's t

Re: tasklets in 2.4.6

2001-07-06 Thread Andrea Arcangeli
On Fri, Jul 06, 2001 at 04:25:49AM -0400, Jeff Garzik wrote: > Jeff Garzik wrote: > > The only thing that appears fishy is that if the tasklet constantly > > reschedules itself, it will never leave the loop AFAICS. This affects > > tasklet_hi_action as well as tasklet_action. > > As I hacked aro

Re: tasklets in 2.4.6

2001-07-06 Thread Andrea Arcangeli
On Fri, Jul 06, 2001 at 03:08:05AM -0400, Jeff Garzik wrote: > Ville Nummela wrote: > > In kernel/softirq.c, line 178: > > > > if (test_bit(TASKLET_STATE_SCHED, &t->state)) > > tasklet_schedule(t); > > > > What's the idea behind this line? If the tasklet i

Re: tasklets in 2.4.6

2001-07-06 Thread Jeff Garzik
Jeff Garzik wrote: > > --- 2.4.6pre5/include/asm-alpha/softirq.h Thu Jun 21 08:03:51 2001 > > +++ softirq/include/asm-alpha/softirq.h Thu Jun 21 15:58:06 2001 > > @@ -8,21 +8,28 @@ > > extern inline void cpu_bh_disable(int cpu) > > { > > local_bh_count(cpu)++; > > - mb(); > >

Re: tasklets in 2.4.6

2001-07-06 Thread Jeff Garzik
Jeff Garzik wrote: > The only thing that appears fishy is that if the tasklet constantly > reschedules itself, it will never leave the loop AFAICS. This affects > tasklet_hi_action as well as tasklet_action. As I hacked around to fix this, I noticed Andrea's ksoftirq patch already fixed this. S

Re: tasklets in 2.4.6

2001-07-05 Thread Jeff Garzik
Ville Nummela wrote: > In kernel/softirq.c, line 178: > > if (test_bit(TASKLET_STATE_SCHED, &t->state)) > tasklet_schedule(t); > > What's the idea behind this line? If the tasklet is already scheduled, > schedule it again? This does not make much sense to