Data verification will fail when running the bandwidth
tests or the transfer count is > 1. The issue is that
subsequent writes by the initiator side will overwrite
the data in the target buffer before the receiver can
verify that it is correct.
To fix this, only verify that the data in the buffer
is correct after the last transfer has completed.
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
struct pollfd fds;
int offset, ret;
- if (verify)
- format_buf(buf, size);
-
if (use_async) {
fds.fd = rs;
fds.events = POLLOUT;
struct pollfd fds;
int offset, ret;
- if (verify)
- format_buf(buf, size - 1);
-
if (use_async) {
fds.fd = rs;
fds.events = POLLOUT;
}
}
- if (verify) {
- ret = verify_buf(buf, size);
- if (ret)
- return ret;
- }
-
return 0;
}
goto out;
}
*poll_byte = (uint8_t) marker++;
+ if (verify)
+ format_buf(buf, transfer_size - 1);
ret = send_xfer(transfer_size);
if (ret)
goto out;
goto out;
}
*poll_byte = (uint8_t) marker++;
+ if (verify)
+ format_buf(buf, transfer_size - 1);
ret = send_xfer(transfer_size);
}
if (ret)