scsi: iscsi: Fix redundant response for ISCSI_UEVENT_GET_HOST_STATS request
[ Upstream commit 63ca02221c ]
The ISCSI_UEVENT_GET_HOST_STATS request is already handled in
iscsi_get_host_stats(). This fix ensures that redundant responses are
skipped in iscsi_if_rx().
- On success: send reply and stats from iscsi_get_host_stats()
within if_recv_msg().
- On error: fall through.
Signed-off-by: Xiang Zhang <hawkxiang.cpp@gmail.com>
Link: https://lore.kernel.org/r/20250107022432.65390-1-hawkxiang.cpp@gmail.com
Reviewed-by: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
06bfc95f81
commit
44c485f0fc
@@ -4103,7 +4103,7 @@ iscsi_if_rx(struct sk_buff *skb)
|
||||
}
|
||||
do {
|
||||
/*
|
||||
* special case for GET_STATS:
|
||||
* special case for GET_STATS, GET_CHAP and GET_HOST_STATS:
|
||||
* on success - sending reply and stats from
|
||||
* inside of if_recv_msg(),
|
||||
* on error - fall through.
|
||||
@@ -4112,6 +4112,8 @@ iscsi_if_rx(struct sk_buff *skb)
|
||||
break;
|
||||
if (ev->type == ISCSI_UEVENT_GET_CHAP && !err)
|
||||
break;
|
||||
if (ev->type == ISCSI_UEVENT_GET_HOST_STATS && !err)
|
||||
break;
|
||||
err = iscsi_if_send_reply(portid, nlh->nlmsg_type,
|
||||
ev, sizeof(*ev));
|
||||
if (err == -EAGAIN && --retries < 0) {
|
||||
|
||||
Reference in New Issue
Block a user