https://bugs.kde.org/show_bug.cgi?id=445561
--- Comment #12 from Dmitry Kazakov <dimul...@gmail.com> --- Hi, Ivan! More questions: 1) Did you check the patches on master or on the top of the failing commit (07a10c399b693326f5826217bb0c268aeafb7264)? The failing commit had a few other issues, which can cause invalid memory access. These issues were fixed in commits a319898a6f80a1080fc9e056d0d74c2cd4abd3e5 and cd5e1156903f54af811bb7d07141bd4dc1c48de0 2) Apply this patch, which disables buffering for the tile borders (https://invent.kde.org/-/snippets/1969). The version before the patch didn't have it, it wrote directly into the texture (which is actually a deprecated behavior). The removing this buffering works, then it might be that GPU doesn't like the fact that we use the same buffer for multiple glTexImage2D() calls (which is crazy, because the buffers are created specifically for that). 3) Revert the previous patch. Try making the number of texture buffers fixed. To achieve this, comment out the call to `m_bufferStorage.allocateMoreBuffers(nextSize)` in 'KisOpenGLImageTextures::recalculateCache()' **and** change the initial number in `KisOpenGLImageTextures::initBufferStorage()` * set numTextureBuffers to 1. It should make the code "almost" like it used to be before. * set numTextureBuffers to 512 (or some other big number). It should catch the case if the M1's driver has troubles with synchronization of the buffer flushes (which is a possible cause, looking at the screenshot). 4) Revert all the previous patches and try to enable buffer flushing by force-returning `true` from `KisOpenGL::useTextureBufferInvalidation()`. 5) If nothing above works, try to check out the last working version of the code (commit d60aa02cafcc0dd6d9a2881df097847d1a7388d8) and check if `m_useBuffer` is actually true in `KisTextureTile::update()`. Afair, we used to disable buffering on OSX before my patches, so, perhaps, the buffering was just disabled? -- You are receiving this mail because: You are watching all bug changes.