2010-12-03 50 views
2

Je reçois un kernel crash comme ci-dessous. Ici, je peux observer une grande mémoire est présente dans la page unevictablle. Je souhaite savoir quand exactement la mémoire est ajoutée à une liste de pages non-visible.unevictable page

En outre, à partir du message ci-dessous, je peux comprendre que 1724kB est disponible dans le système. est-ce correct?

kswapd0: page allocation failure. order:0, mode:0xd0 
[<c002aed4>] (unwind_backtrace+0x0/0xdc) from [<c006d5b0>] (__alloc_pages_nodemask+0x490/0x4ec) 
[<c006d5b0>] (__alloc_pages_nodemask+0x490/0x4ec) from [<c008416c>] (cache_alloc_refill+0x260/0x4f4) 
[<c008416c>] (cache_alloc_refill+0x260/0x4f4) from [<c0084498>] (__kmalloc+0x98/0xd8) 
[<c0084498>] (__kmalloc+0x98/0xd8) from [<c01f73d8>] (__alloc_skb+0x44/0x124) 
[<c01f73d8>] (__alloc_skb+0x44/0x124) from [<c01f7cac>] (skb_copy+0x2c/0xa0) 
Exception stack(0xc4ecbdf0 to 0xc4ecbe38) 
bde0:          00000000 00000064 c0347718 00000000 
be00: 00000001 00000000 c0347718 c0347718 c4ecbf54 00000000 00000000 000000fd 
be20: c4ecbf00 c4ecbe38 c00724b4 c00724c4 80000013 ffffffff     
[<c0024b18>] (__irq_svc+0x38/0xc0) from [<c00724c4>] (shrink_zone+0x88/0x70c) 
[<c00724c4>] (shrink_zone+0x88/0x70c) from [<c0072ff4>] (kswapd+0x34c/0x4d8) 
[<c0072ff4>] (kswapd+0x34c/0x4d8) from [<c004dcec>] (kthread+0x7c/0x84) 
[<c004dcec>] (kthread+0x7c/0x84) from [<c0025ed0>] (kernel_thread_exit+0x0/0x8) 
Mem-info: 
Normal per-cpu: 
CPU 0: hi: 42, btch: 7 usd: 36 
Active_anon:124 active_file:0 inactive_anon:129 
inactive_file:0 unevictable:8111 dirty:0 writeback:0 unstable:0 
free:431 slab:19526 mapped:408 pagetables:53 bounce:0 
Normal free:1724kB min:1396kB low:1744kB high:2092kB active_anon:496kB inactive_anon:516kB active_file:0kB inactive_file:0kB unevictable:32444kB present:121920kB pages_scanned:0 all_unreclaimable? no 
lowmem_reserve[]: 0 0 
Normal: 103*4kB 34*8kB 3*16kB 3*32kB 2*64kB 0*128kB 1*256kB 1*512kB 0*1024kB 0*2048kB 0*4096kB 0*8192kB 0*16384kB = 1724kB 
8114 total pagecache pages 
30720 pages of RAM 
547 free pages 
1204 reserved pages 
19526 slab pages 
1662 pages shared 
0 pages swap cached 
+0

Votre question est suffisamment explicite, mais pour être vraiment utile, nous pourrions utiliser un peu plus de contexte. –

Répondre

4

Les pages non-imprimables sont simplement des pages qui ne peuvent pas être renvoyées pour diverses raisons. Cela peut signifier que la page appartient à un ramdisk, a été protégée par un appel à mlock(), partagé et verrouillé, ou toute autre circonstance où le noyau a été dit «ne touchez pas». Ceci est géré par le framework LRU du noyau.

Pouvez-vous fournir plus de contexte dans le crash?

+0

Je crains que vous ne puissiez pas m'aider en ce qui concerne le crash car il a des applications personnalisées dans le noyau et l'espace utilisateur. << La page appartient à un ramdisk ... Hmmm, j'ai juste démarré une carte avec un disque RAM de 30 Mo mais je ne peux pas voir la même mémoire se situer dans une page non prévisible. – kumar