On 4/7/17 11:36 AM, Bart Van Assche wrote:
On Fri, 2017-04-07 at 11:12 -0500, Bryant G. Ly wrote:
So from this stack trace it looks like the ibmvscsis driver is sending an
extra response through send_messages even though an abort was issued.
IBMi, reported this issue internally when they were testing the driver,
because their client didn't like getting a response back for the aborted op.
They are only expecting a TMR from the abort request, NOT the aborted op.
Hello Bryant,
What is the root cause of this behavior? Why is it that the behavior of
the ibmvscsi_tgt contradicts what has been implemented in the LIO core?
Sorry but the patch at the start of this thread looks to me like an
attempt to paper over the problem instead of addressing the root cause.
Thanks,
IBMi clients received a response for an aborted operation, so they sent an abort tm request.
Afterwards they get a CRQ response to the op that they aborted. That should not happen, because they are only supposed to get a response for the tm request NOT the aborted operation.
Looking at the code it looks like it is due to send messages, processing a response without checking to see if it was an aborted op.
This patch addresses a bug within the ibmvscsis driver and the fact that it SENT a response to the aborted operation(which is wrong since) without looking at what LIO core had done.
The driver isn't supposed to send any response to the aborted operation, BUT only a response to the abort tm request, which LIO core currently does.
-Bryant