Hi Riccardo,

I’ve hit this a fair bit too, but it’s usually too late to be clear on the 
exact cause by the time I hear a fan spin up and spot what’s happened. I was 
suspecting mine being triggered by the use of keyboard shortcuts in GWorkspace 
(e.g. creating directory, moving a file to recycler). It seems to happen less 
when I’m not using GWorkspace keyboard shortcuts so heavily, but I’m not very 
certain on this!

Cheers,
Tim

> On 26 Jun 2025, at 11:28, Riccardo Mottola <riccardo.mott...@libero.it> wrote:
> 
> Hi,
> 
> I sometimes catch high-CPU usage in GWorkspace. It doesn't go away by itself, 
> I need to restart the application. The application remains functional, it 
> does not "hang".
> I don't know how to trigger it except having it run for hours or days...
> It could be related to checking many images or to having file system changes 
> while open, I don't konw. I just though checking it after reading Patrick's 
> issue.
> Since it is hard to reproduce, I just let it run in gdb for days and 
> eventually hit ctrl-c when I heard my fan spinning and htop showed CPU 
> (amazing how a multi-CPU sytem can hide such issue).
> 
> I hoped to see something, but without a proper hang, I guess it is more like 
> poking in a haystack.
> Stacktrace is below. I see it is pure GNUstep.
> I guess this is just the application runloop waiting for mouse or keyboard 
> input?
> 
> #0  0x00007ffff6e21af2 in ?? () from /lib64/libc.so.6
> #1  0x00007ffff6e1660c in ?? () from /lib64/libc.so.6
> #2  0x00007ffff6e16651 in ?? () from /lib64/libc.so.6
> #3  0x00007ffff6e8c02a in poll () from /lib64/libc.so.6
> #4  0x00007ffff74bfae8 in poll (__fds=<optimized out>, __nfds=<optimized 
> out>, __timeout=2)
>     at /usr/include/bits/poll2.h:44
> #5  -[GSRunLoopCtxt pollUntil:within:] (self=<optimized out>, 
> _cmd=0x7ffff76de860 <_OBJC_SELECTOR_TABLE+1184>,
>     milliseconds=2, contexts=0x555555a60010) at GSRunLoopCtxt.m:395
> #6  0x00007ffff73e77d4 in -[NSRunLoop acceptInputForMode:beforeDate:] 
> (self=0x555555a5e9e0,
>     _cmd=0x7ffff76de890 <_OBJC_SELECTOR_TABLE+1232>, mode=0x7ffff76df690 
> <_OBJC_INSTANCE_2>,
>     limit_date=0x555557589f00) at NSRunLoop.m:1265
> #7  0x00007ffff73e7494 in -[NSRunLoop runMode:beforeDate:] (self=<optimized 
> out>, _cmd=<optimized out>,
>     mode=0x7ffff76df690 <_OBJC_INSTANCE_2>, date=<optimized out>) at 
> NSRunLoop.m:1345
> #8  0x00007ffff7ba8112 in -[GSDisplayServer(EventOps) 
> getEventMatchingMask:beforeDate:inMode:dequeue:] (
>     self=<optimized out>, _cmd=<optimized out>, mask=<optimized out>, 
> limit=<optimized out>, mode=<optimized out>,
>     flag=<optimized out>) at GSDisplayServer.m:1037
> #9  0x00007ffff2dab3ca in -[XGServer(X11Ops) 
> getEventMatchingMask:beforeDate:inMode:dequeue:] (self=0x555555a0cd20,
>     _cmd=<optimized out>, mask=4294967295, limit=0x555555a74580, 
> mode=0x7ffff76df690 <_OBJC_INSTANCE_2>,
>     flag=1 '\001') at XGServerEvent.m:2743
> #10 0x00007ffff79e3305 in DPSPeekEvent (ctxt=<optimized out>, mask=<optimized 
> out>, limit=<optimized out>,
>     mode=<optimized out>) at 
> ../Headers/Additions/GNUstepGUI/GSDisplayServer.h:210
> #11 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] 
> (self=0x555555a05e10,
>     _cmd=0x7ffff7d125b0 <_OBJC_SELECTOR_TABLE+2928>, mask=4294967295, 
> expiration=0x555555a74580,
>     mode=0x7ffff76df690 <_OBJC_INSTANCE_2>, flag=1 '\001') at 
> NSApplication.m:2208
> #12 0x00007ffff79e521e in -[NSApplication run] (self=0x555555a05e10, 
> _cmd=<optimized out>) at NSApplication.m:1579
> #13 0x00005555555e2987 in main (argc=<optimized out>, argv=<optimized out>, 
> env=<optimized out>) at main.m:38
> 
> 

Reply via email to