Bug 279333 - x11/xorg 100% - until truss probed
Summary: x11/xorg 100% - until truss probed
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: standards (show other bugs)
Version: 14.0-RELEASE
Hardware: amd64 Any
: --- Affects Only Me
Assignee: freebsd-standards (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-05-26 18:22 UTC by unspam
Modified: 2024-05-26 18:22 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description unspam 2024-05-26 18:22:51 UTC
Greetings, I've finally been able to reproduce this on 14.x as well as constant happenings on 15.x

So, on FBSD-14, I have an issue where by if I try to use xfce-screenshot plugin, XORG will launch it self into 100% causing the system to become unresponsive.

Within FBSD-15 -XORG will freeze upon startup of xfce4 showing the same symptoms.

Now, if I SSH in to my host, and use truss to inspect the PID -- Suddenly Xorg comes back in to life as if nothing had ever happened and my machine becomes responsive.

Version: FreeBSD 14.0-RELEASE
Graphics: NVidia 3060 RTX 
(nvidia-modeset and tried all the different versions from 550 to 470)
Processor: Ryzen 9 5950X

FreeBSD 14, custom kernel but latest, but occurs the same on GENERIC and as mentioned 15-Current.

It never used to do this on my previous setup of 15-Current prior to accidentally breaking and requiring a reformat.


HTOP

    24224 root        24   0 13400  3068 S    0.0  0.0  0:00.00 ├─ login [pam]
    29169 rabbit         20   0 16456  4540 S    0.0  0.0  0:00.01 │  └─ -tcsh
    30393 rabbit         20   0 14712  3288 S    0.0  0.0  0:00.00 │     └─ xinit /usr/local/etc/xdg/xfce4/xinitrc
    30658 root       135   0 24.9G  863M R   99.2  0.7  3:09.63 │        ├─ /usr/local/libexec/Xorg :0
    31222 rabbit         20   0 98132 36852 S    0.0  0.0  0:00.12 │        └─ xfce4-session

Truss output

    recvmsg(69,0x8210d3680,0)                        ERR#35 'Resource temporarily unavailable'
    setitimer(ITIMER_REAL,{ 0.000000, 0.000000 },0x0) = 0 (0x0)
    poll({ 4/POLLIN 5/POLLIN 6/POLLIN 18/POLLIN 19/POLLIN 20/POLLIN 21/POLLIN 22/POLLIN 26/POLLIN 31/POLLIN 49/POLLIN 50/POLLIN 51/POLL
    setitimer(ITIMER_REAL,{ 0.005000, 0.005000 },0x0) = 0 (0x0)
    recvmsg(69,{NULL,0,[{"5 \^D\0\^O\n\M-@\^B\^C\0\M-@\^B:"...,16408}],1,{},0,0},0) = 16408 (0x4018)
    recvmsg(69,{NULL,0,[{"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"...,16164}],1,{},0,0},0) = 16164 (0x3f24)
    recvmsg(69,{NULL,0,[{"\0Fs\0\0\M->X\^A\0\M-=r\0\0007Z"...,15936}],1,{},0,0},0) = 15936 (0x3e40)
    recvmsg(69,{NULL,0,[{"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"...,15984}],1,{},0,0},0) = 15984 (0x3e70)
    recvmsg(69,{NULL,0,[{"\0^\a\0\0\M^G\M-9\^B\0\M^G\M-9"...,15592}],1,{},0,0},0) = 15592 (0x3ce8)
    recvmsg(69,{NULL,0,[{"\M^K\^E\^D\0\^P\n\M-@\^B@\0\0\0"...,16408}],1,{},0,0},0) = 16408 (0x4018)
    recvmsg(69,{NULL,0,[{"|\^D\M-t\^B&\n\M-@\^B\^B\0\0\0"...,16376}],1,{},0,0},0) = 8596 (0x2194)
    sched_yield()                                    = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    [continuation...]

    write(32,"\0",1)                                 = 1 (0x1)
    sched_yield()                                    = 0 (0x0)
    nanosleep({ 0.000000000 })                       = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    nanosleep({ 0.000000000 })                       = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    SIGNAL 14 (SIGALRM) code=SI_KERNEL
    sigprocmask(SIG_SETMASK,{ SIGALRM },0x0)         = 0 (0x0)
    sigreturn(0x8210d2740)                           EJUSTRETURN
    SIGNAL 14 (SIGALRM) code=SI_KERNEL
    sigprocmask(SIG_SETMASK,{ SIGALRM },0x0)         = 0 (0x0)
    sigreturn(0x8210d2740)                           EJUSTRETURN
    nanosleep({ 0.000000000 })                       = 0 (0x0)
    sched_yield()                                    = 0 (0x0)
    nanosleep({ 0.000000000 })                       = 0 (0x0)
    [continuation]
    writev(69,[{"kx\M-J\0kx\M-J\0kx\M-J\0kx\M-J\0"...,122880}],1) = 65536 (0x10000)
    writev(69,[{"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"...,57344}],1) = 57344 (0xe000)
    sched_yield()                                    = 0 (0x0)

sched_yield appears to be the issue, and the same issue I was getting on 15-Current. XORG will eventually resume after 2-3minutes of frozen activity but this is annoying.

I also don't understand why as to if I use truss the process suddenly resumes normally. Happy to attach anything else.

Cheers.