This has happened to me only once on Linux. I still tell stories about it.
It was a CD burning program stuck in uninterruptible sleep! Trapped in a system call into the kernel that can never be interrupted by a signal, it was truly unkillable. The SIGKILLs simply piled up never to be delivered.
In this case it was a driver holding that thread captive and making an assumption about the hardware eventually responding to a request which never completes.
So yes indeed it was the kernel, and ideally the driver could be written better, but that’s probably easier said than done when the hardware can do weird things.
This was a long time ago, so for all I know the issue has been long corrected.
This has happened to me only once on Linux. I still tell stories about it.
It was a CD burning program stuck in uninterruptible sleep! Trapped in a system call into the kernel that can never be interrupted by a signal, it was truly unkillable. The SIGKILLs simply piled up never to be delivered.
I would assume that was a kernel issue.
In this case it was a driver holding that thread captive and making an assumption about the hardware eventually responding to a request which never completes.
So yes indeed it was the kernel, and ideally the driver could be written better, but that’s probably easier said than done when the hardware can do weird things.
This was a long time ago, so for all I know the issue has been long corrected.