pdu: introduce ISCSI_PDU_URGENT_DELIVERY
Signed-off-by: Peter Lieven <pl@kamp.de>
This commit is contained in:
@@ -212,6 +212,11 @@ struct iscsi_pdu {
|
|||||||
#define ISCSI_PDU_DROP_ON_RECONNECT 0x00000004
|
#define ISCSI_PDU_DROP_ON_RECONNECT 0x00000004
|
||||||
/* stop sending after this PDU has been sent */
|
/* stop sending after this PDU has been sent */
|
||||||
#define ISCSI_PDU_CORK_WHEN_SENT 0x00000008
|
#define ISCSI_PDU_CORK_WHEN_SENT 0x00000008
|
||||||
|
/* put this immediate delivery PDU in front of outqueue.
|
||||||
|
* This is currently only used for immediate logout requests
|
||||||
|
* as answer to an async logout event. */
|
||||||
|
#define ISCSI_PDU_URGENT_DELIVERY 0x00000010
|
||||||
|
|
||||||
|
|
||||||
uint32_t flags;
|
uint32_t flags;
|
||||||
|
|
||||||
|
|||||||
+2
-1
@@ -94,7 +94,8 @@ iscsi_add_to_outqueue(struct iscsi_context *iscsi, struct iscsi_pdu *pdu)
|
|||||||
* ensure that pakets with the same CmdSN are kept in FIFO order.
|
* ensure that pakets with the same CmdSN are kept in FIFO order.
|
||||||
*/
|
*/
|
||||||
do {
|
do {
|
||||||
if (iscsi_serial32_compare(pdu->cmdsn, current->cmdsn) < 0) {
|
if (iscsi_serial32_compare(pdu->cmdsn, current->cmdsn) < 0 ||
|
||||||
|
pdu->flags & ISCSI_PDU_URGENT_DELIVERY) {
|
||||||
/* insert PDU before the current */
|
/* insert PDU before the current */
|
||||||
if (last != NULL) {
|
if (last != NULL) {
|
||||||
last->next=pdu;
|
last->next=pdu;
|
||||||
|
|||||||
Reference in New Issue
Block a user