Don't count requests with status sent as overlapping.

While those requests are still in target OOA queue, for initiator they are
already completed, so tags can be reused.

MFC after:	1 week
This commit is contained in:
mav 2015-01-22 14:49:36 +00:00
parent c0aba3b50d
commit 8338b60618

View File

@ -10826,7 +10826,8 @@ ctl_check_for_blockage(struct ctl_lun *lun, union ctl_io *pending_io,
ooa_io->io_hdr.nexus.targ_port)
&& (pending_io->io_hdr.nexus.initid.id ==
ooa_io->io_hdr.nexus.initid.id))
&& ((ooa_io->io_hdr.flags & CTL_FLAG_ABORT) == 0))
&& ((ooa_io->io_hdr.flags & (CTL_FLAG_ABORT |
CTL_FLAG_STATUS_SENT)) == 0))
return (CTL_ACTION_OVERLAP);
/*
@ -10847,7 +10848,8 @@ ctl_check_for_blockage(struct ctl_lun *lun, union ctl_io *pending_io,
ooa_io->io_hdr.nexus.targ_port)
&& (pending_io->io_hdr.nexus.initid.id ==
ooa_io->io_hdr.nexus.initid.id))
&& ((ooa_io->io_hdr.flags & CTL_FLAG_ABORT) == 0))
&& ((ooa_io->io_hdr.flags & (CTL_FLAG_ABORT |
CTL_FLAG_STATUS_SENT)) == 0))
return (CTL_ACTION_OVERLAP_TAG);
/*