[KRdp] [Bug 488687] krdpserver or the portal it uses freezes after a non-H264 capable client attempts to connect

2024-07-17 Thread Nate Graham
https://bugs.kde.org/show_bug.cgi?id=488687

Nate Graham  changed:

   What|Removed |Added

   Version Fixed In||6.1.3

-- 
You are receiving this mail because:
You are watching all bug changes.

[KRdp] [Bug 488687] krdpserver or the portal it uses freezes after a non-H264 capable client attempts to connect

2024-07-15 Thread Arjen Hiemstra
https://bugs.kde.org/show_bug.cgi?id=488687

Arjen Hiemstra  changed:

   What|Removed |Added

  Latest Commit|https://invent.kde.org/plas |https://invent.kde.org/plas
   |ma/kpipewire/-/commit/2e1c3 |ma/kpipewire/-/commit/9f4c6
   |bbd6b915ac55488ed815de1e439 |1d80bd01a92ebbcc0c89d7d7d12
   |351b2488|b9d12079

--- Comment #5 from Arjen Hiemstra  ---
Git commit 9f4c61d80bd01a92ebbcc0c89d7d7d12b9d12079 by Arjen Hiemstra.
Committed on 15/07/2024 at 11:00.
Pushed by ahiemstra into branch 'Plasma/6.1'.

produce: Properly cleanup on deactivate in all cases

We may end up calling deactivate with a PipeWire stream that is not yet
streaming. In that case calling `setActive(false)` on the stream will do
nothing and not cause a state change, so our cleanup code is never ran,
which may cause hangs because an application is waiting for the encoder
to finish. So ensure we do cleanup properly when the stream is not in a
streaming state.


(cherry picked from commit 2e1c3bbd6b915ac55488ed815de1e439351b2488)

Co-authored-by: Arjen Hiemstra 

M  +16   -13   src/pipewireproduce.cpp

https://invent.kde.org/plasma/kpipewire/-/commit/9f4c61d80bd01a92ebbcc0c89d7d7d12b9d12079

-- 
You are receiving this mail because:
You are watching all bug changes.

[KRdp] [Bug 488687] krdpserver or the portal it uses freezes after a non-H264 capable client attempts to connect

2024-07-15 Thread Arjen Hiemstra
https://bugs.kde.org/show_bug.cgi?id=488687

Arjen Hiemstra  changed:

   What|Removed |Added

  Latest Commit||https://invent.kde.org/plas
   ||ma/kpipewire/-/commit/2e1c3
   ||bbd6b915ac55488ed815de1e439
   ||351b2488
 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED

--- Comment #4 from Arjen Hiemstra  ---
Git commit 2e1c3bbd6b915ac55488ed815de1e439351b2488 by Arjen Hiemstra.
Committed on 10/07/2024 at 14:49.
Pushed by ahiemstra into branch 'master'.

produce: Properly cleanup on deactivate in all cases

We may end up calling deactivate with a PipeWire stream that is not yet
streaming. In that case calling `setActive(false)` on the stream will do
nothing and not cause a state change, so our cleanup code is never ran,
which may cause hangs because an application is waiting for the encoder
to finish. So ensure we do cleanup properly when the stream is not in a
streaming state.

M  +16   -13   src/pipewireproduce.cpp

https://invent.kde.org/plasma/kpipewire/-/commit/2e1c3bbd6b915ac55488ed815de1e439351b2488

-- 
You are receiving this mail because:
You are watching all bug changes.

[KRdp] [Bug 488687] krdpserver or the portal it uses freezes after a non-H264 capable client attempts to connect

2024-07-10 Thread Bug Janitor Service
https://bugs.kde.org/show_bug.cgi?id=488687

Bug Janitor Service  changed:

   What|Removed |Added

 Status|CONFIRMED   |ASSIGNED

--- Comment #3 from Bug Janitor Service  ---
A possibly relevant merge request was started @
https://invent.kde.org/plasma/kpipewire/-/merge_requests/155

-- 
You are receiving this mail because:
You are watching all bug changes.

[KRdp] [Bug 488687] krdpserver or the portal it uses freezes after a non-H264 capable client attempts to connect

2024-07-10 Thread Akseli Lahtinen
https://bugs.kde.org/show_bug.cgi?id=488687

--- Comment #2 from Akseli Lahtinen  ---
A potential backtrace

