Application: krita (5.1.4) Qt Version: 5.15.7 Frameworks Version: 5.101.0 Operating System: Linux 6.0.12-arch1-1 x86_64 Windowing System: X11 Distribution: "Arch Linux" DrKonqi: 5.26.4 [KCrashBackend] -- Information about the crash: I was trying to save some text I wrote when Krita crashed. Another unusual thing was that when I was typing, there was a lot of lag (it took a few seconds for the result to show up on the editor), and whenever I typed it would result in 100% of a core of my CPU being used until it was done updating the text in the text editor. The reporter is unsure if this crash is reproducible. -- Backtrace: Application: Krita (krita), signal: Segmentation fault [KCrash Handler] #4 0x00007facd93a96b5 in QWidget::setFocus(Qt::FocusReason) () from /usr/lib/libQt5Widgets.so.5 #5 0x00007facd9378ebb in QApplicationPrivate::giveFocusAccordingToFocusPolicy(QWidget*, QEvent*, QPoint) () from /usr/lib/libQt5Widgets.so.5 #6 0x00007facd937efd6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5 #7 0x00007facda61beaf in KisApplication::notify(QObject*, QEvent*) () from /usr/lib/libkritaui.so.18 #8 0x00007facd868cf98 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5 #9 0x00007facd937c337 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () from /usr/lib/libQt5Widgets.so.5 #10 0x00007facd93cd3b5 in ?? () from /usr/lib/libQt5Widgets.so.5 #11 0x00007facd93cf15e in ?? () from /usr/lib/libQt5Widgets.so.5 #12 0x00007facd9378b1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5 #13 0x00007facda61beaf in KisApplication::notify(QObject*, QEvent*) () from /usr/lib/libkritaui.so.18 #14 0x00007facd868cf98 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5 #15 0x00007facd8b3f15c in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib/libQt5Gui.so.5 #16 0x00007facd8b289a5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5 #17 0x00007facd2b2f710 in ?? () from /usr/lib/libQt5XcbQpa.so.5 #18 0x00007facd611687b in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #19 0x00007facd616d299 in ?? () from /usr/lib/libglib-2.0.so.0 #20 0x00007facd6115132 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #21 0x00007facd86d7c4c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5 #22 0x00007facd868573c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5 #23 0x00007facd8690269 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5 #24 0x000055ec03bb289f in ?? () #25 0x00007facd7e3c290 in ?? () from /usr/lib/libc.so.6 #26 0x00007facd7e3c34a in __libc_start_main () from /usr/lib/libc.so.6 #27 0x000055ec03bb4a55 in ?? () [Inferior 1 (process 908895) detached] Reported using DrKonqi
I cannot reproduce this crash, and the backtrace is entirely inside Qt * Could you also attach the output of help->system information for bug reports? * Which widget style are you using * Can you reproduce the issue with the appimage?
Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone!
(In reply to Halla Rempt from comment #1) Sorry for the late reply! I tried to replicate the bug once again and while it didn't crash the lag was still there. As with last time, when it lagged, it used up a full CPU core as well. > * Could you also attach the output of help->system information for bug > reports? Krita Version: 5.1.5 Hidpi: true Qt Version (compiled): 5.15.7 Version (loaded): 5.15.8 OS Information Build ABI: x86_64-little_endian-lp64 Build CPU: x86_64 CPU: x86_64 Kernel Type: linux Kernel Version: 6.1.5-arch2-1 Pretty Productname: Arch Linux Product Type: arch Product Version: unknown Desktop: KDE Locale Languages: en_US, en, en_Latn_US C locale: en_US.UTF-8 QLocale current: en QLocale system: en QTextCodec for locale: UTF-8 OpenGL Info Vendor: "AMD" Renderer: "AMD Radeon Graphics (renoir, LLVM 14.0.6, DRM 3.49, 6.1.5-arch2-1)" Version: "4.6 (Compatibility Profile) Mesa 22.3.3" Shading language: "4.60" Requested format: QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CompatibilityProfile) Current format: QSurfaceFormat(version 4.6, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfaceFormat::CompatibilityProfile) Version: 4.6 Supports deprecated functions true is OpenGL ES: false supportsBufferMapping: true supportsBufferInvalidation: true forceDisableTextureBuffers: false Extensions: "GL_ARB_shader_texture_image_samples" "GL_ATI_separate_stencil" "GL_ARB_sparse_texture_clamp" "GL_AMD_framebuffer_multisample_advanced" "GL_ARB_shader_image_load_store" "GL_ARB_depth_texture" "GL_ARB_shader_atomic_counter_ops" "GL_ARB_draw_buffers" "GL_SGIS_texture_edge_clamp" "GL_ARB_texture_view" "GL_INTEL_blackhole_render" "GL_KHR_robust_buffer_access_behavior" "GL_ATI_texture_float" "GL_EXT_draw_range_elements" "GL_ARB_texture_stencil8" "GL_EXT_texture_compression_dxt1" "GL_ANGLE_texture_compression_dxt5" "GL_ARB_ES3_1_compatibility" "GL_ARB_clear_texture" "GL_ARB_multisample" "GL_ARB_shader_bit_encoding" "GL_KHR_debug" "GL_NV_compute_shader_derivatives" "GL_EXT_texture_compression_s3tc" "GL_AMD_seamless_cubemap_per_texture" "GL_ARB_compute_variable_group_size" "GL_NV_ES1_1_compatibility" "GL_ARB_texture_swizzle" "GL_ARB_arrays_of_arrays" "GL_EXT_texture_integer" "GL_ARB_texture_env_dot3" "GL_EXT_packed_float" "GL_NV_texgen_reflection" "GL_ARB_texture_rgb10_a2ui" "GL_EXT_semaphore_fd" "GL_NV_texture_barrier" "GL_ARB_texture_mirrored_repeat" "GL_NV_copy_depth_to_color" "GL_ARB_gl_spirv" "GL_NV_blend_square" "GL_ARB_texture_env_combine" "GL_ARB_window_pos" "GL_ARB_fragment_layer_viewport" "GL_NV_copy_image" "GL_EXT_gpu_program_parameters" "GL_ARB_clear_buffer_object" "GL_ARB_shader_objects" "GL_EXT_window_rectangles" "GL_EXT_debug_label" "GL_EXT_direct_state_access" "GL_ARB_multi_bind" "GL_ARB_texture_query_levels" "GL_ARB_explicit_uniform_location" "GL_ARB_buffer_storage" "GL_EXT_texture3D" "GL_ARB_seamless_cubemap_per_texture" "GL_EXT_texture_compression_rgtc" "GL_AMD_vertex_shader_viewport_index" "GL_ARB_shader_ballot" "GL_EXT_texture_filter_anisotropic" "GL_ARB_clip_control" "GL_EXT_texture_cube_map" "GL_EXT_blend_color" "GL_KHR_no_error" "GL_MESA_window_pos" "GL_ARB_fragment_shader" "GL_NV_half_float" "GL_EXT_framebuffer_sRGB" "GL_EXT_multi_draw_arrays" "GL_ARB_viewport_array" "GL_ARB_bindless_texture" "GL_EXT_polygon_offset_clamp" "GL_ARB_sample_shading" "GL_AMD_texture_texture4" "GL_EXT_blend_minmax" "GL_NV_light_max_exponent" "GL_IBM_texture_mirrored_repeat" "GL_ARB_texture_non_power_of_two" "GL_ARB_base_instance" "GL_OES_EGL_image" "GL_ARB_color_buffer_float" "GL_ARB_point_sprite" "GL_EXT_copy_texture" "GL_ARB_texture_filter_anisotropic" "GL_SGIS_generate_mipmap" "GL_ARB_half_float_vertex" "GL_EXT_draw_buffers2" "GL_EXT_texture_object" "GL_EXT_texture_env_add" "GL_ARB_shading_language_100" "GL_EXT_texture_compression_latc" "GL_ARB_compatibility" "GL_KHR_parallel_shader_compile" "GL_ARB_shader_clock" "GL_AMD_conservative_depth" "GL_MESA_texture_signed_rgba" "GL_ARB_transform_feedback2" "GL_ARB_gpu_shader5" "GL_ARB_vertex_shader" "GL_ARB_texture_env_add" "GL_ARB_transform_feedback3" "GL_ARB_shader_stencil_export" "GL_ARB_sparse_texture2" "GL_ARB_texture_buffer_range" "GL_ATI_fragment_shader" "GL_EXT_texture_mirror_clamp" "GL_EXT_memory_object" "GL_ARB_texture_compression_rgtc" "GL_ARB_draw_buffers_blend" "GL_ARB_transpose_matrix" "GL_EXT_EGL_image_storage" "GL_EXT_stencil_two_side" "GL_ARB_texture_storage" "GL_EXT_framebuffer_multisample" "GL_ARB_debug_output" "GL_ARB_multi_draw_indirect" "GL_EXT_separate_specular_color" "GL_KHR_robustness" "GL_ARB_indirect_parameters" "GL_EXT_EGL_sync" "GL_ARB_get_texture_sub_image" "GL_NV_conditional_render" "GL_EXT_framebuffer_blit" "GL_EXT_blend_equation_separate" "GL_ARB_depth_buffer_float" "GL_ANGLE_texture_compression_dxt3" "GL_ARB_provoking_vertex" "GL_ARB_texture_gather" "GL_SGIS_texture_border_clamp" "GL_EXT_blend_func_separate" "GL_AMD_depth_clamp_separate" "GL_ARB_copy_buffer" "GL_AMD_performance_monitor" "GL_ATI_meminfo" "GL_EXT_texture_edge_clamp" "GL_ARB_texture_compression" "GL_ARB_texture_buffer_object_rgb32" "GL_IBM_rasterpos_clip" "GL_EXT_shader_image_load_store" "GL_ARB_vertex_attrib_binding" "GL_NVX_gpu_memory_info" "GL_ARB_robustness" "GL_NV_primitive_restart" "GL_ARB_fragment_program" "GL_ARB_sparse_buffer" "GL_EXT_demote_to_helper_invocation" "GL_ARB_texture_query_lod" "GL_EXT_shader_samples_identical" "GL_EXT_point_parameters" "GL_ARB_ES3_2_compatibility" "GL_ARB_pipeline_statistics_query" "GL_AMD_pinned_memory" "GL_EXT_fog_coord" "GL_ATI_blend_equation_separate" "GL_ARB_spirv_extensions" "GL_EXT_secondary_color" "GL_ARB_shader_viewport_layer_array" "GL_ARB_framebuffer_no_attachments" "GL_ARB_shading_language_packing" "GL_ARB_multitexture" "GL_ARB_direct_state_access" "GL_EXT_packed_depth_stencil" "GL_ARB_blend_func_extended" "GL_ARB_depth_clamp" "GL_ARB_query_buffer_object" "GL_EXT_blend_subtract" "GL_ARB_texture_barrier" "GL_ARB_ES3_compatibility" "GL_EXT_shader_image_load_formatted" "GL_ARB_copy_image" "GL_KHR_texture_compression_astc_sliced_3d" "GL_ARB_framebuffer_object" "GL_ARB_vertex_program" "GL_ARB_uniform_buffer_object" "GL_ARB_point_parameters" "GL_NV_alpha_to_coverage_dither_control" "GL_EXT_texture_shared_exponent" "GL_EXT_texture_sRGB_R8" "GL_ARB_internalformat_query" "GL_ARB_stencil_texturing" "GL_EXT_timer_query" "GL_NV_packed_depth_stencil" "GL_ARB_get_program_binary" "GL_EXT_vertex_attrib_64bit" "GL_EXT_framebuffer_object" "GL_IBM_multimode_draw_arrays" "GL_EXT_texture_snorm" "GL_ARB_texture_border_clamp" "GL_ARB_invalidate_subdata" "GL_ARB_enhanced_layouts" "GL_NV_shader_atomic_int64" "GL_NV_texture_rectangle" "GL_ARB_fragment_program_shadow" "GL_ARB_vertex_attrib_64bit" "GL_AMD_multi_draw_indirect" "GL_EXT_texture_rectangle" "GL_ARB_vertex_buffer_object" "GL_ARB_texture_multisample" "GL_NV_depth_clamp" "GL_EXT_texture_env_dot3" "GL_ARB_parallel_shader_compile" "GL_AMD_shader_stencil_export" "GL_AMD_shader_trinary_minmax" "GL_APPLE_packed_pixels" "GL_ARB_draw_instanced" "GL_ARB_program_interface_query" "GL_SGIS_texture_lod" "GL_ARB_texture_rg" "GL_EXT_texture_shadow_lod" "GL_ARB_explicit_attrib_location" "GL_ARB_internalformat_query2" "GL_EXT_vertex_array_bgra" "GL_ARB_compressed_texture_pixel_storage" "GL_EXT_texture_lod_bias" "GL_ATI_texture_env_combine3" "GL_ARB_draw_elements_base_vertex" "GL_ARB_texture_buffer_object" "GL_AMD_query_buffer_object" "GL_ARB_shading_language_include" "GL_ARB_gpu_shader_int64" "GL_ARB_sampler_objects" "GL_ARB_draw_indirect" "GL_AMD_vertex_shader_layer" "GL_ARB_shader_draw_parameters" "GL_EXT_stencil_wrap" "GL_ARB_pixel_buffer_object" "GL_ARB_map_buffer_range" "GL_EXT_depth_bounds_test" "GL_EXT_abgr" "GL_ARB_vertex_type_10f_11f_11f_rev" "GL_ARB_vertex_array_object" "GL_ARB_cull_distance" "GL_EXT_texture_swizzle" "GL_EXT_shadow_funcs" "GL_EXT_texture_sRGB" "GL_ARB_tessellation_shader" "GL_ARB_shader_storage_buffer_object" "GL_OES_read_format" "GL_ARB_shading_language_420pack" "GL_ARB_shader_atomic_counters" "GL_EXT_framebuffer_multisample_blit_scaled" "GL_KHR_texture_compression_astc_ldr" "GL_ARB_shader_texture_lod" "GL_EXT_bgra" "GL_ARB_map_buffer_alignment" "GL_ARB_texture_env_crossbar" "GL_SUN_multi_draw_arrays" "GL_ARB_vertex_type_2_10_10_10_rev" "GL_EXT_subtexture" "GL_ARB_texture_storage_multisample" "GL_NV_fog_distance" "GL_ARB_robust_buffer_access_behavior" "GL_ARB_occlusion_query2" "GL_EXT_semaphore" "GL_EXT_texture_array" "GL_ARB_shader_group_vote" "GL_EXT_rescale_normal" "GL_EXT_texture_env_combine" "GL_EXT_provoking_vertex" "GL_ARB_texture_float" "GL_ARB_seamless_cube_map" "GL_ARB_timer_query" "GL_EXT_pixel_buffer_object" "GL_EXT_texture_buffer_object" "GL_MESA_shader_integer_functions" "GL_MESA_framebuffer_flip_y" "GL_ARB_derivative_control" "GL_ARB_texture_cube_map_array" "GL_EXT_compiled_vertex_array" "GL_MESA_pack_invert" "GL_ARB_fragment_coord_conventions" "GL_ARB_shader_image_size" "GL_ARB_sync" "GL_ARB_texture_cube_map" "GL_EXT_packed_pixels" "GL_INGR_blend_func_separate" "GL_EXT_memory_object_fd" "GL_ARB_conditional_render_inverted" "GL_ARB_transform_feedback_instanced" "GL_ARB_ES2_compatibility" "GL_ARB_sparse_texture" "GL_ATI_texture_mirror_once" "GL_ARB_gpu_shader_fp64" "GL_ARB_half_float_pixel" "GL_ARB_shader_subroutine" "GL_ARB_texture_rectangle" "GL_ARB_compute_shader" "GL_EXT_draw_instanced" "GL_AMD_draw_buffers_blend" "GL_KHR_blend_equation_advanced" "GL_NV_vdpau_interop" "GL_ARB_texture_compression_bptc" "GL_EXT_shader_integer_mix" "GL_ARB_polygon_offset_clamp" "GL_ARB_transform_feedback_overflow_query" "GL_EXT_vertex_array" "GL_S3_s3tc" "GL_EXT_texture" "GL_ARB_instanced_arrays" "GL_ARB_shader_precision" "GL_EXT_gpu_shader4" "GL_KHR_context_flush_control" "GL_ARB_texture_mirror_clamp_to_edge" "GL_ATI_draw_buffers" "GL_EXT_transform_feedback" "GL_EXT_texture_sRGB_decode" "GL_ARB_vertex_array_bgra" "GL_ARB_separate_shader_objects" "GL_ARB_conservative_depth" "GL_ARB_shadow" "GL_ARB_occlusion_query" "GL_ATI_texture_compression_3dc" "GL_NV_texture_env_combine4" "GL_ARB_framebuffer_sRGB" QPA OpenGL Detection Info supportsDesktopGL: true supportsOpenGLES: true isQtPreferOpenGLES: false useBufferInvalidation (config option): false Hardware Information GPU Acceleration: auto Memory: 15337 Mb Number of Cores: 16 Swap Location: /tmp Built for: sse2 Base instruction set: sse2 Supported instruction sets: fma3+avx2 avx2 fma3+avx avx fma4 fma3+sse4.2 sse4.2 sse4.1 ssse3 sse3 sse2 Current Settings Current Swap Location: /tmp Current Swap Location writable: true Undo Enabled: true Undo Stack Limit: 200 Use OpenGL: true Use OpenGL Texture Buffer: true Disable Vector Optimizations: false Disable AVX Optimizations: false Canvas State: OPENGL_SUCCESS Autosave Interval: 420 Use Backup Files: true Number of Backups Kept: 1 Backup File Suffix: ~ Backup Location: Same Folder as the File Backup Location writable: false Resource Location: /home/maplespace/.local/share/krita Use Win8 Pointer Input: false Use RightMiddleTabletButton Workaround: false Levels of Detail Enabled: false Use Zip64: false Display Information Number of screens: 1 Screen: 0 Name: XWAYLAND0 Depth: 24 Scale: 1 Physical DPI145.401 Logical DPI96 Physical Size: 360, 200 Position: 0, 0 Resolution in pixels: 2048x1152 Manufacturer: Model: Refresh Rate: 164.897 > * Which widget style are you using Where do I find which widget style I am using? > * Can you reproduce the issue with the appimage? Yes, the lag (and the CPU core usage) is still there in the Appimage version as well.
Thanks for your comment! Automatically switching the status of this bug to REPORTED so that the KDE team knows that the bug is ready to get confirmed. In the future you may also do this yourself when providing needed information.
Git commit 36d3a5cc7c9fc323569d2cdf6e7cfc78f8829b98 by Dmitry Kazakov. Committed on 18/04/2023 at 12:40. Pushed by dkazakov into branch 'master'. Fix huge slowdown when saving long text into the text shape There were two issues: 1) paintPaths() used to rasterize **all** the character paths, even the ones outside the current painter's clip rect. That was obviously slow, because the tiled vector rendering code forced it to rasterize the whole text 10+ times. 2) paintPaths() passed the bounding outline rect incorrectly to the descendants. Instead of passing the outline of the child shape it passed the outline of the root shape, which caused KoClipMaskPainter to allocate too huge buffer for rendering the text. M +25 -15 libs/flake/text/KoSvgTextShape.cpp https://invent.kde.org/graphics/krita/commit/36d3a5cc7c9fc323569d2cdf6e7cfc78f8829b98
Git commit 088a1f804e9311bb0cccccbef2ea89230834b6d9 by Dmitry Kazakov. Committed on 18/04/2023 at 13:09. Pushed by dkazakov into branch 'master'. Fix gradient painting on textr shapes We should pass root outline as the baseline for the coordinate systems, but create KoClipMaskPainter clipped to the real size of the shape. M +12 -8 libs/flake/text/KoSvgTextShape.cpp https://invent.kde.org/graphics/krita/commit/088a1f804e9311bb0cccccbef2ea89230834b6d9