Date: Tue, 08 May 2018 22:37:05 +0000 From: bugzilla-noreply@freebsd.org To: bugs@FreeBSD.org Subject: [Bug 228076] [sched_ule] Not stealing process from loaded CPU Message-ID: <bug-228076-227-MUgt5zW77h@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-228076-227@https.bugs.freebsd.org/bugzilla/> References: <bug-228076-227@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=228076 --- Comment #2 from Don Lewis <truckman@FreeBSD.org> --- Thread stealing is only done in the CPU idle loop (or more recently, when ULE detects that the CPU is about to go idle). Since none of the CPUs is idle in this case, stealing will not happen. Setting kern.sched.steal_thresh=1 won't make a difference since the stuck thread raises the load to 2 on the CPU is where it is assigned. In theory sched_balance() should eventually move the stuck thread to the CPU is running "runOne", but it runs infrequently and if the destination CPU is chosen totally randomly, that could take a while. There could be an issue in how it chooses the destination CPU that prevents it from ever choosing the CPU where "runOne" is running ... -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-228076-227-MUgt5zW77h>
