Processes stuck in kernel

Hi everybody, since a few days I am experiencing a weird condition in my desktop PC.

It started with Firefox sometimes hanging hard with high cpu usage (1 full cpu core): no way to kill it even with kill -9.
The system activity monitor showed that all cpu time was spent running in the kernel. At first I thought about some problem in one of my hard disks, but the strange thing is that all other applications were working without problems, even applications that do heavy I/O.
Sometimes another application would “enqueue”, meaning that it showed the same symptoms as Firefox but only until the Firefox hang was resolved.
This situations typically resolved after 15-20 minutes of killing Firefox with kill -9. If left alone, the situation did not resolve (or so it seemed).

I started looking around to identify anomalies and found that my /tmp directory was very crowded, as there was no job to routinely clear the files there.
After cleaning the oldest files there and in /var/tmp (and setting up a job to do it routinely), the system worked better, and I noticed that other glitches I had previously noticed went away (slowness in Gwenview, slowness in opening the file dialog, etc.). I thought I had resolved the problem.

Today however plasmashell started to show the same behavior and I’m now forced to work without plasmashell because as soon as I try to start it, it hangs hard and it maximizes the usage of 1 core of my CPU. As previously, all time is spent in kernel.
I find no evidence of I/O problems (but I’m not sure I looked in all the right places), and the system is behaving well as long as plasmashell stays down.

Is there somebody who can help me identify the fault that makes my PC behave this way?
I will probably reinstall this PC in the near future because of an unsolvable corruption of the rpm db, but I’d like to understand what’s going on before reinstalling.

Thank you in advance
Cris

what graphic card and video driver do you have

sudo lspci | grep VGA

This Forum thread appears to be still completely relevant to your question about cleaning your system temp files.

https://forums.opensuse.org/showthread.php/520332-Need-Help-Cleaning-Temp-amp-Var-Temp-Files

As for any RPM database corruption,
The following zypper command is supposed to delete the entire database, allowing it to be rebuilt

zypper clean -a

In the relatively rare cases the above zypper command doesn’t work, you need to use the rpm command, here is one Forum post that describes how to do it

https://forums.opensuse.org/showthread.php/470592-Clearing-rpm-cache

HTH,
TSU

Hi I_A!

cris@PolariSuse ~]$ sudo lspci | grep VGA
[sudo] password for root:
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
cris@PolariSuse ~]$ inxi -G
Graphics:  Card-1: Advanced Micro Devices [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
           driver: radeon v: kernel
           Display: x11 server: X.Org 1.20.1 driver: ati,radeon unloaded: fbdev,modesetting,vesa
           resolution: 1920x1080~60Hz
           OpenGL: renderer: AMD CAICOS (DRM 2.50.0 / 4.18.5-1-default LLVM 6.0.1) v: 3.3 Mesa 18.1.6

Thank you!
Cris

Hi tsu2!

Thank you for this! Actually, this is one of the threads I have been reading to setup the cleaning of /tmp.

Tsu2, there is a difference between cleaning the package cache and deleting the entire database. The ‘zypper clean -a’ command does the former, as per the documentation. That’s what ‘man zypper’ says about ‘clean -a’ : Clean both repository metadata and package caches.

On the other hand, my problem is with the rpmdb. There is a command to (try to) repair the rpmdb, but it is not working in my case. I have had a lengthy conversation with one of the developers on Stack Overflow (here), and the outcome is that my rpmdb is corrupt beyond repair. At least for me… maybe Jeff Jhonson (see the Stack Overflow thread) would be able to repair it, but for me it’s too hard.

This is not my main problem now, however. I can live with the rpmdb corruption, it only means I have to reconfirm most of the digital signing keys when I do a zypper dup or refresh.
The problem with stuck processes instead is very annoying and hinders my ability to do work on this PC.

Thank you
Cris

you have an ati card and use the opensource radeon driver Firefox has no issues with them
I doubt that the rpm data base has anything to do with your firefox behavior
I’d suggest creating a new user account with yast and see if Firefox has issues there

Hi I_A!

Thank you, you’re completely right… I don’t know how I didn’t think about trying with a new user. I’ll do it ASAP and report back.
About my rpmdb… I was not implying that it was in any way linked to my present issue.

Thank you
Cris

I_A, I logged in with a new user, tried to stress test Firefox, Plasmashell and other applications/processes that gave me problems… all seems to behave correctly. I am using this new user now to write this post.
So it seems my main user suffers from some kind of corruption in his profiles.

Do you (or someone else) think I can fix it?
I could delete all KDE profiles, but Firefox is not part of KDE so it must be something that affects both KDE and GTK applications (and probably other too).

How would you proceed? Do you think I should simply ditch that user and create a new one for my main usage?

Thank you in advance.
Cris

Your stackoverflow thread is somewhat consistent with my understanding what is also done with the links I provided you except of course those references to headers which I can’t remember anyone needing to do.

Underlying all the commands that have been suggested, the “repair” is actually to wipe the existing database and rebuild, it’s just that some commands might be more effective than others. You should not have to “reconfirm keys” or anything else, your repos are the only objects that need to be signed, your packages cache should start to rebuild automatically with your next system update without any further interaction.

TSU

Tsu, please… I’m grateful for your desire to help me, but you’re polluting this thread with something completely unrelated. My comment about the corrupted rpmdb was only a pass-by comment justifying my need to reinstall my PC in the short-medium term. It has nothing to do with the problem at hand.

And BTW, I’m sorry, but you’re completely misunderstanding my rpmdb problem. It has nothing to do with the package caches. Please document yourself about the rpmdb structure and possible corruption of it. You may want to start by reading the docs for the command ‘rpmdb --rebuilddb’.

Thank you
Cris