Skip to contentSkip to conversation

qla2xxx: Fix a recently introduced kernel warning

PATCH Applied Bart Van Assche 3 participants 3 messages Aug 20, 2019 – Aug 29, 2019

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 qla2xxx: Fix a recently introduced kernel warning

According to the firmware documentation a status type 0 IOCB can be followed by one or more status continuation type 0 IOCBs. Hence do not complain if the completion function is not called from inside the status type 0 IOCB handler.

WARNING: CPU: 10 PID: 425 at drivers/scsi/qla2xxx/qla_isr.c:2784
qla2x00_status_entry.isra.7+0x484/0x17b0 [qla2xxx]
CPU: 10 PID: 425 Comm: kworker/10:1 Tainted: G            E     5.3.0-rc4-next-20190813-autotest-autotest #1
Workqueue: qla2xxx_wq qla25xx_free_rsp_que [qla2xxx]
Call Trace:
 qla2x00_status_entry.isra.7+0x1484/0x17b0 [qla2xxx] (unreliable)
 qla24xx_process_response_queue+0x7d8/0xbd0 [qla2xxx]
 qla25xx_free_rsp_que+0x1a0/0x220 [qla2xxx]
 process_one_work+0x25c/0x520
 worker_thread+0x8c/0x5e0
 kthread+0x154/0x1a0
 ret_from_kernel_thread+0x5c/0x7c
Cc Himanshu Madhani <[email protected]>
Cc Abdul Haleem <[email protected]>
Reported-and-tested-by Abdul Haleem <[email protected]>
---
 drivers/scsi/qla2xxx/qla_isr.c | 2 --
 1 file changed, 2 deletions(-)
drivers/scsi/qla2xxx/qla_isr.c +0 -2
index cd39ac18c5fd..d81b5ecce24b 100644
@@ -2780,8 +2780,6 @@ qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
 
 	if (rsp->status_srb == NULL)
 		sp->done(sp, res);
-	else
-		WARN_ON_ONCE(true);
 }
 
 /**
Signature · 1 line
2.22.0
Reviewed-by on v1 1/1
#1 lore raw
Quoted 31 lines · Bart Van Assche

According to the firmware documentation a status type 0 IOCB can be followed by one or more status continuation type 0 IOCBs. Hence do not complain if the completion function is not called from inside the status type 0 IOCB handler.

WARNING: CPU: 10 PID: 425 at drivers/scsi/qla2xxx/qla_isr.c:2784
qla2x00_status_entry.isra.7+0x484/0x17b0 [qla2xxx]
CPU: 10 PID: 425 Comm: kworker/10:1 Tainted: G            E     5.3.0-rc4-next-20190813-autotest-autotest #1
Workqueue: qla2xxx_wq qla25xx_free_rsp_que [qla2xxx]
Call Trace:
 qla2x00_status_entry.isra.7+0x1484/0x17b0 [qla2xxx] (unreliable)
 qla24xx_process_response_queue+0x7d8/0xbd0 [qla2xxx]
 qla25xx_free_rsp_que+0x1a0/0x220 [qla2xxx]
 process_one_work+0x25c/0x520
 worker_thread+0x8c/0x5e0
 kthread+0x154/0x1a0
 ret_from_kernel_thread+0x5c/0x7c
Cc Himanshu Madhani <[email protected]>
Cc Abdul Haleem <[email protected]>
Reported-and-tested-by Abdul Haleem <[email protected]>
---
 drivers/scsi/qla2xxx/qla_isr.c | 2 --
 1 file changed, 2 deletions(-)
drivers/scsi/qla2xxx/qla_isr.c +0 -0
index cd39ac18c5fd..d81b5ecce24b 100644

drivers/scsi/qla2xxx/qla_isr.c qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt) · line 2782

Quoted 3 lines
drivers/scsi/qla2xxx/qla_isr.c +0 -0
@@ -2780,8 +2780,6 @@ qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
 
 	if (rsp->status_srb == NULL)
 		sp->done(sp,  * do-not-remove-the-first-digit-when-auto-completing-the-tpg-tag

res);

drivers/scsi/qla2xxx/qla_isr.c qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt) · line 2785

Quoted 6 lines
drivers/scsi/qla2xxx/qla_isr.c +0 -2
-	else
-		WARN_ON_ONCE(true);
 }
 
 /**
#2 lore raw
In reply to Bart Van Assche

Bart,

Quoted 4 lines

According to the firmware documentation a status type 0 IOCB can be followed by one or more status continuation type 0 IOCBs. Hence do not complain if the completion function is not called from inside the status type 0 IOCB handler.

Applied to 5.4/scsi-queue, thanks!

Signature · 1 line
Martin K. Petersen	Oracle Linux Engineering