Re: [PATCH v8 11/12] PCI: liveupdate: Do not disable bus mastering on preserved devices during kexec
Samiullah Khawaja <[email protected]>
| Newsgroups | org.kvack.linux-mm,org.infradead.lists.kexec,org.kernel.vger.linux-doc,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pci |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Jul 28, 2026 at 10:10:05PM +0000, David Matlack wrote: >Do not disable bus mastering on outgoing preserved devices during >pci_device_shutdown() for kexec. > >Preserved devices must be allowed to perform memory transactions during >a Live Update to ensure continuous operation. Clearing the bus >mastering bit would prevent these devices from issuing any memory >requests while the new kernel boots. > >Because bridges upstream of preserved endpoint devices are also >automatically preserved, this change also avoids clearing bus mastering >on them. This is critical because clearing bus mastering on an upstream >bridge prevents the bridge from forwarding memory requests upstream (i.e. >it would prevent the endpoint device from accessing system RAM and doing >peer-to-peer transactions with devices not downstream of the bridge). > >Reviewed-by: Pranjal Shrivastava <[email protected]> >Reviewed-by: Pasha Tatashin <[email protected]> >Signed-off-by: David Matlack <[email protected]> >--- > drivers/pci/liveupdate.c | 11 +++++++++++ > drivers/pci/liveupdate.h | 6 ++++++ > drivers/pci/pci-driver.c | 7 +++++-- > 3 files changed, 22 insertions(+), 2 deletions(-) > Reviewed-by: Samiullah Khawaja <[email protected]>