Às vezes, o kswapd0 usa 100% de um núcleo. Esse problema acontece durante todos os kernels 4.0+. drop_caches não funcionou. Adicionando swap não funcionou. Não há regra quando o problema aparece. Pode esperar 1-2 semanas. Pode aparecer duas vezes no dia. Na maioria das vezes, ele existirá a qualquer momento, antes de reiniciar o servidor. Raramente ele pode se curar sem reiniciar.
A mudança da fonte de alimentação não mudou nada. O teste de RAM executado durante a noite não encontrou nada.
Durante minha pesquisa, eu tentei kernels mais antigos (alguns de 3.0+) - sem resultado, o problema ainda existe.
Algumas saídas do perftop:
Este é o perftops com o módulo do kernel i915 carregado:
+ 98,22% 0,90% [kernel] [k] kswapd
+ 93,07% 0,32% [kernel] [k] shrink_zone
+ 87,41% 3,71% [kernel] [k] shrink_slab
+ 56,55% 1,11% [i915] [k] i915_gem_shrinker_scan
+ 50,65% 46,24% [i915] [k] i915_gem_shrink
+ 23,28% 4,32% [kernel] [k] super_cache_count
+ 18,22% 2,33% [kernel] [k] list_lru_count_one
+ 15,26% 0,00% [kernel] [k] ret_from_fork
+ 15,26% 0,00% [kernel] [k] kthread
+ 11,84% 11,83% [kernel] [k] _raw_spin_lock
46,24% [i915] [k] i915_gem_shrink
12,11% [kernel] [k] _raw_spin_lock
4,28% [kernel] [k] super_cache_count
3,74% [i915] [k] i915_vma_unbind
3,67% [kernel] [k] shrink_slab
3,20% [i915] [k] i915_gem_object_put_pages
2,78% [kernel] [k] __list_lru_count_one.isra.0
Isso é com o i915 na lista negra. Ele não alterou esse comportamento de bug de nenhuma maneira, exceto esta saída:
+ 97,30% 2,32% [kernel] [k] kswapd
+ 83,40% 0,65% [kernel] [k] shrink_zone
+ 69,79% 7,77% [kernel] [k] shrink_slab
+ 59,73% 10,66% [kernel] [k] super_cache_count
+ 46,97% 5,76% [kernel] [k] list_lru_count_one
+ 30,73% 30,73% [kernel] [k] _raw_spin_lock
+ 23,84% 0,00% [kernel] [k] ret_from_fork
+ 23,84% 0,00% [kernel] [k] kthread
+ 9,63% 7,23% [kernel] [k] __list_lru_count_one.isra.0
+ 6,18% 0,82% [kernel] [k] zone_balanced
+ 5,05% 2,28% [kernel] [k] shrink_lruvec
30,63% [kernel] [k] _raw_spin_lock
10,84% [kernel] [k] super_cache_count
7,66% [kernel] [k] shrink_slab
7,28% [kernel] [k] __list_lru_count_one.isra.0
5,29% [kernel] [k] list_lru_count_one
3,69% [kernel] [k] memcg_cache_id
3,62% [kernel] [k] _raw_spin_unlock
2,63% [kernel] [k] zone_watermark_ok_safe
2,53% [kernel] [k] mem_cgroup_iter
2,44% [kernel] [k] shrink_lruvec
2,36% [kernel] [k] kswapd
1,35% [kernel] [k] _raw_spin_lock