Re: [regression -next0117] What is kcompactd and why is he eating 100% of my cpu?

From: valdis . kletnieks
Date: Tue Jan 29 2019 - 23:29:55 EST


On Tue, 29 Jan 2019 20:06:39 -0500, valdis.kletnieks@xxxxxx said:
> On Mon, 28 Jan 2019 10:16:27 +0100, Jan Kara said:
>
> > So my buffer_migrate_page_norefs() is certainly buggy in its current
> > incarnation (as a result block device page cache is not migratable at all).
> > I've sent Andrew a patch over week ago but so far it got ignored. The patch
> > is attached, can you give it a try whether it changes something for you?
> > Thanks!
>
> Been running with the patch for about 24 hours, haven't seen kcompactd
> misbehave. I even fired up a Chrome with a lot of tabs open, a Firefox, and a
> kernel build, intentionally drove the system into swapping, and kcompactd
> didn't make it into the top 10 on 'top'.
>
> I'm willing to say put a "tested-by:" on that one, it looks fixed from here.
> If there's any remaining bugs, they're ones I can't seem to trigger...

Spoke too soon. Sitting here not stressing the laptop at all, plenty of free
memory, and ka-blam.

Will keep my eyes open and do the data gathering Mel Gorban wanted - I discovered
too late that trace-cmd wasn't installed, and things broke free by themselves (probably
not coincidence that I launched a terminal window and then it cleared....)

top - 23:24:03 up 2:19, 1 user, load average: 2.70, 2.00, 1.55
Tasks: 221 total, 3 running, 218 sleeping, 0 stopped, 0 zombie
%Cpu(s): 15.6 us, 67.3 sy, 0.0 ni, 9.5 id, 0.0 wa, 5.6 hi, 2.0 si, 0.0 st
GiB Mem : 7.6 total, 2.7 free, 3.1 used, 1.8 buff/cache
GiB Swap: 8.0 total, 8.0 free, 0.0 used. 4.1 avail Mem

PID PPID %MEM PR NI S VIRT RES SHR SWAP UID %CPU TIME+ COMMAND
27 2 0.0 20 0 R 0.0m 0.0m 0.0m 0.0m 0 78.5 2:11.91 kcompactd0