Skip to content

CPU利用率100%,响应延迟15秒左右 #504

@2lalei

Description

@2lalei

操作系统:Budgie
Linux: 6.8.0-55-generic
ibus: 1.5.29-rc2
键盘:HHKB Professional Hybrid Type-S

我们家住着一只叫Alfie的阿比西尼亚猫,他喜欢在键盘上展示舞姿。
由此,我发现键盘变得卡顿,使用top观察,显示ibus-engine-lib进程的CPU利用率为100%;
期间系统平均负载为1.x;
另外用perf记录系统的函数统计信息,如下:

  • 99.99% 0.00% ibus-engine-lib ibus-engine-libpinyin [.] _start ◆
  • 99.99% 0.00% ibus-engine-lib libc.so.6 [.] __libc_start_main@@GLIBC_2.34 ▒
  • 99.99% 0.00% ibus-engine-lib libc.so.6 [.] __libc_start_call_main ▒
  • 99.99% 0.00% ibus-engine-lib ibus-engine-libpinyin [.] main ▒
  • 99.99% 0.00% ibus-engine-lib libibus-1.0.so.5.0.529 [.] ibus_main ▒
  • 99.99% 0.00% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] g_main_loop_run ▒
  • 99.99% 0.00% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] 0x00007cbc00401717 ▒
  • 99.99% 0.00% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] 0x00007cbc003a248e ▒
  • 99.99% 0.00% ibus-engine-lib libgio-2.0.so.0.8000.0 [.] 0x00007cbc005febe8 ▒
  • 99.99% 0.00% ibus-engine-lib libibus-1.0.so.5.0.529 [.] 0x00007cbc007f2f7c ▒
  • 99.99% 0.00% ibus-engine-lib libgobject-2.0.so.0.8000.0 [.] g_signal_emit ▒
  • 99.99% 0.00% ibus-engine-lib libgobject-2.0.so.0.8000.0 [.] g_signal_emit_valist ▒
  • 99.99% 0.00% ibus-engine-lib libgobject-2.0.so.0.8000.0 [.] 0x00007cbc004c2ef2 ▒
  • 99.99% 0.00% ibus-engine-lib libgobject-2.0.so.0.8000.0 [.] 0x00007cbc004d2f98 ▒
  • 99.99% 0.00% ibus-engine-lib libgobject-2.0.so.0.8000.0 [.] g_closure_invoke ▒
  • 99.99% 0.00% ibus-engine-lib libibus-1.0.so.5.0.529 [.] 0x00007cbc007db8d8 ▒
  • 99.99% 0.00% ibus-engine-lib ibus-engine-libpinyin [.] PY::PinyinEngine::processKeyEvent(unsigned int, unsigned int, unsigned▒
  • 99.99% 0.00% ibus-engine-lib ibus-engine-libpinyin [.] PY::FullPinyinEditor::insert(int) ▒
  • 99.99% 0.00% ibus-engine-lib ibus-engine-libpinyin [.] PY::PhoneticEditor::update() ▒
  • 99.99% 0.00% ibus-engine-lib libpinyin.so.15.0.0 [.] pinyin_guess_candidates ▒
  • 99.99% 0.00% ibus-engine-lib libpinyin.so.15.0.0 [.] 0x00007cbc008ccc86 ▒
  • 99.99% 0.00% ibus-engine-lib libpinyin.so.15.0.0 [.] 0x00007cbc008cca39 ▒
  • 32.61% 0.00% ibus-engine-lib libpinyin.so.15.0.0 [.] 0x00007cbc008cca05 ▒
  • 31.64% 0.00% ibus-engine-lib libpinyin.so.15.0.0 [.] 0x00007cbc008cca51 ▒
  • 28.77% 9.91% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] g_array_set_size ▒
  • 25.45% 12.74% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] g_array_append_vals ▒
  • 15.21% 12.29% ibus-engine-lib libc.so.6 [.] __memset_avx2_unaligned_erms ▒
  • 14.87% 12.49% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] g_array_remove_range ▒
  • 5.98% 2.90% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] memset@plt ▒
  • 5.24% 4.16% ibus-engine-lib libc.so.6 [.] __memmove_avx_unaligned_erms ▒
  • 3.18% 1.08% ibus-engine-lib libglib-2.0.so.0.8000.0 [.] memcpy@plt ▒
  • 2.18% 1.20% ibus-engine-lib libpinyin.so.15.0.0 [.] g_array_append_vals@plt ▒
  • 1.86% 0.91% ibus-engine-lib libpinyin.so.15.0.0 [.] g_array_set_size@plt

如果需要perf文件,我可以提供。
另外,维护人员如果能养一只猫的话(因为开发的是ibus),我想应该能更有机会触发一些出人意料的异常。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions