Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1831736 - Keeping the sequencer device open block going into C10 sleep state
Summary: Keeping the sequencer device open block going into C10 sleep state
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: pipewire
Version: 32
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Wim Taymans
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-05-05 14:32 UTC by Wim Taymans
Modified: 2020-05-14 02:36 UTC (History)
3 users (show)

Fixed In Version: pipewire-0.3.5-1.fc32
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-14 02:36:00 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
freedesktop.org Gitlab pipewire/pipewire - issues 225 0 None None None 2020-05-05 14:32:17 UTC

Description Wim Taymans 2020-05-05 14:32:18 UTC
PipeWire tries to transparently map all midi ports to PipeWire ports (like JACK) but for that it needs to be able to monitor the sequencer events. It does not keep the hardware devices open by subscribing to the ports unless needed.

This is the output of acconnect -l on my machine:

client 0: 'System' [type=kernel]
    0 'Timer           '
	Connecting To: 128:0[real:0]
    1 'Announce        '
	Connecting To: 128:0[real:0]
client 14: 'Midi Through' [type=kernel]
    0 'Midi Through Port-0'
client 16: 'UMC404HD 192k' [type=kernel,card=0]
    0 'UMC404HD 192k MIDI 1'
client 24: 'WORLDE easy control' [type=kernel,card=2]
    0 'WORLDE easy control MIDI 1'
client 128: 'PipeWire-System' [type=user,pid=32097]
    0 'input           '
	Connected From: 0:1[real:0], 0:0[real:0]
client 129: 'PipeWire-RT-Event' [type=user,pid=32097]
    0 'input           '

In this state, we no longer reach C-states deeper that C6 for the whole CPU package, with one of the core stalling that by never going under C8.

When closing the sequencer, all cores happily reach the C10 state again.

Is there a reason for blocking deep sleep states when the sequencer is open? is this something that can be fixed in the driver?

Comment 1 Wim Taymans 2020-05-11 13:39:24 UTC
It was the queue used for the announce messages that uses a timer. Removing the queue resolved issue.

Comment 2 Fedora Update System 2020-05-11 13:40:06 UTC
FEDORA-2020-736fbfee04 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-736fbfee04

Comment 3 Fedora Update System 2020-05-12 07:18:53 UTC
FEDORA-2020-736fbfee04 has been pushed to the Fedora 32 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-736fbfee04`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-736fbfee04

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 4 Fedora Update System 2020-05-14 02:36:00 UTC
FEDORA-2020-736fbfee04 has been pushed to the Fedora 32 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.