lkml.org 
[lkml]   [2022]   [May]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v4 4/4] vfio/pci: Move the unused device into low power state with runtime PM
On Tue, 17 May 2022 14:42:56 -0600
Alex Williamson <alex.williamson@redhat.com> wrote:

> On Tue, 17 May 2022 15:32:19 +0530
> Abhishek Sahu <abhsahu@nvidia.com> wrote:
> > 5. Since the runtime PM framework will provide the same functionality,
> > so directly writing into PCI PM config register can be replaced with
> > the use of runtime PM routines. Also, the use of runtime PM can help
> > us in more power saving.
> >
> > In the systems which do not support D3cold,
> >
> > With the existing implementation:
> >
> > // PCI device
> > # cat /sys/bus/pci/devices/0000\:01\:00.0/power_state
> > D3hot
> > // upstream bridge
> > # cat /sys/bus/pci/devices/0000\:00\:01.0/power_state
> > D0
> >
> > With runtime PM:
> >
> > // PCI device
> > # cat /sys/bus/pci/devices/0000\:01\:00.0/power_state
> > D3hot
> > // upstream bridge
> > # cat /sys/bus/pci/devices/0000\:00\:01.0/power_state
> > D3hot
>
> I'm not able to reproduce these results. Output below abridged:
>
> # lspci -t
> -[0000:00]-+-00.0
> +-01.0-[01]--+-00.0
> | \-00.1
>
> # grep . /sys/bus/pci/devices/*/power_state
> /sys/bus/pci/devices/0000:00:01.0/power_state:D0
> /sys/bus/pci/devices/0000:01:00.0/power_state:D3hot
> /sys/bus/pci/devices/0000:01:00.1/power_state:D3hot
>
> # lspci -ks $DEV
> 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
> Kernel driver in use: pcieport
> 01:00.0 VGA compatible controller: NVIDIA Corporation GM107 [GeForce GTX 750] (rev a2)
> Subsystem: eVga.com. Corp. Device 2753
> Kernel driver in use: vfio-pci
> 01:00.1 Audio device: NVIDIA Corporation GM107 High Definition Audio Controller [GeForce 940MX] (rev a1)
> Subsystem: eVga.com. Corp. Device 2753
> Kernel driver in use: vfio-pci
> Kernel modules: snd_hda_intel
>
> Any debugging suggestions? Thanks,

Nevermind, I see a whole bunch of reasons in pci_bridge_d3_possible()
that runtime-pm wouldn't support D3hot on this bridge/system. Thanks,

Alex

\
 
 \ /
  Last update: 2022-05-17 22:57    [W:1.314 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site