On Tue, Oct 13, 2026 at 02:44:37PM +0000, [email protected] wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) 
> to consider:
> - [High] pci/p2pdma: deadlock in calc_map_type_and_dist() calling xa_store() 
> from softirq
> --
> 
> commit 6120f97b22446453f3e4fa09135e1a44135ecfe8
> Author: Leon Romanovsky <[email protected]>
> 
> PCI/P2PDMA: Honor device-specific ACS redirection
> 
> This commit updates PCI P2PDMA to respect device-specific ACS redirection
> quirks for switches and ports that redirect peer-to-peer traffic without a
> standard ACS capability. It queries quirks to set Request and Completion
> Redirect flags and modifies how affected ports are warned about.
> 
> > diff --git a/drivers/pci/p2pdma.c b/drivers/pci/p2pdma.c
> > index 45260423dfb09..ba94b0f339285 100644
> > --- a/drivers/pci/p2pdma.c
> > +++ b/drivers/pci/p2pdma.c
> [ ... ]
> > @@ -782,15 +867,8 @@ calc_map_type_and_dist(struct pci_dev *provider, 
> > struct pci_dev *client,
> >             goto done;
> >     }
> >  
> > -   if (verbose) {
> > -           /* Drop the final semicolon; the list is not empty here */
> > -           if (!seq_buf_has_overflowed(&acs_list))
> > -                   acs_list.buffer[acs_list.len - 1] = '\0';
> > -           pci_warn(client, "ACS redirect is set between the client and 
> > provider (%s)\n",
> > -                    pci_name(provider));
> > -           pci_warn(client, "to disable ACS redirect for this path, add 
> > the kernel parameter: pci=disable_acs_redir=%s\n",
> > -                    seq_buf_str(&acs_list));
> > -   }
> > +   if (verbose)
> > +           pci_p2pdma_warn_redir(client, provider, &acs_list, &quirk_list);
> >  
> >  map_through_host_bridge:
> >     if (!cpu_supports_p2pdma() &&
> 
> [Severity: High]
> Does calling xa_store() further down in this function risk a deadlock?

Not in the current code base, I failed to find any reliable path for it.

Thanks

Reply via email to