[Cbe-oss-dev] [PATCH 2/2] spufs: Remove spurious WARN_ON for spu_deactivate for NOSCHED contexts
Jeremy Kerr
jk at ozlabs.org
Tue Jul 17 12:47:56 EST 2007
Arnd,
> But that would be doing the opposite of what we created the NOSCHED
> flag for in the first place. The idea was to minimize the difference
> between an ISOLATE thread and a regular one running without the
> ISOLATE flag, but splitting the isolation into the NOSCHED property,
> which makes the kernel behave differently regarding scheduling and
> debuggability, and the actual ISOLATE flag that only changes how
> the hardware acts and how it interfaces to the kernel.
Does this actually gain us anything? we already have a lot of other
differences between NOSCHED and ISOLATE:
* different binary format
* different loading procedure
* slightly different PPE library call interface
* no access to local store
* no access to npc
* requires firmware & hardware support
It's going to be a big change for a SPE app to go from NOSCHED to
NOSCHED|ISOLATE. Now that we have ISOLATE_EMULATE at the libspe layer,
there's a much better way to debug/develop isolated apps.
(also, if you're really trying to debug your isolated app by removing
the SPU_CREATE_ISOLATE flag (but not SPU_CREATE_NOSCHED), wouldn't
access to a debugger, coredump, and regs be a Good Thing?)
> > However, the main problem is that we'd need to implement the
> > reservation scheme - and that requires time :D
>
> Given unlimited time, I'd rather have an implementation of isolated
> threads without relying on NOSCHED. That would make fewer people
> rely on the odd behaviour of NOSCHED rather than adding more
> complexity to it.
Assisted isolated scheduling gives me nightmares :D
But yes, it'd be a good thing to have one day .. I think. I believe that
the reservations for NOSCHED would be easier to implement, though.
Jeremy
More information about the cbe-oss-dev
mailing list