On Thu, Oct 05, 2023 at 01:56:27PM -0500, Mario Limonciello wrote:
On 10/5/2023 13:53, Bjorn Helgaas wrote:
On Wed, Oct 04, 2023 at 09:47:31AM -0500, Mario Limonciello wrote:
Before d3cold was stable userspace was allowed to influence the kernel's
decision of whether to enable d3cold for a device by a sysfs file
`d3cold_allowed`. This potentially allows userspace to break the suspend
for the system.
Is "Before d3cold was stable" referring to a "d3cold" read-only
variable, or to Linux functionality of using D3cold, or ...?
I was referring to the previous thread's comments when I asked about the
history on it.
In what sense does the `d3cold_allowed` sysfs file break suspend?
SoCs might not be able to get into their deepest sleep state if userspace
messes with it.
For debugging purposes `pci_port_pm=` can be used to control whether
a PCI port will go into D3cold and runtime PM can be turned off by
sysfs on PCI end points.
I guess this should be "pcie_port_pm=", which affects *all* PCIe
ports?
Yes.
Which sysfs file turns off runtime PM for endpoints?
/sys/bus/pci/devices/*/power/control
To close the loop on this, I think these are questions that should be
answered in the commit log (actually, that's usually the case when I
have questions, because future readers of the git history may have the
same questions, and it's not practical to dig the answers out of the
lore archive).
Bjorn