Subject: Re: [Cbe-oss-dev] [PATCH]Add notification for active Cell SPU tasks

From: Maynard Johnson <[email-masked]>
Date: Mon, 04 Dec 2006 09:36:25 -0600

Arnd Bergmann wrote:
> On Friday 01 December 2006 21:01, Maynard Johnson wrote:
> 
>>+static void notify_spus_active(void)
>>+{
>>+       int node;
>>+       for (node = 0; node < MAX_NUMNODES; node++) {
>>+               struct spu *spu;
>>+               mutex_lock(&spu_prio->active_mutex[node]);
>>+               list_for_each_entry(spu, &spu_prio->active_list[node], list) {
>>+                                struct spu_context *ctx = spu->ctx;
>>+                                blocking_notifier_call_chain(&spu_switch_notifier,
>>+                                                ctx ? ctx->object_id : 0, spu);
>>+               }
>>+               mutex_unlock(&spu_prio->active_mutex[node]);
>>+        }
> 
> 
> I wonder if this is enough for oprofile. Don't you need to access user
> space data of the task running on the SPU? I always assumed you want
No, I don't need anything from the user app besides access to the 
executable binary, which I get with copy_from_user, specifying the 
'objectid' as from address.
> to do it via get_user or copy_from_user, which obviously doesn't work
> here, when you're running in the oprofile task. Are you using something
> like access_process_vm now?
> 
> 	Arnd <><