]> git.baikalelectronics.ru Git - kernel.git/commit
iscsi-target: Perform release of acknowledged tags from RX context
authorNicholas Bellinger <nab@linux-iscsi.org>
Thu, 3 Oct 2013 20:56:14 +0000 (13:56 -0700)
committerNicholas Bellinger <nab@linux-iscsi.org>
Thu, 3 Oct 2013 21:22:45 +0000 (14:22 -0700)
commitd8938518ea07f1ae4f35d2eeda0ad7685b442834
tree6ea3d9dd0b0bb7c652337ddf7d86f94268917a54
parent5f7bfbcff9215e3b73088778bca55077be88fa1a
iscsi-target: Perform release of acknowledged tags from RX context

This patch converts iscsit_ack_from_expstatsn() to populate a local
ack_list of commands, and call iscsit_free_cmd() directly from RX
thread context, instead of using iscsit_add_cmd_to_immediate_queue()
to queue the acknowledged commands to be released from TX thread
context.

It is helpful to release the acknowledge commands as quickly as
possible, along with the associated percpu_ida tags, in order to
prevent percpu_ida_alloc() from having to steal tags from other
CPUs while waiting for iscsit_free_cmd() to happen from TX thread
context.

Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/iscsi/iscsi_target.c