NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.93k stars 13.95k forks source link

pipewire-pulse gets killed whenever something tries to use it #334140

Open diniamo opened 2 months ago

diniamo commented 2 months ago

Describe the bug

The title says everything, by "whenever something tries to use it", I mean when something tries to play audio, or query data (eg.: control programs like pavucontrol or pulsemixer).

Steps To Reproduce

I have no idea, I haven't opened an issue, because with my luck, this could have been one of a kind, but I found someone else who has this.

Expected behavior

Pipewire-pulse and applications that use the pulse backend work fine.

Additional context

Dmesg doesn't contain any messages about the OOM killer being the culprit.

Is there any way to figure out what's killing it?

Notify maintainers

@K900 (I know you've tried to help, but tagging nonetheless)

Metadata

[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.10.3, NixOS, 24.11 (Vicuna), 24.11.20240812.9fa5c97`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Lix, like Nix) 2.90.0-rc1`
 - nixpkgs: `/nix/store/vsrna35znxh8phnf7xywxqw3il9201kw-source`

Add a :+1: reaction to issues you find important.

K900 commented 2 months ago

Is it actually being killed, or is it crashing? Do you have a core dump?

diniamo commented 2 months ago

pipewire-pulse.service: Main process exited, code=killed, status=9/KILL

K900 commented 2 months ago

Try running it along with killsnoop from bcc, that should tell you what is killing every process.

diniamo commented 2 months ago

Doesn't give me anything for pipewire-pulse, works for other programs though.

K900 commented 2 months ago

That is very strange. Actually, are you using the hardened profile or anything like that?

diniamo commented 2 months ago

Hardened profile where?

K900 commented 2 months ago

In your NixOS config. Can you post your entire configuration, actually?

diniamo commented 2 months ago

https://github.com/diniamo/niqs - The bug happens on the thinkpad host (which I should rename because as it turns out, it's not a actually a thinkpad).

Relevant parts (?):

K900 commented 2 months ago

It's very hard to figure out what is going on there. What does echo $LD_PRELOAD output?

diniamo commented 2 months ago

It's empty.

K900 commented 2 months ago

At this point the only idea I can think of is to run it under a debugger and observe.

diniamo commented 2 months ago

I'm not sure why a debugger would give me anything when it's just killed. Either way running it under gdb does, in fact, not give me anything. Otherwise, what did you mean?