zzag / kwin-effects-yet-another-magic-lamp

Just Yet Another Magic Lamp effect
GNU General Public License v2.0
160 stars 27 forks source link

Minimizing on some aurorae themes crashes kwin #24

Closed michaldybczak closed 3 years ago

michaldybczak commented 4 years ago

I thought that it's a kwin bug so I reported it:

https://bugs.kde.org/show_bug.cgi?id=418887

but it turned out that this is due some bug between this effect and some auroae themes.

STEPS TO REPRODUCE

  1. Install additional aurorae themes like: BreezmiteForman, Auro-G
  2. Apply one of them. If that matters, move buttons to the left in order: close, minimize, maximize.
  3. Open any app, click on minimize button to trigger yet another magic lamp effect.

OBSERVED RESULT

Kwin crashes and restores, windows is not minimized. Next click on minimize button, kwin crashes again.

EXPECTED RESULT

Window should minimize without the crash.

Operating System: Manjaro Linux KDE Plasma Version: 5.18.3 KDE Frameworks Version: 5.67.0 Qt Version: 5.14.1 Kernel Version: 5.5.8-1-MANJARO OS Type: 64-bit Processors: 8 × Intel® Core™ i7-6700HQ CPU @ 2.60GHz Memory: 7,6 GiB

ADDITIONAL INFORMATION

This doesn't happen on all third party themes. When I switched to Breezmite dark, there is no issue, so it's hard to tell on which themes it happens.

Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f48901810c0 (LWP 8083))]

Thread 11 (Thread 0x7f485f9ff700 (LWP 8133)):
#0  0x00007f4897de8bb6 in ppoll () at /usr/lib/libc.so.6
#1  0x00007f489677e023 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5
#2  0x00007f489677f6ed in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#3  0x00007f489672857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f489654ce62 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5  0x00007f489654dfd6 in  () at /usr/lib/libQt5Core.so.5
#6  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#7  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 10 (Thread 0x7f485e965700 (LWP 8116)):
#0  0x00007f489571acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f489604af3c in  () at /usr/lib/libQt5Script.so.5
#2  0x00007f489604af59 in  () at /usr/lib/libQt5Script.so.5
#3  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 9 (Thread 0x7f487eb30700 (LWP 8113)):
#0  0x00007f4897de8bb6 in ppoll () at /usr/lib/libc.so.6
#1  0x00007f489677e023 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5
#2  0x00007f489677f6ed in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#3  0x00007f489672857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f489654ce62 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5  0x00007f4894e5df89 in  () at /usr/lib/libQt5Qml.so.5
#6  0x00007f489654dfd6 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 8 (Thread 0x7f487ffff700 (LWP 8112)):
#0  0x00007f4897de8bb6 in ppoll () at /usr/lib/libc.so.6
#1  0x00007f489677e023 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5
#2  0x00007f489677f6ed in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#3  0x00007f489672857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f489654ce62 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5  0x00007f4894e5df89 in  () at /usr/lib/libQt5Qml.so.5
#6  0x00007f489654dfd6 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 7 (Thread 0x7f4871876700 (LWP 8110)):
#0  0x00007f489571acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f487cc8221c in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f487cc81e18 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 6 (Thread 0x7f4872077700 (LWP 8109)):
#0  0x00007f489571acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f487cc8221c in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f487cc81e18 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7f4872878700 (LWP 8108)):
#0  0x00007f489571acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f487cc8221c in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f487cc81e18 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7f4873079700 (LWP 8107)):
#0  0x00007f489571acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f487cc8221c in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f487cc81e18 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7f488df6b700 (LWP 8088)):
#0  0x00007f4897de8bb6 in ppoll () at /usr/lib/libc.so.6
#1  0x00007f489677e023 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5
#2  0x00007f489677f6ed in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#3  0x00007f489672857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f489654ce62 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5  0x00007f4897822b28 in  () at /usr/lib/libQt5DBus.so.5
#6  0x00007f489654dfd6 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7f488f759700 (LWP 8086)):
#0  0x00007f4897de8abf in poll () at /usr/lib/libc.so.6
#1  0x00007f489646663b in  () at /usr/lib/libxcb.so.1
#2  0x00007f489646837b in xcb_wait_for_event () at /usr/lib/libxcb.so.1
#3  0x00007f488fa71ba1 in  () at /usr/lib/libQt5XcbQpa.so.5
#4  0x00007f489654dfd6 in  () at /usr/lib/libQt5Core.so.5
#5  0x00007f489571446f in start_thread () at /usr/lib/libpthread.so.0
#6  0x00007f4897df33d3 in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7f48901810c0 (LWP 8083)):
[KCrash Handler]
#6  0x00007f489551ac00 in KWin::GLTexture::matrix(KWin::TextureCoordinateType) const () at /usr/lib/libkwinglutils.so.12
#7  0x00007f485325c823 in  () at /usr/lib/qt/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so
#8  0x00007f485325d7e0 in  () at /usr/lib/qt/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so
#9  0x00007f4897ad5350 in KWin::EffectsHandlerImpl::drawWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#10 0x00007f4897ad5212 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#11 0x00007f4897ad51b4 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#12 0x00007f4897ad51b4 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#13 0x00007f4897ad51b4 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#14 0x00007f4897b5765b in KWin::Scene::paintWindow(KWin::Scene::Window*, int, QRegion, KWin::WindowQuadList) () at /usr/lib/libkwin.so.5
#15 0x00007f4897b56362 in KWin::Scene::paintGenericScreen(int, KWin::ScreenPaintData) () at /usr/lib/libkwin.so.5
#16 0x00007f487eb961f6 in  () at /usr/lib/qt/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#17 0x00007f4897b56bea in KWin::Scene::finalPaintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#18 0x00007f4897ad4fc0 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#19 0x00007f4897ad4f6b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#20 0x00007f4897ad4f6b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#21 0x00007f4897ad4f6b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#22 0x00007f4897b568d6 in KWin::Scene::paintScreen(int*, QRegion const&, QRegion const&, QRegion*, QRegion*, QMatrix4x4 const&, QRect const&) () at /usr/lib/libkwin.so.5
#23 0x00007f487eb911cf in KWin::SceneOpenGL::paint(QRegion, QList<KWin::Toplevel*>) () at /usr/lib/qt/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#24 0x00007f4897a9a695 in KWin::Compositor::performCompositing() () at /usr/lib/libkwin.so.5
#25 0x00007f4896757225 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#26 0x00007f48971c3362 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#27 0x00007f48971cc819 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#28 0x00007f4896729a12 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#29 0x00007f4896781462 in QTimerInfoList::activateTimers() () at /usr/lib/libQt5Core.so.5
#30 0x00007f489677f849 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#31 0x00007f488fa72f7f in  () at /usr/lib/libQt5XcbQpa.so.5
#32 0x00007f489672857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#33 0x00007f4896730586 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#34 0x00007f4897ec2379 in kdemain () at /usr/lib/libkdeinit5_kwin_x11.so
#35 0x00007f4897d1b023 in __libc_start_main () at /usr/lib/libc.so.6
#36 0x000055a797f8605e in _start ()
[Inferior 1 (process 8083) detached]
DanielRios549 commented 4 years ago