Program terminated with signal SIGABRT, Aborted.
#0  0x7f540bca2be9 in __futex_abstimed_wait_common64 (private=0,
futex_word=0x7f53e800f820, expected=0,
op=393, abstime=0x0, cancel=true) at futex-internal.c:57
Downloading source file
/usr/src/debug/glibc-2.39-17.fc40.x86_64/nptl/futex-internal.c
57  return INTERNAL_SYSCALL_CANCEL (futex_time64, futex_word, op,
expected,
[Current thread is 1 (Thread 0x7f53fcaa33c0 (LWP 4))]
Missing separate debuginfos, use: dnf debuginfo-install
ffmpeg-libs-6.1.1-11.fc40.x86_64
x264-libs-0.164-13.20231001git31e19f92.fc40.x86_64 x265-libs-3.6-2.fc40.x86_64
(gdb) bt
#0  0x7f540bca2be9 in __futex_abstimed_wait_common64
(private=0, futex_word=0x7f53e800f820, expected=0, op=393, abstime=0x0,
cancel=true)
at futex-internal.c:57
#1  __futex_abstimed_wait_common
(futex_word=futex_word@entry=0x7f53e800f820, expected=expected@entry=0,
clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0,
cancel=cancel@entry=true) at futex-internal.c:87
#2  0x7f540bca2c6f in __GI___futex_abstimed_wait_cancelable64
(futex_word=futex_word@entry=0x7f53e800f820, expected=expected@entry=0,
clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at
futex-internal.c:139
#3  0x7f540bca5639 in __pthread_cond_wait_common
(cond=0x7f53e800f7f8, mutex=, clockid=0, abstime=0x0) at
pthread_cond_wait.c:503
#4  ___pthread_cond_wait (cond=0x7f53e800f7f8, mutex=) at
pthread_cond_wait.c:618
#5  0x7f540c560efb in QWaitConditionPrivate::wait (this=0x7f53e800f7d0,
deadline=...)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/thread/qwaitcondition_unix.cpp:102
#6  QWaitCondition::wait (this=this@entry=0x20ed12e8,
mutex=mutex@entry=0x20ed12c8, deadline=...)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/thread/qwaitcondition_unix.cpp:180
#7  0x7f540c5542c1 in QThread::wait (this=, deadline=...)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/thread/qthread_unix.cpp:775
#8  0x7f540de566e8 in PipeWireBaseEncodedStream::refresh
(this=this@entry=0x20e7b7a0)
at /usr/include/qt6/QtCore/qdeadlinetimer.h:31
#9  0x7f540de5695e in PipeWireBaseEncodedStream::setActive
(this=0x20e7b7a0, active=false)
at
/home/akseli/Repositories/kde/src/kpipewire/src/pipewirebaseencodedstream.cpp:148
#10 0x7f540c3fc872 in QtPrivate::QSlotObjectBase::call
(this=0x7f53e8010c60, r=, a=0x7ffcdaa9f8d0)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/kernel/qobjectdefs_impl.h:469
#11 doActivate (sender=0x20f27720, signal_index=0, argv=0x7ffcdaa9f8d0)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4086
#12 0x7f540c3f2b47 in QMetaObject::activate
(sender=sender@entry=0x20f27720, m=m@entry=0x7f540c884ea0,
local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffcdaa9f8d0)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:4146
#13 0x7f540c3f2c01 in QObject::destroyed (this=this@entry=0x20f27720,
_t1=,
_t1@entry=0x20f27720)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/redhat-linux-build/src/corelib/kernel/moc_qobject.cpp:229--Type
 for more, q to quit, c to continue without paging--c

\#14 0x7f540c3f948e in QObject::~QObject (this=,
__in_chrg=)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:1074
#15 0x7f540e5c1369 in KRdp::VideoStream::~VideoStream (this=0x20f27720,
__in_chrg=)
at /home/akseli/Repositories/kde/src/krdp/src/VideoStream.cpp:155
#16 0x7f540e5b23fa in std::default_delete::operator()
(this=, __ptr=) at
/usr/include/c++/14/bits/unique_ptr.h:87
#17 std::unique_ptr
>::~unique_ptr
(this=0x20bdc330, __in_chrg=) at
/usr/include/c++/14/bits/unique_ptr.h:398
#18 KRdp::RdpConnection::Private::~Private (this=0x20bdc310,
__in_chrg=)
at /home/akseli/Repositories/kde/src/krdp/src/RdpConnection.cpp:136
#19 std::default_delete::operator()
(this=, __ptr=0x20bdc310)
at /usr/include/c++/14/bits/unique_ptr.h:93
#20 std::default_delete::operator()
(this=, __ptr=0x20bdc310)
at /usr/include/c++/14/bits/unique_ptr.h:87
#21 std::unique_ptr >::~unique_ptr
(this=0x20f27790, __in_chrg=) at
/usr/include/c++/14/bits/unique_ptr.h:398
#22 KRdp::RdpConnection::~RdpConnection (this=0x20f27780, __in_chrg=)
at /home/akseli/Repositories/kde/src/krdp/src/RdpConnection.cpp:192
#23 0x7f540e5b24a9 in KRdp::RdpConnection::~RdpConnection (this=0x20f27780,
__in_chrg=)
at /home/akseli/Repositories/kde/src/krdp/src/RdpConnection.cpp:192
#24 0x7f540c3edd4b in QObject::event (this=0x7ffcdaaa0330,
e=0x7f53a801a9d0)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/corelib/kernel/qobject.cpp:1452
#25 0x7f540d58b218 in QApplicationPrivate::notify_helper
(this=, receiver=0x7ffcdaaa0330, e=0x7f53a801a9d0)
at
/usr/src/debug/qt6-qtbase-6.7.2-2.fc40.x86_64/src/widgets/kernel/qapplication.cpp:3287
#26 0x7f540c39

[KRdp] [Bug 488687] krdpserver or the portal it uses freezes after a non-H264 capable client attempts to connect

2024-06-24 Thread Akseli Lahtinen
https://bugs.kde.org/show_bug.cgi?id=488687

Akseli Lahtinen  changed:

   What|Removed |Added

Summary|Unable to shutdown  |krdpserver or the portal it
   |krdpserver after a non-H264 |uses freezes after a
   |capable client attempts to  |non-H264 capable client
   |connect |attempts to connect

-- 
You are receiving this mail because:
You are watching all bug changes.