Steve Gonczi wrote:
> Hello,
> 
> I am debuggin a doors problem.  My question is: how should I interpret the 
> door_pc field in the door_node? 
>  As per the Mauro/McDougall book it contains the address of the function that 
> services the door.
> 
> It does not look like a fully formed 64 bit address, as I cannot just do a 
> xxxx:dis on it.
> Looks more like some sort of an offset, but an offset from what?

It definitely is supposed to be a text address of a callable routine:

                 (*(dp->door_pc))(dp->door_data, &ct->d_args,
                     &destfn, &destarg, &error);

> 
> I am looking at a  CIFS problem that surfaced recently. I see many smb 
> threads stuck 
> waiting forever on pool->dp_cv having called into door_get_server().  
> Obviously there are no threads
>  available in the thread pool of whatever this particular door is.
> 
> It would be interesting to know which function, and perhaps walk the threads 
> in the 
>  door's thread pool. Are they blocked? Did they go away but forgot to call
> door_release_server()?  
>  
> Any elucidation of the door_pc field would be much appreciated.
> A hint on walking the thread pool of a given door would also be useful.
> 
> Steve

Reply via email to