It is crashing with MacMojav theme with me, only when I click in the minimize button

zzag commented 4 years ago

Thank you for reporting this bug. I'll have a look at this crash this weekend.

Darklink999999 commented 4 years ago

Crashes for me too with Ghost Aurorae Theme.

michaldybczak commented 4 years ago

There was an update of this effect yesterday:

upgraded kwin-effects-yet-another-magic-lamp (4.1-2 -> 4.1.1-1)

The issue still persists and makes the effect being not usable :(.

zzag commented 4 years ago

I can't reproduce this bug. Can you please provide more information? e.g. what video card do you have? does the crash happen every time you click the minimize button or from time to time? etc

michaldybczak commented 4 years ago

From what I can see, in 99% cases kwin crashes when I click on minimize button. As you can see on the comments above, it's not just me, others have the same problem.

I'm for the most time on Intel modesetting drivers. If I find time, I'll check if the bug also happens on Nvidia (driver 440xx).

System:    Host: alienware-PC Kernel: 5.5.13-1-MANJARO x86_64 bits: 64 compiler: gcc v: 9.3.0 Desktop: KDE Plasma 5.18.3 
           tk: Qt 5.14.1 info: latte-dock wm: kwin_x11 dm: SDDM Distro: Manjaro Linux 
Machine:   Type: Laptop System: Alienware product: Alienware 17 R3 v: 1.7.0 serial: <root required> Chassis: type: 10 
           serial: <root required> 
           Mobo: Alienware model: 0GH72M v: A00 serial: <root required> UEFI: Alienware v: 1.7.0 date: 01/18/2019 
Battery:   ID-1: BAT1 charge: 92.0 Wh condition: 92.0/96.0 Wh (96%) volts: 17.2/15.0 model: COMPAL PABAS0241231 type: Li-ion 
           serial: 41167 status: Full 
           Device-1: hidpp_battery_0 model: Logitech Wireless Mouse M185 serial: 4008-03-e8-c0-b4 
           charge: 50% (should be ignored) rechargeable: yes status: N/A 
CPU:       Topology: Quad Core model: Intel Core i7-6700HQ bits: 64 type: MT MCP arch: Skylake-S rev: 3 L2 cache: 6144 KiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 41621 
           Speed: 3100 MHz min/max: 800/3500 MHz Core speeds (MHz): 1: 3100 2: 3168 3: 3178 4: 3178 5: 3100 6: 3178 7: 3183 
           8: 3188 
Graphics:  Device-1: Intel HD Graphics 530 vendor: Dell driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:191b 
           Device-2: NVIDIA GM204M [GeForce GTX 970M] vendor: Dell driver: nouveau v: kernel bus ID: 01:00.0 
           chip ID: 10de:13d8 
           Display: x11 server: X.Org 1.20.7 driver: modesetting compositor: kwin_x11 resolution: 1920x1080~60Hz 
           OpenGL: renderer: Mesa Intel HD Graphics 530 (SKL GT2) v: 4.6 Mesa 20.0.2 direct render: Yes 
Audio:     Device-1: Intel 100 Series/C230 Series Family HD Audio vendor: Dell driver: snd_hda_intel v: kernel bus ID: 00:1f.3 
           chip ID: 8086:a170 
           Sound Server: ALSA v: k5.5.13-1-MANJARO 
Network:   Device-1: Qualcomm Atheros Killer E2400 Gigabit Ethernet driver: alx v: kernel port: d000 bus ID: 3b:00.0 
           chip ID: 1969:e0a1 
           IF: eth0 state: down mac: f8:ca:b8:47:16:2c 
           Device-2: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter vendor: Bigfoot Networks driver: ath10k_pci 
           v: kernel port: d000 bus ID: 3c:00.0 chip ID: 168c:003e 
           IF: wlan0 state: up mac: 9c:b6:d0:07:03:85 
           Device-3: Qualcomm Atheros type: USB driver: btusb bus ID: 1-5:4 chip ID: 0cf3:e300 
Drives:    Local Storage: total: 1.02 TiB used: 685.91 GiB (65.7%) 
           ID-1: /dev/sda vendor: Kingston model: SM2280S3G2120G size: 111.79 GiB speed: 6.0 Gb/s serial: 50026B72640BD17D 
           rev: 01.R scheme: GPT 
           ID-2: /dev/sdb vendor: HGST (Hitachi) model: HTS721010A9E630 size: 931.51 GiB speed: 6.0 Gb/s rotation: 7200 rpm 
           serial: JR10004M0BKLPF rev: A3P0 scheme: GPT 
RAID:      Hardware-1: Intel 82801 Mobile SATA Controller [RAID mode] driver: ahci v: 3.0 port: f060 bus ID: 00:17.0 
           chip ID: 8086.282a rev: 31 
Partition: ID-1: / size: 38.32 GiB used: 33.72 GiB (88.0%) fs: ext4 dev: /dev/sda4 
           ID-2: /home size: 71.26 GiB used: 59.36 GiB (83.3%) fs: ext4 dev: /dev/sda2 
Sensors:   System Temperatures: cpu: 77.0 C mobo: N/A gpu: nouveau temp: 54 C 
           Fan Speeds (RPM): N/A 
Info:      Processes: 298 Uptime: 15h 24m Memory: 7.65 GiB used: 4.35 GiB (56.9%) Init: systemd v: 245 Compilers: gcc: 9.3.0 
           clang: 9.0.1 Shell: bash v: 5.0.16 running in: konsole inxi: 3.0.37 
zzag commented 4 years ago

From what I can see, in 99% cases kwin crashes when I click on minimize button. As you can see on the comments above, it's not just me, others have the same problem.

Yeah, but that's not the case for me. Could you please re-compile the effect with -DCMAKE_BUILD_TYPE=RelWithDebInfo or even better -DCMAKE_BUILD_TYPE=Debug and post a new backtrace?

michaldybczak commented 4 years ago

I checked Nvidia mode and kwin crashes for the first time, then the rest of the clicks on minimize button seems to be OK. Minimizing from dock isn't triggering the bug.

I installed this effect from AUR. Should I modify BUILDPKG? How? I'm not familiar at which place I should apply the given parameter.

PKGBUILD shows:

prepare() {
    mkdir -p build
    cd $srcdir/$pkgname-$pkgver
}

build() {
    cd build
    cmake ../$pkgname-$pkgver \
        -DCMAKE_INSTALL_PREFIX=/usr \
        -DCMAKE_INSTALL_LIBDIR=lib
    make
}

package() {
    cd build
    make DESTDIR="$pkgdir" install
}

I experimented and added it aside other -DCMAKE, like:


        -DCMAKE_INSTALL_PREFIX=/usr \
        -DCMAKE_INSTALL_LIBDIR=lib
        -DCMAKE_BUILD_TYPE=Debug

but it caused compilation to fail, because command was not found.

trmdi commented 4 years ago

@michaldybczak -DCMAKE_INSTALL_LIBDIR=lib \

michaldybczak commented 4 years ago

Thanks, that worked. Ironically, the crash wouldn't happen unless I changed to different aurorae theme, so with breezmite dark there is only one crash and then it works fine, with Glass-Kv it crashes constantly, with every minimize.

I'm not sure if the KDE report about the crash is giving the full info as you wanted, it looks the same for me, but here it is:

Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f3d643fe840 (LWP 23496))]

