Patch "mailbox: pcc: Handle all PCC subtypes correctly in pcc_mbox_irq" has been added to the 5.16-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    mailbox: pcc: Handle all PCC subtypes correctly in pcc_mbox_irq

to the 5.16-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     mailbox-pcc-handle-all-pcc-subtypes-correctly-in-pcc.patch
and it can be found in the queue-5.16 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit b1008eaae7f1b5192837f67ac6165535050beb8d
Author: Sudeep Holla <sudeep.holla@xxxxxxx>
Date:   Thu Dec 9 09:21:46 2021 +0000

    mailbox: pcc: Handle all PCC subtypes correctly in pcc_mbox_irq
    
    [ Upstream commit 7215a7857e796c655ae1184b313556102fa8bc40 ]
    
    Commit c45ded7e1135 ("mailbox: pcc: Add support for PCCT extended PCC
    subspaces(type 3/4)") enabled the type3/4 of PCCT, but the change in
    pcc_mbox_irq breaks the other PCC subtypes.
    
    The kernel reports a warning on an Ampere eMag server
    
    -->8
     CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.16.0-rc4 #127
     Hardware name: MiTAC RAPTOR EV-883832-X3-0001/RAPTOR, BIOS 0.14 02/22/2019
     Call trace:
      dump_backtrace+0x0/0x200
      show_stack+0x20/0x30
      dump_stack_lvl+0x68/0x84
      dump_stack+0x18/0x34
      __report_bad_irq+0x54/0x17c
      note_interrupt+0x330/0x428
      handle_irq_event_percpu+0x90/0x98
      handle_irq_event+0x4c/0x148
      handle_fasteoi_irq+0xc4/0x188
      generic_handle_domain_irq+0x44/0x68
      gic_handle_irq+0x84/0x2ec
      call_on_irq_stack+0x28/0x34
      do_interrupt_handler+0x88/0x90
      el1_interrupt+0x48/0xb0
      el1h_64_irq_handler+0x18/0x28
      el1h_64_irq+0x7c/0x80
    
    Fixes: c45ded7e1135 ("mailbox: pcc: Add support for PCCT extended PCC subspaces(type 3/4)")
    Reported-by: Justin He <justin.he@xxxxxxx>
    Tested-by: Justin He <justin.he@xxxxxxx>
    Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx>
    Signed-off-by: Jassi Brar <jaswinder.singh@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/mailbox/pcc.c b/drivers/mailbox/pcc.c
index e0a1ab3861f0d..ed18936b8ce68 100644
--- a/drivers/mailbox/pcc.c
+++ b/drivers/mailbox/pcc.c
@@ -241,9 +241,11 @@ static irqreturn_t pcc_mbox_irq(int irq, void *p)
 	if (ret)
 		return IRQ_NONE;
 
-	val &= pchan->cmd_complete.status_mask;
-	if (!val)
-		return IRQ_NONE;
+	if (val) { /* Ensure GAS exists and value is non-zero */
+		val &= pchan->cmd_complete.status_mask;
+		if (!val)
+			return IRQ_NONE;
+	}
 
 	ret = pcc_chan_reg_read(&pchan->error, &val);
 	if (ret)



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux