Release rolling 64-bit
Kernel Linux 3.6.11-1-ARCH
RAM 7.8 GiB
iotop shows [kswapd0] with 99.99%
The RAM used never reaches 60%, the rest is always used for cache.
I was able to make the pc usable by changing the process' priority:
sudo renice 19 -p 60
But it stills freezes on some occasions due to a lot of iowait.
I've seen many posts related to iowait problems and kswapd0, along with several bugs entries in some distros, but I wasn't able to reach a solution yet.
It seems the asd.service (anything sync daemon) was the one filling the ram with cache, once I stopped the service everything went back to normal.
But, anyway... should this happen? Why the kswapd0 was trying to swap the cache? It doesn't seem to be right... after all, I don't even have a swap partition.
I've noticed similar behaviour with my mdraid setup with the lts kernel. the standard arch kernel also has problems with kswapd0 for me, becoming stuck at 100% cpu every now and then after some relatively heavy IO. I've seen a thread on these forums relating to this. I also don't have any swap. There are plenty of bug reports on other distros relating to this issue. I also don't understand why kswapd does anything if there is no swap.