Thread 11 (Thread 0x7f3d3effd700 (LWP 23515)):
#0  0x00007f3d6996acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f3d6a29af3c in  () at /usr/lib/libQt5Script.so.5
#2  0x00007f3d6a29af59 in  () at /usr/lib/libQt5Script.so.5
#3  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 10 (Thread 0x7f3d3f7fe700 (LWP 23514)):
#0  0x00007f3d6996b01a in pthread_cond_timedwait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f3d6a7a3c48 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#2  0x00007f3d6a7a3d69 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#3  0x00007f3d6a7a13dd in  () at /usr/lib/libQt5Core.so.5
#4  0x00007f3d6a79dfd6 in  () at /usr/lib/libQt5Core.so.5
#5  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#6  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 9 (Thread 0x7f3d451ae700 (LWP 23512)):
#0  0x00007f3d6c039bb6 in ppoll () at /usr/lib/libc.so.6
#1  0x00007f3d6a9ce023 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5
#2  0x00007f3d6a9cf6ed in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#3  0x00007f3d6a97857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f3d6a79ce62 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5  0x00007f3d690adf89 in  () at /usr/lib/libQt5Qml.so.5
#6  0x00007f3d6a79dfd6 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 8 (Thread 0x7f3d459af700 (LWP 23511)):
#0  0x00007f3d6996acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f3d50d1fbfc in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f3d50d1f7f8 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 7 (Thread 0x7f3d461b0700 (LWP 23510)):
#0  0x00007f3d6996acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f3d50d1fbfc in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f3d50d1f7f8 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 6 (Thread 0x7f3d469b1700 (LWP 23509)):
#0  0x00007f3d6996acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f3d50d1fbfc in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f3d50d1f7f8 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 5 (Thread 0x7f3d471b2700 (LWP 23508)):
#0  0x00007f3d6996acf5 in pthread_cond_wait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f3d50d1fbfc in  () at /usr/lib/dri/iris_dri.so
#2  0x00007f3d50d1f7f8 in  () at /usr/lib/dri/iris_dri.so
#3  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#4  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 4 (Thread 0x7f3d53fff700 (LWP 23507)):
#0  0x00007f3d6c039bb6 in ppoll () at /usr/lib/libc.so.6
#1  0x00007f3d6a9ce023 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5
#2  0x00007f3d6a9cf6ed in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#3  0x00007f3d6a97857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f3d6a79ce62 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5  0x00007f3d690adf89 in  () at /usr/lib/libQt5Qml.so.5
#6  0x00007f3d6a79dfd6 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 3 (Thread 0x7f3d612a6700 (LWP 23505)):
#0  0x00007f3d6996b01a in pthread_cond_timedwait@@GLIBC_2.3.2 () at /usr/lib/libpthread.so.0
#1  0x00007f3d6a7a3c48 in QWaitCondition::wait(QMutex*, QDeadlineTimer) () at /usr/lib/libQt5Core.so.5
#2  0x00007f3d6a7a3d69 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib/libQt5Core.so.5
#3  0x00007f3d6a7a13dd in  () at /usr/lib/libQt5Core.so.5
#4  0x00007f3d6a79dfd6 in  () at /usr/lib/libQt5Core.so.5
#5  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#6  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 2 (Thread 0x7f3d624b7700 (LWP 23504)):
#0  0x00007f3d6c039bb6 in ppoll () at /usr/lib/libc.so.6
#1  0x00007f3d6a9ce023 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib/libQt5Core.so.5
#2  0x00007f3d6a9cf6ed in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#3  0x00007f3d6a97857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#4  0x00007f3d6a79ce62 in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5  0x00007f3d6ba72b28 in  () at /usr/lib/libQt5DBus.so.5
#6  0x00007f3d6a79dfd6 in  () at /usr/lib/libQt5Core.so.5
#7  0x00007f3d6996446f in start_thread () at /usr/lib/libpthread.so.0
#8  0x00007f3d6c0443d3 in clone () at /usr/lib/libc.so.6

Thread 1 (Thread 0x7f3d643fe840 (LWP 23496)):
[KCrash Handler]
#6  0x00007f3d6976ac00 in KWin::GLTexture::matrix(KWin::TextureCoordinateType) const () at /usr/lib/libkwinglutils.so.12
#7  0x00007f3d275bb216 in  () at /usr/lib/qt/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so
#8  0x00007f3d275bc200 in  () at /usr/lib/qt/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so
#9  0x00007f3d6bd26370 in KWin::EffectsHandlerImpl::drawWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#10 0x00007f3d6bd26232 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#11 0x00007f3d6bd261d4 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#12 0x00007f3d6bd261d4 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#13 0x00007f3d6bd261d4 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib/libkwin.so.5
#14 0x00007f3d6bda867b in KWin::Scene::paintWindow(KWin::Scene::Window*, int, QRegion, KWin::WindowQuadList) () at /usr/lib/libkwin.so.5
#15 0x00007f3d6bda7382 in KWin::Scene::paintGenericScreen(int, KWin::ScreenPaintData) () at /usr/lib/libkwin.so.5
#16 0x00007f3d5017e306 in  () at /usr/lib/qt/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#17 0x00007f3d6bda7c0a in KWin::Scene::finalPaintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#18 0x00007f3d6bd25fe0 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#19 0x00007f3d6bd25f8b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#20 0x00007f3d6bd25f8b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#21 0x00007f3d6bd25f8b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib/libkwin.so.5
#22 0x00007f3d6bda78f6 in KWin::Scene::paintScreen(int*, QRegion const&, QRegion const&, QRegion*, QRegion*, QMatrix4x4 const&, QRect const&) () at /usr/lib/libkwin.so.5
#23 0x00007f3d501792df in KWin::SceneOpenGL::paint(QRegion, QList<KWin::Toplevel*>) () at /usr/lib/qt/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#24 0x00007f3d6bceb6b5 in KWin::Compositor::performCompositing() () at /usr/lib/libkwin.so.5
#25 0x00007f3d6a9a7225 in QObject::event(QEvent*) () at /usr/lib/libQt5Core.so.5
#26 0x00007f3d6b413362 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#27 0x00007f3d6b41c819 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#28 0x00007f3d6a979a12 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#29 0x00007f3d6a9d1462 in QTimerInfoList::activateTimers() () at /usr/lib/libQt5Core.so.5
#30 0x00007f3d6a9cf849 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#31 0x00007f3d63fbef7f in  () at /usr/lib/libQt5XcbQpa.so.5
#32 0x00007f3d6a97857c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#33 0x00007f3d6a980586 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#34 0x00007f3d6c113379 in kdemain () at /usr/lib/libkdeinit5_kwin_x11.so
#35 0x00007f3d6bf6c023 in __libc_start_main () at /usr/lib/libc.so.6
#36 0x0000560085da805e in _start ()
[Inferior 1 (process 23496) detached]

