[RFC RESEND 0/2] megaraid: fix illegal pointer dereference in complete_cmd_fusion

chengkaitao posted 2 patches 6 days, 3 hours ago
drivers/scsi/megaraid/megaraid_sas_fusion.c | 18 ++++++++++--------
drivers/scsi/megaraid/megaraid_sas_fusion.h |  2 --
2 files changed, 10 insertions(+), 10 deletions(-)
[RFC RESEND 0/2] megaraid: fix illegal pointer dereference in complete_cmd_fusion
Posted by chengkaitao 6 days, 3 hours ago
From: Chengkaitao <chengkaitao@kylinos.cn>

We have encountered several instances of null pointer dereferences
in the complete_cmd_fusion function. The root cause was consistently
the reply_desc->SMID being erroneously set to 0xffff, resulting in
an invalid cmd_fusion pointer retrieval.

After code review, I suspect synchronization issues in complete_cmd-
_fusion. However, due to the low reproducibility rate of this problem,
I could not perform effective validation. I propose the patch for
kernel community discussion to explore better solutions.

Chengkaitao (2):
  megaraid: Fix the issue of erroneous reset of Words in reply_desc
  megaraid: replacing fusion->busy_mq_poll[*] with irq_context->in_used
    in megasas_blk_mq_poll

 drivers/scsi/megaraid/megaraid_sas_fusion.c | 18 ++++++++++--------
 drivers/scsi/megaraid/megaraid_sas_fusion.h |  2 --
 2 files changed, 10 insertions(+), 10 deletions(-)

-- 
2.50.1 (Apple Git-155)