[OpenAFS-devel] OpenAFS and OpenSolaris

Dale Ghent daleg@elemental.org
Thu, 11 Jun 2009 09:49:27 -0400


On Jun 11, 2009, at 7:20 AM, Klas Heggemann wrote:

> Dale Ghent skrev:
>>
>> Try trussing it to see what errno bind() is failing with. That  
>> error would be a start in figuring out what's wrong.
>
> Unfortunatly truss does not show what happens in kernel space, and  
> this code seems to be
> in the kernel module. Truss just shows the afs-syscall and the return.
>
> afsd calls rx_InitHost whic calls rxi_getHostUDPPort which I think  
> calls
> rxk_NewSocket, if I figured this right. Why this fails I have not  
> figured out.


Ah, right.

dtrace, then. Try the following after the afs module is loaded and  
when starting afsd. This will show you what's going on inside the  
module and report the function return values.

#!/usr/sbin/dtrace -s

#pragma D option flowindent

fbt::rxk_NewSocketHost:entry
{
	self->follow = 1;
}

fbt::rxk_NewSocketHost:return
{
	self->follow = 0;
	trace(arg1);
}

fbt:::entry
/self->follow/
{

}

fbt:::return
/self->follow/
{
	trace(arg1);
}