If you should obtain the crash log in other ways, let me know.

leonidasroberto commented 4 years ago

Hello friends, forgive my English. I'm having the same problem, kwin crashes when I minimize it by the window button in the Mojave theme, I don't know if that helps, but I see that the problem occurs with me when I have several windows open, I use the version of KDE Plasma 5.18.4, mine video card is an Nvidia gt610, I already tested it with a stronger card, and the problem occurred less frequently. I like your work very much, I hope you can fix the bug, Thanks!

leonidasroberto commented 4 years ago

I have this error log: Application: KWin (kwin_x11), signal: Segmentation fault Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [Current thread is 1 (Thread 0x7f5b8eb3cf80 (LWP 12192))]

Thread 5 (Thread 0x7f5b4fbff700 (LWP 12218)):

0 0x00007f5b873c59f3 in futex_wait_cancelable (private=, expected=0, futex_word=0x7f5b8a7e7fb8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88

1 __pthread_cond_wait_common (abstime=0x0, mutex=0x7f5b8a7e7f68, cond=0x7f5b8a7e7f90) at pthread_cond_wait.c:502

2 __pthread_cond_wait (cond=0x7f5b8a7e7f90, mutex=0x7f5b8a7e7f68) at pthread_cond_wait.c:655

3 0x00007f5b8a4f2944 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5

4 0x00007f5b8a4f2989 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Script.so.5

5 0x00007f5b873bf6db in start_thread (arg=0x7f5b4fbff700) at pthread_create.c:463

6 0x00007f5b8e48988f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 4 (Thread 0x7f5b5512b700 (LWP 12207)):

0 0x00007f5b8e47ccf6 in __GI_ppoll (fds=0x7f5b50000cf8, nfds=1, timeout=, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39

1 0x00007f5b8b5fcdf1 in qt_safe_poll(pollfd, unsigned long, timespec const) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

2 0x00007f5b8b5fe5b2 in QEventDispatcherUNIX::processEvents(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

3 0x00007f5b8b5a063a in QEventLoop::exec(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

4 0x00007f5b8b3b1317 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

5 0x00007f5b85fae605 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5

6 0x00007f5b8b3b27ec in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

7 0x00007f5b873bf6db in start_thread (arg=0x7f5b5512b700) at pthread_create.c:463

8 0x00007f5b8e48988f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 3 (Thread 0x7f5b63fff700 (LWP 12205)):

0 0x00007f5b8e47ccf6 in __GI_ppoll (fds=0x7f5b58000cf8, nfds=1, timeout=, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39

1 0x00007f5b8b5fcdf1 in qt_safe_poll(pollfd, unsigned long, timespec const) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

2 0x00007f5b8b5fe5b2 in QEventDispatcherUNIX::processEvents(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

3 0x00007f5b8b5a063a in QEventLoop::exec(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

4 0x00007f5b8b3b1317 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

5 0x00007f5b85fae605 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5

6 0x00007f5b8b3b27ec in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

7 0x00007f5b873bf6db in start_thread (arg=0x7f5b63fff700) at pthread_create.c:463

8 0x00007f5b8e48988f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7f5b6ab2f700 (LWP 12201)):

0 0x00007f5b8e47ccf6 in __GI_ppoll (fds=0x7f5b6400f038, nfds=1, timeout=, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39

1 0x00007f5b8b5fcdf1 in qt_safe_poll(pollfd, unsigned long, timespec const) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

2 0x00007f5b8b5fe5b2 in QEventDispatcherUNIX::processEvents(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

3 0x00007f5b8b5a063a in QEventLoop::exec(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

4 0x00007f5b8b3b1317 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

5 0x00007f5b8d2be555 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5

6 0x00007f5b8b3b27ec in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

7 0x00007f5b873bf6db in start_thread (arg=0x7f5b6ab2f700) at pthread_create.c:463

8 0x00007f5b8e48988f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7f5b8eb3cf80 (LWP 12192)): [KCrash Handler]

6 0x00007f5b86d403b0 in KWin::GLTexture::matrix(KWin::TextureCoordinateType) const () from /usr/lib/x86_64-linux-gnu/libkwinglutils.so.12

7 0x00007f5b47431378 in WindowMeshRenderer::render(KWin::EffectWindow, QVector const&, KWin::GLTexture, QRegion const&) const () from /usr/lib/x86_64-linux-gnu/qt5/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so

8 0x00007f5b4743239c in YetAnotherMagicLampEffect::drawWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () from /usr/lib/x86_64-linux-gnu/qt5/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so

9 0x00007f5b8df31bbd in KWin::EffectsHandlerImpl::drawWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

10 0x00007f5b8df31a7d in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

11 0x00007f5b8df31a1e in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

12 0x00007f5b8df31a1e in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

13 0x00007f5b8dfba8e5 in KWin::Scene::paintWindow(KWin::Scene::Window*, int, QRegion, KWin::WindowQuadList) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

14 0x00007f5b8dfb8e74 in KWin::Scene::paintGenericScreen(int, KWin::ScreenPaintData) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

15 0x00007f5b540d6462 in ?? () from /usr/lib/x86_64-linux-gnu/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so

16 0x00007f5b8dfb9e40 in KWin::Scene::finalPaintScreen(int, QRegion, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

17 0x00007f5b8df31826 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

18 0x00007f5b8df317d7 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

19 0x00007f5b8df317d7 in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

20 0x00007f5b8dfb9af4 in KWin::Scene::paintScreen(int, QRegion const&, QRegion const&, QRegion, QRegion*, QMatrix4x4 const&, QRect const&) () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

21 0x00007f5b540d132d in KWin::SceneOpenGL::paint(QRegion, QList<KWin::Toplevel*>) () from /usr/lib/x86_64-linux-gnu/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so

22 0x00007f5b8defd436 in KWin::Compositor::performCompositing() () from /usr/lib/x86_64-linux-gnu/libkwin.so.5

23 0x00007f5b8b5d4df3 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

24 0x00007f5b8c48e8bc in QApplicationPrivate::notify_helper(QObject, QEvent) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5

25 0x00007f5b8c495ac0 in QApplication::notify(QObject, QEvent) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5

26 0x00007f5b8b5a1db8 in QCoreApplication::notifyInternal2(QObject, QEvent) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

27 0x00007f5b8b600549 in QTimerInfoList::activateTimers() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

28 0x00007f5b8b5fe88a in QEventDispatcherUNIX::processEvents(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

29 0x00007f5b7711d00e in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5

30 0x00007f5b8b5a063a in QEventLoop::exec(QFlags) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

31 0x00007f5b8b5a9db0 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5

32 0x00007f5b8e76830d in kdemain () from /usr/lib/x86_64-linux-gnu/libkdeinit5_kwin_x11.so

33 0x00007f5b8e389b97 in __libc_start_main (main=0x55d9c6dd8720, argc=3, argv=0x7fff02587be8, init=, fini=, rtld_fini=, stack_end=0x7fff02587bd8) at ../csu/libc-start.c:310

34 0x000055d9c6dd875a in _start ()

trmdi commented 4 years ago

I use SierraBreezeEnhanced (Breeze forked) and sometimes it crashes too.

Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f5532f67800 (LWP 2506))]

Thread 9 (Thread 0x7f549973d700 (LWP 3694)):
#0  0x00007f5535f64795 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f549ae0b30b in  () at /usr/lib64/dri/i965_dri.so
#2  0x00007f549ae0b187 in  () at /usr/lib64/dri/i965_dri.so
#3  0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#4  0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7f5499f3e700 (LWP 3693)):
#0  0x00007f5535f64795 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f549ae0b30b in  () at /usr/lib64/dri/i965_dri.so
#2  0x00007f549ae0b187 in  () at /usr/lib64/dri/i965_dri.so
#3  0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#4  0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f549a73f700 (LWP 3692)):
#0  0x00007f5535f64795 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f549ae0b30b in  () at /usr/lib64/dri/i965_dri.so
#2  0x00007f549ae0b187 in  () at /usr/lib64/dri/i965_dri.so
#3  0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#4  0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f549bfbf700 (LWP 3691)):
#0  0x00007f5535f64795 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f549ae0b30b in  () at /usr/lib64/dri/i965_dri.so
#2  0x00007f549ae0b187 in  () at /usr/lib64/dri/i965_dri.so
#3  0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#4  0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f5529205700 (LWP 2581)):
#0  0x00007f5535f64795 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f55364371ea in  () at /usr/lib64/libQt5Script.so.5
#2  0x00007f553643720b in  () at /usr/lib64/libQt5Script.so.5
#3  0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#4  0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f552a44e700 (LWP 2580)):
#0  0x00007ffdf7fcaae6 in clock_gettime ()
#1  0x00007f5538152cf1 in clock_gettime@GLIBC_2.2.5 () at /lib64/libc.so.6
#2  0x00007f5536b4b4f1 in  () at /usr/lib64/libQt5Core.so.5
#3  0x00007f5536b49e09 in QTimerInfoList::updateCurrentTime() () at /usr/lib64/libQt5Core.so.5
#4  0x00007f5536b4a3d5 in QTimerInfoList::timerWait(timespec&) () at /usr/lib64/libQt5Core.so.5
#5  0x00007f5536b49474 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#6  0x00007f5536af3b7b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007f553691e5ce in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#8  0x00007f55356976e5 in  () at /usr/lib64/libQt5Qml.so.5
#9  0x00007f553691f698 in  () at /usr/lib64/libQt5Core.so.5
#10 0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#11 0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f552bfff700 (LWP 2578)):
#0  0x00007ffdf7fcaae6 in clock_gettime ()
#1  0x00007f5538152cf1 in clock_gettime@GLIBC_2.2.5 () at /lib64/libc.so.6
#2  0x00007f5536b4b4f1 in  () at /usr/lib64/libQt5Core.so.5
#3  0x00007f5536b49e09 in QTimerInfoList::updateCurrentTime() () at /usr/lib64/libQt5Core.so.5
#4  0x00007f5536b4a3d5 in QTimerInfoList::timerWait(timespec&) () at /usr/lib64/libQt5Core.so.5
#5  0x00007f5536b49474 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#6  0x00007f5536af3b7b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#7  0x00007f553691e5ce in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#8  0x00007f5537c2c507 in  () at /usr/lib64/libQt5DBus.so.5
#9  0x00007f553691f698 in  () at /usr/lib64/libQt5Core.so.5
#10 0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#11 0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f5530f4d700 (LWP 2577)):
#0  0x00007f5538180acf in poll () at /lib64/libc.so.6
#1  0x00007f553683c772 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f553683d43a in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f55310b1ab0 in  () at /usr/lib64/libQt5XcbQpa.so.5
#4  0x00007f553691f698 in  () at /usr/lib64/libQt5Core.so.5
#5  0x00007f5535f5defa in start_thread () at /lib64/libpthread.so.0
#6  0x00007f553818b3bf in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f5532f67800 (LWP 2506)):
[KCrash Handler]
#6  0x00007f5535d5b020 in KWin::GLTexture::matrix(KWin::TextureCoordinateType) const () at /usr/lib64/libkwinglutils.so.12
#7  0x00007f5498276e89 in  () at /usr/lib64/qt5/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so
#8  0x00007f5498281180 in  () at /usr/lib64/qt5/plugins/kwin/effects/plugins/libkwin4_effect_yetanothermagiclamp.so
#9  0x00007f5537f5f8c0 in KWin::EffectsHandlerImpl::drawWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib64/libkwin.so.5
#10 0x00007f5537f5f8c0 in KWin::EffectsHandlerImpl::drawWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib64/libkwin.so.5
#11 0x00007f5537f643f8 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib64/libkwin.so.5
#12 0x00007f5537f643a3 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib64/libkwin.so.5
#13 0x00007f5537f643a3 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib64/libkwin.so.5
#14 0x00007f5535d93c02 in KWin::AnimationEffect::paintWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) () at /usr/lib64/libkwineffects.so.12
#15 0x00007f5537f643a3 in KWin::EffectsHandlerImpl::paintWindow(KWin::EffectWindow*, int, QRegion const&, KWin::WindowPaintData&) () at /usr/lib64/libkwin.so.5
#16 0x00007f5537f0325d in KWin::Scene::paintWindow(KWin::Scene::Window*, int, QRegion, KWin::WindowQuadList) () at /usr/lib64/libkwin.so.5
#17 0x00007f5537f04201 in KWin::Scene::paintGenericScreen(int, KWin::ScreenPaintData) () at /usr/lib64/libkwin.so.5
#18 0x00007f549b771ae3 in  () at /usr/lib64/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#19 0x00007f5537f02c09 in KWin::Scene::finalPaintScreen(int, QRegion, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#20 0x00007f5537f644ae in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#21 0x00007f5537f6445b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#22 0x00007f5537f6445b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#23 0x00007f5537f6445b in KWin::EffectsHandlerImpl::paintScreen(int, QRegion const&, KWin::ScreenPaintData&) () at /usr/lib64/libkwin.so.5
#24 0x00007f5537f04500 in KWin::Scene::paintScreen(int*, QRegion const&, QRegion const&, QRegion*, QRegion*, QMatrix4x4 const&, QRect const&) () at /usr/lib64/libkwin.so.5
#25 0x00007f549b772a22 in KWin::SceneOpenGL::paint(QRegion, QList<KWin::Toplevel*>) () at /usr/lib64/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#26 0x00007f5537f98495 in KWin::Compositor::performCompositing() () at /usr/lib64/libkwin.so.5
#27 0x00007f5536b21915 in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
#28 0x00007f5537600caf in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#29 0x00007f5537609df0 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#30 0x00007f5536af4fe2 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#31 0x00007f5536b4afa0 in QTimerInfoList::activateTimers() () at /usr/lib64/libQt5Core.so.5
#32 0x00007f5536b493b7 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#33 0x00007f55310b2dee in  () at /usr/lib64/libQt5XcbQpa.so.5
#34 0x00007f5536af3b7b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#35 0x00007f5536afb952 in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#36 0x00007f553825b479 in kdemain () at /usr/lib64/libkdeinit5_kwin_x11.so
#37 0x00007f55380b2ceb in __libc_start_main () at /lib64/libc.so.6
#38 0x000055887da5108a in _start ()
[Inferior 1 (process 2506) detached]
zzag commented 4 years ago

I'm not sure if the KDE report about the crash is giving the full info as you wanted, it looks the same for me, but here it is:

No, the provided backtrace still lacks debug symbols. It seems like you either forgot to restart kwin or install the package you built.

michaldybczak commented 4 years ago

You still didn't explain how do we get the backtrace with debug symbols. Should they just be on the debug log from Plasma crash handler? Or maybe we should do something specific to obtain them?

I compiled the plugin as you showed, rebooted and still have the same debug log without symbols, so we are missing something. Please, we are not IT users, and we need step-by-step instructions. This is too often the case that devs need some debug logs but don't make a word how we can get the useful logs, and we must pull out this knowledge piece by piece. This is frustrating. We want to help but nobody is giving any clear instructions on how.

trmdi commented 4 years ago

You still didn't explain how do we get the backtrace with debug symbols. Should they just be on the debug log from Plasma crash handler? Or maybe we should do something specific to obtain them?

I compiled the plugin as you showed, rebooted and still have the same debug log without symbols, so we are missing something. Please, we are not IT users, and we need step-by-step instructions. This is too often the case that devs need some debug logs but don't make a word how we can get the useful logs, and we must pull out this knowledge piece by piece. This is frustrating. We want to help but nobody is giving any clear instructions on how.

IIRC Arch/Manjaro do not provide debug symbol packages. You have to compile lots of package e.g. kwin to get the debug symbol. If you don't want to compile, use other distros like openSUSE, KDE Neon...

trmdi commented 4 years ago

Btw, I just tried the Sweet aurorae theme, and it doesn't crash on my system. Maybe this is a driver bug?

michaldybczak commented 4 years ago

IIRC Arch/Manjaro do not provide debug symbol packages. You have to compile lots of package e.g. kwin to get the debug symbol.

Ah, I thought that it's enough to compile this plugin. If we really need also kwin to have compiled then we won't get the needed debug info after all. Or maybe kwin data is not needed here?

Btw, I just tried the Sweet aurorae theme, and it doesn't crash on my system. Maybe this is a driver bug?

I don't think so. My experience is, that the behavior of this bug varies from theme to them. On some, it rarely happens, on others it's super frequent, almost 90% of time.

Lately, I switched to standard breeze decorations, just to have some change and have observation that may give some hint about the nature of this bug.

With breeze, when minimize button is clicked, the minimizing animation starts RIGHT AWAY. With any other theme, there is some subtle delay and with a longer delay, crash happens.

My guess is, there is always some error in the background happening that delays the execution of the animation and some race conditions cause it to fail completely.

Because this delay is always there, it means, the bug happens on every third party aurorae theme but maybe with different strength? Is that even possible?

Anyway, since we are not changing systems on a whim (I use Manjaro for over 5 years), it's unlikely to get kwin with debug symbols - if that is needed. We need to find some Ubuntu or Suse users to test out this plugin. However, this is not ideal, because the packages are compiled differently and the issue may not be happening there. So far, all users are from the Arch side and that suggests that the problem is with Arch packaging. Usually what Arch does is getting rid of all unneeded dependencies. However, what they perceive as something unneeded is questionable. They often get rid of MAIN FUNCTIONALITIES because the package can still function in its skeleton form, but won't have FULL FUNCTIONALITY. Lately Arch removed basic functionality of Plasma to have custom shortcuts, just because they decided this is "not needed" part. Really? Also, configs are in vanilla state which often is not a good match, because some vanilla configs may not be well optimized with other components. So all those small changes could cause some malfunctions in certain circumstances.

@zzag, what distro do you use?

zzag commented 4 years ago

@michaldybczak Yeah, sorry for not providing enough information. You need to re-compile both kwin and kwin-effects-yet-another-magic-lamp.

kwin:

asp export kwin # Does ABS work for Manjaro?
cd kwin
vim PKGBUILD # add -DCMAKE_BUILD_TYPE=RelWithDebInfo to the cmake command
makepkg -i # if you don't want to deal with PGP and so on add --skippgpcheck

kwin-effects-yet-another-magic-lamp:

# Download PKGBUILD for kwin-effects-yet-another-magic-lamp from the Internet.
vim PKGBUILD  # add -DCMAKE_BUILD_TYPE=RelWithDebInfo to the cmake command
makepkg -i # if you don't use an AUR helper that allows to edit the PKGBUILD file

Open KRunner and run the following command

kwin_x11 --replace

what distro do you use?

Glorious Arch.

ybgirgin3 commented 4 years ago

This crashes on intel gpu. works like charm in nvidia

Kodehawa commented 4 years ago

This is still an issue on Plasma 5.20 beta. It doesn't happen 99% of the times for me but more like 1% of the times, but can chime in on this actually happening.

Stacktrace I'm getting using KWinFT: https://hasteb.in/bipiseka.shell

Built the effect with debug information now. I'll give a stacktrace with debug info once I get it.

Kodehawa commented 4 years ago

@michaldybczak Yeah, sorry for not providing enough information. You need to re-compile both kwin and kwin-effects-yet-another-magic-lamp.

kwin:

asp export kwin # Does ABS work for Manjaro?
cd kwin
vim PKGBUILD # add -DCMAKE_BUILD_TYPE=RelWithDebInfo to the cmake command
makepkg -i # if you don't want to deal with PGP and so on add --skippgpcheck

kwin-effects-yet-another-magic-lamp:

# Download PKGBUILD for kwin-effects-yet-another-magic-lamp from the Internet.
vim PKGBUILD  # add -DCMAKE_BUILD_TYPE=RelWithDebInfo to the cmake command
makepkg -i # if you don't use an AUR helper that allows to edit the PKGBUILD file

Open KRunner and run the following command

kwin_x11 --replace

what distro do you use?

Glorious Arch.

I compiled it exactly like that (and made sure I installed it with debug symbols) and somehow the crash generated doesn't have debug symbols for your package. Same goes for KWin, seemingly (KWinFT with a few patches, in this case) image

I tried changing the package name and installing it again to make sure it was overriding the old stuff, and it still doesn't have debug symbols. Missing something?

Crash I got, again: https://hasteb.in/orodivon.shell

magiblot commented 4 years ago

makepkg strips debug symbols by default. Try adding options+=(debug) to your PKGBUILD.

See https://wiki.archlinux.org/index.php/Debug_-_Getting_Traces for more information.

Kodehawa commented 4 years ago

makepkg strips debug symbols by default. Try adding options+=(debug) to your PKGBUILD.

See https://wiki.archlinux.org/index.php/Debug_-_Getting_Traces for more information.

Thanks!

magiblot commented 4 years ago

You are welcome! Actually, let me explain that better:

Kodehawa commented 4 years ago

Just built it with all of that set and checked if debug symbols were there: yep

I'll report with a proper backtrace once I get it to crash again, thanks you :heart:

Kodehawa commented 4 years ago

Please check the following crash report with full debug symbols (for KWinFT and the effect):

https://pastebin.com/raw/QzZqVcYa

magiblot commented 4 years ago
#4  0x00007fdabe6f8e37 in KWin::GLTexture::matrix(KWin::TextureCoordinateType) const (this=this@entry=0x0, type=type@entry=KWin::NormalizedCoordinates) at /usr/src/debug/kwinft-kwinft@5.20.0-beta.0/libkwineffects/kwingltexture.cpp:668

this is nullptr. This comes from the texture parameter in WindowMeshRenderer::render (https://github.com/zzag/kwin-effects-yet-another-magic-lamp/blob/4.1.1/src/WindowMeshRenderer.cc#L240), which as the trace shows, is also nullptr:

#5  0x00007fda10183b6d in WindowMeshRenderer::render(KWin::EffectWindow*, QVector<WindowQuad> const&, KWin::GLTexture*, QRegion const&) const (this=<optimized out>, w=<optimized out>, quads=..., texture=0x0, clipRegion=...) at /usr/src/debug/kwin-effects-yet-another-magic-lamp-4.1.1/src/WindowMeshRenderer.cc:240

It comes from YetAnotherMagicLampEffect::drawWindow, which gets it from OffscreenRenderer::render (https://github.com/zzag/kwin-effects-yet-another-magic-lamp/blob/4.1.1/src/YetAnotherMagicLampEffect.cc#L183).

OffscreenRenderer::render returns nullptrunder certain conditions (https://github.com/zzag/kwin-effects-yet-another-magic-lamp/blob/4.1.1/src/OffscreenRenderer.cc#L73).

A tentative workaround is to handle this case in YetAnotherMagicLampEffect::drawWindow, but this is not necessarily valid. Probably only Vlad can tell.

    KWin::GLTexture* texture = m_offscreenRenderer->render(w);
+   if (!texture) { // I don't like returning in the middle of a function,
+       return;     // but this is consistent with the rest of the code.
+   }
    QVector<WindowQuad> quads = m_meshRenderer->makeGrid(w, m_gridResolution);
    (*modelIt).apply(quads);
michaldybczak commented 4 years ago

Thanks @Kodehawa and @magiblot for handling this. I just don't have time for it (hence lack of response for a long time), nor skills. However, I'm still watching and hoping for the solution.

Remik1r3n commented 3 years ago

I guess I have same problem..? forgive my English. I'm using Arch Linux and McMojave Theme. When I tried to minimizing window, sometimes kwin crashes(10%, I guess?). I'm a really fan of minimize, so this is really annoying. It seems not happening in default magic lamp effect.

Kodehawa commented 3 years ago
#4  0x00007fdabe6f8e37 in KWin::GLTexture::matrix(KWin::TextureCoordinateType) const (this=this@entry=0x0, type=type@entry=KWin::NormalizedCoordinates) at /usr/src/debug/kwinft-kwinft@5.20.0-beta.0/libkwineffects/kwingltexture.cpp:668

this is nullptr. This comes from the texture parameter in WindowMeshRenderer::render (https://github.com/zzag/kwin-effects-yet-another-magic-lamp/blob/4.1.1/src/WindowMeshRenderer.cc#L240), which as the trace shows, is also nullptr:

#5  0x00007fda10183b6d in WindowMeshRenderer::render(KWin::EffectWindow*, QVector<WindowQuad> const&, KWin::GLTexture*, QRegion const&) const (this=<optimized out>, w=<optimized out>, quads=..., texture=0x0, clipRegion=...) at /usr/src/debug/kwin-effects-yet-another-magic-lamp-4.1.1/src/WindowMeshRenderer.cc:240

It comes from YetAnotherMagicLampEffect::drawWindow, which gets it from OffscreenRenderer::render (https://github.com/zzag/kwin-effects-yet-another-magic-lamp/blob/4.1.1/src/YetAnotherMagicLampEffect.cc#L183).

OffscreenRenderer::render returns nullptrunder certain conditions (https://github.com/zzag/kwin-effects-yet-another-magic-lamp/blob/4.1.1/src/OffscreenRenderer.cc#L73).

A tentative workaround is to handle this case in YetAnotherMagicLampEffect::drawWindow, but this is not necessarily valid. Probably only Vlad can tell.

    KWin::GLTexture* texture = m_offscreenRenderer->render(w);
+   if (!texture) { // I don't like returning in the middle of a function,
+       return;     // but this is consistent with the rest of the code.
+   }
    QVector<WindowQuad> quads = m_meshRenderer->makeGrid(w, m_gridResolution);
    (*modelIt).apply(quads);

I tried this. It works*, sorta. As a workaround for everyone here, just apply this patch: 0001-Fix-segfault.tar.gz

Here's a PKGBUILD with it

* It stutters heavily instead of crashing when it does it. It's really infrequent, and it's probably better than just crashing the entire KWin session. Due to this this is probably not the final solution, but it will do since KWin segfaulting away is quite annoying :P

zzag commented 3 years ago

A tentative workaround is to handle this case in YetAnotherMagicLampEffect::drawWindow, but this is not necessarily valid.

YetAnotherMagicLampEffect::drawWindow() assumes that OffscreenRenderer::render() always returns a valid texture if m_models contains the corresponding window.

zzag commented 3 years ago

It stutters heavily instead of crashing when it does it.

if (!texture) {
    KWin::effects->drawWindow(w, mask, region, data);
    return;
}

does ^^^ help?

edit: If it does, can you please create a MR? :-)

Kodehawa commented 3 years ago

It stutters heavily instead of crashing when it does it.

if (!texture) {
    KWin::effects->drawWindow(w, mask, region, data);
    return;
}

does ^^^ help?

edit: If it does, can you please create a MR? :-)

Tried with that, the stutter now looks like the animation pauses for a split second. Definitely less annoying that before, and doesn't look that out of place. Dunno if that's the solution you want, though?

michaldybczak commented 3 years ago

I don't know what MR is, but is it implemented in the patch above?

magiblot commented 3 years ago

I don't know what MR is, but is it implemented in the patch above?

MR means Merge Request, which is also the same as Pull Request.

michaldybczak commented 3 years ago

Ah, ok. I just installed the version with the patch, applied Breezmite buttons and will see how it works. In the past, I noticed a little pause or stuttering just before the crash, so I guess this will be the same minus the crash.

The crashes were so annoying and the better magic lamp so good, that I had to use default Breeze buttons, which are fine, but not ideal. With the crash fixed I will be able to use my favorite aurorae themes again :).

zzag commented 3 years ago

@Kodehawa @michaldybczak is there any chance that you could test #28?

Kodehawa commented 3 years ago

As soon as I get home I'll test it immediately. Any change I could get a .patch for it?

I can make it myself once I get home aswell, but I'll be a lil busy until night.

Thanks!

El mié., 7 de octubre de 2020 13:30, Vlad Zahorodnii < notifications@github.com> escribió:

@Kodehawa https://github.com/Kodehawa @michaldybczak https://github.com/michaldybczak is there any chance that you could test #28 https://github.com/zzag/kwin-effects-yet-another-magic-lamp/pull/28?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/zzag/kwin-effects-yet-another-magic-lamp/issues/24#issuecomment-705052322, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE5G7457HIHYSUUEHWWHE7TSJSJTTANCNFSM4LLMSTCA .

zzag commented 3 years ago

@Kodehawa You could just clone this repo and check out opengl-texture branch. It's much easier than applying the patch manually. But if you want, I can format a patch. :-)

Kodehawa commented 3 years ago

Haha. I meant to apply it to my current PKGBUILD as soon as I get home, so I get the chance to test it while am in class.

I could format the patch myself aswell, but I'll be a little busy until around 8PM so that'd be a little quicker. I wouldn't mind either though.

El mié., 7 de octubre de 2020 13:42, Vlad Zahorodnii < notifications@github.com> escribió:

@Kodehawa https://github.com/Kodehawa You could just clone this repo and check out opengl-texture branch. It's much easier than applying the patch manually. But if you want, I can format a patch. :-)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/zzag/kwin-effects-yet-another-magic-lamp/issues/24#issuecomment-705058901, or unsubscribe https://github.com/notifications/unsubscribe-auth/AE5G746B4RTJHOZEXACG5QLSJSLANANCNFSM4LLMSTCA .

zzag commented 3 years ago

but I'll be a little busy until around 8PM

Funny you should say that. It's almost 8:00PM where I live. :D

Kodehawa commented 3 years ago

Seems like it worked!

I'll let you know tomorrow if it works fully (aka if I haven't crashed) but I can't reproduce it anymore.

It's not stuttering either :D

Kodehawa commented 3 years ago

@Kodehawa @michaldybczak is there any chance that you could test #28?

Can't repro the issue anymore with #28 (before I could reproduce it all the time by doing kwin_x11 --replace and minimizing a window). I'd say works?

zzag commented 3 years ago

Okay, thanks for the information.

Kodehawa commented 3 years ago

No issue. Might be worth making a new version? :P

Thanks you!

michaldybczak commented 3 years ago

I have the patched version and everything works! No crashes. I can't even see this lag, so if it exists, it's negligible on my laptop. I assume, that the updated version is actually the same as the patched one, so I stay on it as it is till some future update :).

Kodehawa commented 3 years ago

I have the patched version and everything works! No crashes. I can't even see this lag, so if it exists, it's negligible on my laptop. I assume, that the updated version is actually the same as the patched one, so I stay on it as it is till some future update :).

The fix is different, but in the end they both avoid the crash.

I probably noticed the stuttering because I have a 144hz monitor, so any small stutter in animations it's annoyingly noticeable.

EDIT: Here's a PKGBUILD for the -git version: PKGBUILD.txt Rename it to just PKGBUILD. GitHub didn't let me upload it without the extension, geez.

michaldybczak commented 3 years ago

@Kodehawa , I installed the git version from the PKGBUILD you gave here but the animation seems to be slowed and not fluent, as if kwin was struggling with it. With the patched version it looks more fluent, so at the moment I'll stick with it. Can you check the differences? Maybe you will notice something. I'm left with the subjective, visual evaluation and I can only say that what I saw on git version, wasn't satisfactory.

Now when I observe the patched version longer, I also have a feeling that animation is slightly off, uneven, but it's acceptable, whereas from the git version is not. On the other hand, the differences are not big, but big enough to change the evaluation. Sadly, I can't quantify it. Hopefully, you will discover it, but luckily, there is no rush.

Kodehawa commented 3 years ago

It's fine for me, odd.