socket: add iscsi_out_queue_length() function
This function allows the caller to determine the number of PDUs queued for transmission for a given iscsi context. Signed-off-by: David Disseldorp <ddiss@suse.de>
This commit is contained in:
@@ -82,6 +82,11 @@ EXTERN int iscsi_service(struct iscsi_context *iscsi, int revents);
|
||||
* How many commands are in flight.
|
||||
*/
|
||||
EXTERN int iscsi_queue_length(struct iscsi_context *iscsi);
|
||||
/*
|
||||
* How many commands are queued for dispatch.
|
||||
*/
|
||||
EXTERN int iscsi_out_queue_length(struct iscsi_context *iscsi);
|
||||
|
||||
|
||||
/************************************************************
|
||||
* Timeout Handling.
|
||||
|
||||
@@ -46,6 +46,7 @@ iscsi_prefetch16_task
|
||||
iscsi_preventallow_sync
|
||||
iscsi_preventallow_task
|
||||
iscsi_queue_length
|
||||
iscsi_out_queue_length
|
||||
iscsi_queue_pdu
|
||||
iscsi_read10_sync
|
||||
iscsi_read10_task
|
||||
|
||||
@@ -44,6 +44,7 @@ iscsi_prefetch16_task
|
||||
iscsi_preventallow_sync
|
||||
iscsi_preventallow_task
|
||||
iscsi_queue_length
|
||||
iscsi_out_queue_length
|
||||
iscsi_queue_pdu
|
||||
iscsi_read10_sync
|
||||
iscsi_read10_task
|
||||
|
||||
13
lib/socket.c
13
lib/socket.c
@@ -439,6 +439,19 @@ iscsi_queue_length(struct iscsi_context *iscsi)
|
||||
return i;
|
||||
}
|
||||
|
||||
int
|
||||
iscsi_out_queue_length(struct iscsi_context *iscsi)
|
||||
{
|
||||
int i = 0;
|
||||
struct iscsi_pdu *pdu;
|
||||
|
||||
for (pdu = iscsi->outqueue; pdu; pdu = pdu->next) {
|
||||
i++;
|
||||
}
|
||||
|
||||
return i;
|
||||
}
|
||||
|
||||
ssize_t
|
||||
iscsi_iovector_readv_writev(struct iscsi_context *iscsi, struct scsi_iovector *iovector, uint32_t pos, ssize_t count, int do_write)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user