https://bugs.kde.org/show_bug.cgi?id=446061
Bug ID: 446061 Summary: Buffer for spa_pod_builder can be too small for some setup Product: plasmashell Version: 5.23.3 Platform: Debian testing OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: Task Manager and Icons-Only Task Manager Assignee: h...@kde.org Reporter: oii...@yahoo.com CC: plasma-b...@kde.org Target Milestone: 1.0 SUMMARY Libtaskmanager's buffer for spa_builder (see https://invent.kde.org/plasma/plasma-workspace/-/blob/master/libtaskmanager/declarative/pipewiresourcestream.cpp#L187) is too small on certain configurations. Because podBuilder->state.offset is never reset (https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/master/spa/include/spa/pod/builder.h), the buffer space can run out when EGL returns a long list of dma_buf modifiers, causing PipeWire negotiation to fail. An example is when EGL returns 20 modifiers. There are 6 formats defined in pipewiresourcestream.cpp, for each format it will construct 2 frames, one with 21*8=168 bytes long of modifiers. The modifier lists for all frames will be 6*168=1008 bytes (only 16 bytes left of 1024 bytes), let alone other frames. This seems to be the root cause for Bug 445461, but does not resolve Bug 444107 completely. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Debian testing KDE Plasma Version: 5.23.3 KDE Frameworks Version: 5.86.0 Qt Version: 5.15.2 -- You are receiving this mail because: You are watching all bug changes.