[openib-general] error trying to bring up node
Sean Hefty
mshefty at ichips.intel.com
Tue Nov 9 12:32:55 PST 2004
Hal Rosenstock wrote:
> On Tue, 2004-11-09 at 14:56, Sean Hefty wrote:
>
>>Sean Hefty wrote:
>>
>>
>>>I have two nodes directly connected. When trying to bring up the openib
>>>node, I receive a local length error on the CQ after trying to perform a
>>>send.
>>>
>>>I'm continuing to debug...
>>
>>static int agent_mad_send(struct ib_mad_agent *mad_agent,
>> struct ib_agent_port_private *port_priv,
>> struct ib_mad_private *mad,
>> struct ib_grh *grh,
>> struct ib_wc *wc)
>>{
>>...
>> /* PCI mapping */
>> gather_list.addr = pci_map_single(mad_agent->device->dma_device,
>> &mad->grh,
>> sizeof *mad -
>> sizeof mad->header,
>> PCI_DMA_TODEVICE);
>> gather_list.length = sizeof *mad - sizeof mad->header;
>> gather_list.lkey = (*port_priv->mr).lkey;
>>
>>
>>Wouldn't this result in sending the GRH data buffer before the MAD
>>buffer? Does mthca check the size of sends that are posted to QP0/1 and
>>report an error if they are larger than 256 bytes?
>
>
> Doesn't that just map starting at the GRH ? This is to handle PMA
> responses which might have GRHs.
It does. But the GRH buffer shouldn't be sent by the user. My thought
was the this would result in the receiver mis-interpreting the received
MAD, and probably dropping it. But I'm seeing that the work request
completes in error, which makes me think that there's still another
error somewhere.
- Sean
More information about the general
mailing list