Keith Owens wrote:
> On Tue, 08 Apr 2003 11:28:54 -0400,
> Nicholas Wourms <nwourms@xxxxxxxxxxxxx> wrote:
>
>>According to the ChangLog, the kdb code now has automatic
>>recognition support for the O(1) scheduler. However, in
>>kdb_bt.c, there is an ungaurded "init_tasks". This causes
>>problems for users of O(1), because the scheduler removes
>>init_tasks in favor of something else. Just thought I'd
>>report this.
>
>
> It depends which O(1) scheduler you are using, there are
multiple
> variants. In the version that SGI use on the Altix
boxes, init_tasks
> still exists.
>
> However this has got to be enough of a nuisance that the
next version
> of kdb will drop init_tasks and use its own data areas to
track the
> idle tasks.
>
Just for kicks, I tried compiling the latest kdb into the
RedHat 9.0 source package. Unfortunately, the
signal/threading backport for NPTL seems to be causing even
more undefined/undeclared function calls then the O(1)
scheduler already does alone. Specifically, it seems as if:
init_tasks (we already know about this one)
task_has_cpu
runqueue_lock
are no longer used, having been replaced by per-cpu based
versions. Seeing as how this backport is essential for
NPTL, will the next kdb be able to work with patch & Ingo's
O(1) (or RedHat 9.0 sources for that matter)? It'd be a
bummer to have to choose between the two (or have to go with
an older kdb)...
I tried, but unfortunately was unsuccessful, in my attempts
to get it working properly on a SMP box. I did get it to
compile, but I know that my lack of understanding w.r.t. to
kernel scheduling and threading led to kdb not actually
working properly. I googled for some conversion samples,
but unfortunately converting from the old functions &
structs to the new ones seems to require more then just a
passing bit of knowledge. Has anyone else tried getting it
working with RedHat 9 sources? Any workarounds or solutions?
Cheers,
Nicholas
|