From: Mathijs Mohlmann <mathijs@knoware.nl>
To: Andrea Arcangeli <andrea@suse.de>, "David S. Miller" <davem@redhat.com>
Cc: jgarzik@mandrakesoft.com, linux-kernel@vger.kernel.org,
torvalds@transmeta.com
Subject: Re: [PATCH] fix loop with disabled tasklets
Date: Sun, 11 Nov 2001 03:32:43 +0100 [thread overview]
Message-ID: <20011111023228.85BBA231A4@brand.mmohlmann.demon.nl> (raw)
In-Reply-To: <20011110122141.B2C68231A4@brand.mmohlmann.demon.nl> <20011110.053720.55510115.davem@redhat.com> <20011110160301.B1381@athlon.random>
In-Reply-To: <20011110160301.B1381@athlon.random>
On Saturday 10 November 2001 16:03, Andrea Arcangeli wrote:
> So it seems to fix the looping problem of disabled tasklets we should
> really dschedule the tasklet in tasklet_disable (and of course to forbid
> it to be scheduled when disabled in tasklet_schedule) and later to
> reschedule it in tasklet_enable.
i'm beginning to see my troubles here. (only just now). I have been reading
"writing linux device drivers" and they state some additional properties for
tasklets. These are (page 199-200):
1) a tasklet is guaranteed to run on the cpu that first schedules it. For
better cache behavoir.
2) when a tasklet is disabled, you may still schedule it. It will run asap
after tasklet_enable.
If we also want to enforce these rules we should a) put them in interrupts.h
b) i think we don't escape from using a cpu field and locking it.
Now, i don't know where oreilly got these addition properties from. In fact,
i've been working on the kernel for less then a week and the first two days
were just to setup my cross compiler. I only noticed that my sparcstation LX
didn't boot and that started this of. (oh and i want to see my name in the
changelog someday, just for fun ;).
anyway, don't know were these come from, but i would like to know if we should
enforce them. I'm working on a better patch, which has the above features,
but if we don't support them, no need to wast cycles over them.
This patch i'm working on now removes the tasklet from tasklet_vec[cpu].list
when it is disabled but not after saving smp_processor_id in t->cpu. When the
tasklet is enabled and the tasklet is marked scheduled, the tasklet is added
to the right cpu.
t->cpu is set on first schedule and not reset with additional schedules.
Oh, and i will try to look for races this time ;)
me
next prev parent reply other threads:[~2001-11-11 2:32 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-11-10 12:21 Mathijs Mohlmann
2001-11-10 13:37 ` David S. Miller
2001-11-10 15:03 ` Andrea Arcangeli
2001-11-10 15:29 ` Mathijs Mohlmann
2001-11-10 16:02 ` Alan Cox
2001-11-10 16:37 ` Andrea Arcangeli
2001-11-12 1:11 ` Andrea Arcangeli
2001-11-12 7:42 ` Mathijs Mohlmann
2001-11-12 13:57 ` Andrea Arcangeli
2001-11-12 7:59 ` David S. Miller
2001-11-12 14:03 ` Andrea Arcangeli
2001-11-12 8:03 ` David S. Miller
2001-11-12 14:04 ` Andrea Arcangeli
2001-11-12 14:20 ` Andrea Arcangeli
2001-11-12 17:10 ` Thorsten Kukuk
2001-11-12 19:03 ` Mathijs Mohlmann
2001-11-11 2:32 ` Mathijs Mohlmann [this message]
2001-11-11 15:56 Momchil Velikov
2001-11-12 7:46 ` Mathijs Mohlmann
2001-11-12 8:07 ` Momchil Velikov
2001-11-12 9:11 ` Mathijs Mohlmann
2001-11-12 9:41 ` Momchil Velikov
2001-11-12 9:54 ` Mathijs Mohlmann
2001-11-12 8:00 ` David S. Miller
2001-11-12 15:33 Petr Vandrovec
2001-11-12 14:48 ` Andrea Arcangeli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20011111023228.85BBA231A4@brand.mmohlmann.demon.nl \
--to=mathijs@knoware.nl \
--cc=andrea@suse.de \
--cc=davem@redhat.com \
--cc=jgarzik@mandrakesoft.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®