Skip to content

High CPU consumption with wayland 1.17.91 #6

Open
@shamazmazum

Description

@shamazmazum

Hello. After upgrading x11-wm/sway to a new version 1.4 I found it completely unusable (what a surprise!) Turns out it uses too much per-process timers and the kernel simply refuses to create more, rendering sway unusable. One solution to this problem is to bump TIMER_MAX in /usr/src/sys/sys/timers.h and recompile the kernel (hopefully, it doesn't break userland). The other solution is to upgrade to wayland 1.17.91 which tracks timers in userland and require only one timer from the kernel.
Obviously, it works in Linux, but in FreeBSD it causes to abnormally high number of calls to kevent() and almost 100% CPU usage. You can look at the issue I created for sway here for detailed information.

For example, here is the number of calls to kevent() by firefox and sway in the period of about 10 seconds.

firefox                       kevent()                                     507
  sway                        kevent()                                10377444

You can take my port for a fresh wayland from here.

Any ideas what's going on?

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