[openib-general] Unknown SMP Recv
Hal Rosenstock
halr at voltaire.com
Fri Feb 9 11:03:07 PST 2007
On Fri, 2007-02-09 at 13:38, Michael Arndt wrote:
> Hi,
>
> > I have no clue; I don't really understand what you have changed so it is
> > hard to know.
>
> For example: if I send ten SMPs like:
>
> for (i=0;i<10;i++){
> umad_send(portid, agentid, msg, len, timeout, repeats);
> }
>
> timeout > 0!
> than only the first one is sent and all other umad_send calls returning
> with -5.
-5 is EIO
For some reason, umad_send is indicating this after the write into the
fd to pass the send to user_mad kernel module:
n = write(port->dev_fd, mad, length + sizeof *mad);
if (n == length + sizeof *mad)
return 0;
DEBUG("write returned %d != sizeof umad %zu + length %d (%m)",
n, sizeof *mad, length);
if (!errno)
errno = EIO;
return -EIO;
I have no clue as to why subsequent (non first) writes are failing to
write the proper amount of data. Do you have or can you create a simple
test program to demonstrate this ?
-- Hal
> Thanks Michael
More information about the general
mailing list