[PATCH v2 0/3] mailbox: pcc: Improve completion handling and validation

Sudeep Holla <[email protected]>
Newsgroups gmane.linux.kernel,gmane.linux.acpi.devel
Message-ID <[email protected]>
Hi Jassi,

This series addresses three issues in the PCC mailbox controller which
are on the list for a while and discussed/reviewed. Please pick them
for v7.3 or let me know if you prefer pull request.

First, notify clients through their receive callback when a command
completes through polling, matching the interrupt-driven completion
path.

Second, centralize PCC shared memory signature checking in the mailbox
controller. Invalid signatures are reported without rejecting otherwise
working firmware, while mappings too small to contain a signature remain
fatal.

Finally, fix a race where a fast platform can signal command completion
before the channel is marked in use, causing a shared interrupt to be
ignored and the command to time out. Publish the channel state before
ringing the doorbell and use READ_ONCE()/WRITE_ONCE() for the lockless
flag accesses.


Regards,
Sudeep

Changes in v2:
- Reworked to keep chan_in_use set after a successful doorbell write
  and clear it only when the write fails.
- Clarified that ordering is provided by the ordered I/O accessor,
  covering both MMIO and port I/O doorbells.
- Clarified the cross-CPU flag access and interrupt-side clearing
  before the mailbox core can submit another transfer.
- Link to v1: https://lore.kernel.org/all/[email protected]

Huisong Li (1):
  mailbox: pcc: Fix command timeout due to missed interrupt

Sudeep Holla (2):
  mailbox: pcc: Notify clients on polled completion
  mailbox: pcc: Check shared memory signature on request

 drivers/mailbox/pcc.c | 87 +++++++++++++++++++++++++++++++++----------
 1 file changed, 67 insertions(+), 20 deletions(-)

-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.