page allocation failure - was passiert da?!

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
stifler
Posts: 22
Joined: 2003-09-03 15:10
Location: Kölbingen/Westerwald

page allocation failure - was passiert da?!

Post by stifler »

Servus!

Seit ca. 2 Monaten hab ich mich von einem 1&1 RootServer losgelöst und betreibe in FFM bei Tiscali vorerst einen Root-Server. Habe mich damals für Fedora Core 1 entschieden, alles sauber @ work vorinstalliert, Kernel optimiert & konfiguriert, Pakete abgespeckt, das ganze soweit secure gemacht. etc. Lief auch alles wunderbar - soweit, so gut.

Nun krieg ich in unregelmäßigen Abständen diese page allocation failure Fehlermeldungen. Selten, aber alle paar Wochen kommen sie. Natürlich läuft der Apache danach eigentlich eher garnicht als überhaupt, manchmal setzt der MySQL komplett aus, usw.

Im Logfile sieht es zu dem Zeitpunkt dann so aus:

Code: Select all

Feb 24 19:59:46 argos kernel: kswapd0: page allocation failure. order:0, mode:0x20
Feb 24 19:59:46 argos kernel: kswapd0: page allocation failure. order:0, mode:0x20
Feb 24 19:59:46 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 19:59:46 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 20:00:44 argos last message repeated 27 times
Feb 24 20:02:41 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:03:05 argos last message repeated 13 times
Feb 24 20:03:59 argos last message repeated 18 times
Feb 24 20:03:59 argos kernel: kblockd/0: page allocation failure. order:0, mode:0x20
Feb 24 20:03:59 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:04:42 argos last message repeated 12 times
Feb 24 20:05:36 argos last message repeated 57 times
Feb 24 20:05:36 argos kernel: mysqld: page allocation failure. order:0, mode:0x20
Feb 24 20:05:36 argos kernel: mysqld: page allocation failure. order:0, mode:0x20
Feb 24 20:05:36 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:06:10 argos last message repeated 11 times
Feb 24 20:07:45 argos last message repeated 12 times
Feb 24 20:09:04 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:11:22 argos last message repeated 11 times
Feb 24 20:11:55 argos last message repeated 5 times
Feb 24 20:11:55 argos kernel: swapper: palocation failure. order:0, mode:0x20
Feb 24 20:11:55 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 20:12:49 argos last message repeated 5 times
Feb 24 20:13:48 argos last message repeated 6 times
Feb 24 20:14:01 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 20:14:20 argos last message repeated 4 times
Feb 24 20:15:51 argos last message repeated 6 times
Feb 24 20:17:32 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 20:19:59 argos last message repeated 8 times
Feb 24 20:22:08 argos last message repeated 2 times
Feb 24 20:22:35 argos last message repeated 2 times
Feb 24 20:22:35 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:22:35 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:22:35 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:23:09 argos last message repeated 2 times
Feb 24 20:25:09 argos last message repeated 5 times
Feb 24 20:26:12 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:27:40 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:28:38 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:29:48 argos last message repeated 5 times
Feb 24 20:31:59 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:34:53 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:37:04 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:38:01 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:42:16 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:48:28 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:53:13 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:57:54 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 20:59:46 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:01:22 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:03:38 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:04:51 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:06:09 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:07:39 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:08:32 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:10:23 argos last message repeated 2 times
Feb 24 21:12:10 argos last message repeated 2 times
Feb 24 21:13:17 argos kernel: swapper: page allocation failure. orderfailure. order:0, mode:0x20
Feb 24 21:14:35 argos kernel: imap-login: page allocation failure. order:0, mode:0x20
Feb 24 21:15:48 argos kernel: imap-login: page allocation failure. order:0, mode:0x20
Feb 24 21:17:10 argos last message repeated 7 times
Feb 24 21:20:04 argos last message repeated 12 times
Feb 24 21:20:15 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:20:50 argos last message repeated 13 times
Feb 24 21:21:49 argos last message repeated 38 times
Feb 24 21:21:49 argos kernel: httpd: page allocure. order:0, mode:0x20
Feb 24 21:21:49 argos kernel: kjournald: page allocation failure. order:0, mode:0x20
Feb 24 21:22:53 argos last message repeated 12 times
Feb 24 21:23:44 argos last message repeated 12 times
Feb 24 21:24:58 argos last message repeated 12 times
Feb 24 21:26:50 argos last message repeated 33 times
Feb 24 21:26:50 argos kernel: kjournalrder:0, mode:0x20
Feb 24 21:26:50 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:26:50 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:28:24 argos last message repeated 12 times
Feb 24 21:29:24 argos last message repeated 12 times
Feb 24 21:31:10 argos last message repeated 13 times
Feb 24 21:31:10 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:31:10 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:31:10 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:31:10 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:32:58 argos last message repeated 9 times
Feb 24 21:38:05 argos last message repeated 2 times
Feb 24 21:38:05 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:38:05 argos kernel: swapper: page allocation failure. order:0, mode:0x20
Feb 24 21:39:31 argos last message repeated 18 times
Feb 24 21:39:31 argos kernel: swapper: page allocation failure. order:ttpd: page allocation failure. order:0, mode:0x20
Feb 24 21:39:34 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:39:43 argos last message repeated 43 times
Feb 24 21:39:43 argos kernel: confixx_counter: page allocation failure. order:0, mode:0x20
Feb 24 21:39:49 argos last message repeated 22 times
Feb 24 21:39:49 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Feb 24 21:39:56 argos last message repeated 63 times
Feb 24 21:39:56 argos kernel: kblockd/0: page allocation failure. order:0, mode:0x20
Liege ich in der Vermutung richtig, dass mir irgendwie der Arbeitsspeicher zuläuft?

technische Daten:
Athlon XP 2700+
512 MB DDR
2x80 GB S-ATA Raid1 an einem 3Ware Escalade
3Com GBit 3C940 onBoard auf Asus A7V600

OS: Fedora Core 1 mit selbstcomp. 2.6.0 Kernel (2.6 daher, da sonst die 3Com den Dienst versagte)

dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: page allocation failure - was passiert da?!

Post by dodolin »

Kann man beim Bauen das hier angeben? -> GFP_NOWARN. Dann schalt mal ein, dann sollte es weg sein. ;)

mm/page_alloc.c:

Code: Select all

nopage:
        if (!(gfp_mask & __GFP_NOWARN)) {
                printk("%s: page allocation failure."
                        " order:%d, mode:0x%xn",
                        p->comm, order, gfp_mask);
        }
        return NULL;

captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: page allocation failure - was passiert da?!

Post by captaincrunch »

Na ja, ich würde mir schon Sorgen machen, wenn mein Kernel Probleme mit dem Paging hätte...schon mal einen "aktuelleren" Kernel versucht? Ansonsten könnte die LKML ein paar Dinge dazu ausspucken, solltest du dir vielleicht einmal anschauen.

Ich hab einfach schon mal ein bisschen "vorausgewählt":
http://marc.theaimsgroup.com/?l=linux-k ... 804905&w=2
http://marc.theaimsgroup.com/?l=linux-k ... 518542&w=2

Fazit: versuch's erstmal mit dem 2.6.3er.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc

dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe

Re: page allocation failure - was passiert da?!

Post by dodolin »

In anderen Postings wurde erwähnt, dass das wohl nur Debug-Code wäre, der später irgendwann abgeschaltet wird. (Eventuell war das noch zu 2.5er Zeiten...) Und dann wurde von Fall zu Fall unterschieden, ob man da was am Kernel ändern müsste, oder eben nicht, d.h. ich hatte eher den Eindruck, dass das nicht unbedingt ein Fehler des Kernels sein "muss" - aber sein "kann".

stifler
Posts: 22
Joined: 2003-09-03 15:10
Location: Kölbingen/Westerwald

Re: page allocation failure - was passiert da?!

Post by stifler »

Hmm... mir wär's ja egal wenn es ne debug-Warnung wäre, aber mein ganzes System läuft wie ein 8086er danach. Ich schaffe es mit Müh' und Not das System zu rebooten. :?

captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: page allocation failure - was passiert da?!

Post by captaincrunch »

Tja, da hilft wohl nur ein besser funktionierender Kernel. ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc

stifler
Posts: 22
Joined: 2003-09-03 15:10
Location: Kölbingen/Westerwald

Re: page allocation failure - was passiert da?!

Post by stifler »

been there. done that.
soeben auf 2.6.3 geupdated, schaun 'mer mal was passiert.

stifler
Posts: 22
Joined: 2003-09-03 15:10
Location: Kölbingen/Westerwald

Re: page allocation failure - was passiert da?!

Post by stifler »

Hmm... jetzt lief es einigermaßen paar Tage, nun ist aber der httpd Prozess heute abend paar mal gestorben.

Code: Select all

Mar  7 19:26:47 argos kernel: httpd: page allocation failure. order:0, mode:0x20
Mar  7 19:26:47 argos kernel: Call Trace:
Mar  7 19:26:47 argos kernel:  [<c0155495>] __alloc_pages+0x325/0x3c0
Mar  7 19:26:47 argos kernel:  [<c0155555>] __get_free_pages+0x25/0x40
Mar  7 19:26:47 argos kernel:  [<c0159d2b>] cache_grow+0x12b/0x490
Mar  7 19:26:47 argos kernel:  [<c015a407>] cache_alloc_refill+0x377/0x510
Mar  7 19:26:47 argos kernel:  [<c0137c86>] update_process_times+0x46/0x60
Mar  7 19:26:47 argos kernel:  [<c015ad28>] kmem_cache_alloc+0x1e8/0x210
Mar  7 19:26:47 argos kernel:  [<c0303c9b>] __scsi_get_command+0x2b/0x180
Mar  7 19:26:47 argos kernel:  [<c0303e0d>] scsi_get_command+0x1d/0x1b0
Mar  7 19:26:47 argos kernel:  [<c02b6722>] as_dispatch_request+0x142/0x2d0
Mar  7 19:26:47 argos kernel:  [<c030c062>] scsi_prep_fn+0x142/0x1e0
Mar  7 19:26:48 argos kernel:  [<c02acbce>] elv_next_request+0x4e/0x100
Mar  7 19:26:48 argos kernel:  [<c030c14b>] scsi_request_fn+0x4b/0x7e0
Mar  7 19:26:48 argos kernel:  [<c02aec84>] blk_run_queue+0x84/0x160
Mar  7 19:26:48 argos kernel:  [<c030b64a>] scsi_end_request+0x15a/0x220
Mar  7 19:26:48 argos kernel:  [<c0382e12>] nf_hook_slow+0xd2/0x120
Mar  7 19:26:48 argos kernel:  [<c030ba4d>] scsi_io_completion+0x18d/0x520
Mar  7 19:26:48 argos kernel:  [<c0317699>] sd_rw_intr+0x89/0x310
Mar  7 19:26:48 argos kernel:  [<c0376fe3>] netif_receive_skb+0x183/0x1f0
Mar  7 19:26:48 argos kernel:  [<c0304ed5>] scsi_finish_command+0x85/0xf0
Mar  7 19:26:48 argos kernel:  [<c03770c3>] process_backlog+0x73/0x100
Mar  7 19:26:48 argos kernel:  [<c0304de6>] scsi_softirq+0xc6/0xf0
Mar  7 19:26:48 argos kernel:  [<c0132990>] do_softirq+0x90/0xa0
Mar  7 19:26:48 argos kernel:  [<c010ea86>] do_IRQ+0x206/0x340
Mar  7 19:26:48 argos kernel:  [<c010c958>] common_interrupt+0x18/0x20
Mar  7 19:26:48 argos kernel:  [<c015b17f>] kmem_cache_free+0x18f/0x370
Mar  7 19:26:48 argos kernel:  [<c0257334>] radix_tree_delete+0xd4/0xf0
Mar  7 19:26:48 argos kernel:  [<c0257334>] radix_tree_delete+0xd4/0xf0
Mar  7 19:26:48 argos kernel:  [<c0182270>] drop_buffers+0x30/0xf0
Mar  7 19:26:48 argos kernel:  [<c01823de>] try_to_free_buffers+0xae/0x200
Mar  7 19:26:48 argos kernel:  [<c014eda4>] __remove_from_page_cache+0x24/0x70
Mar  7 19:26:48 argos kernel:  [<c015f31c>] shrink_list+0x5ac/0x8d0
Mar  7 19:26:48 argos kernel:  [<c010c958>] common_interrupt+0x18/0x20
Mar  7 19:26:48 argos kernel:  [<c015db58>] __pagevec_release+0x28/0x40
Mar  7 19:26:48 argos kernel:  [<c015f860>] shrink_cache+0x220/0x5f0
Mar  7 19:26:48 argos kernel:  [<c016076f>] shrink_caches+0xaf/0xd0
Mar  7 19:26:48 argos kernel:  [<c0160831>] try_to_free_pages+0xa1/0x160
Mar  7 19:26:48 argos kernel:  [<c015536d>] __alloc_pages+0x1fd/0x3c0
Mar  7 19:26:48 argos kernel:  [<c0174b24>] read_swap_cache_async+0x104/0x120
Mar  7 19:26:48 argos kernel:  [<c0165b5b>] swapin_readahead+0x3b/0xe0
Mar  7 19:26:48 argos kernel:  [<c016600d>] do_swap_page+0x40d/0x5f0
Mar  7 19:26:48 argos kernel:  [<c016712f>] handle_mm_fault+0x10f/0x2f0
Mar  7 19:26:48 argos kernel:  [<c0123344>] do_page_fault+0x134/0x4ff
Mar  7 19:26:48 argos kernel:  [<c0125d1e>] recalc_task_prio+0x8e/0x1b0
Mar  7 19:26:48 argos kernel:  [<c010c9f5>] error_code+0x2d/0x38
... jemand an der httpd.conf interessiert, vielleicht hab ich ja da irgendwo noch 'n Fehler drin. Gibt's irgendwo eigentlich Richtlinien/Werte in Beziehung auf maxclients, etc. ?

captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: page allocation failure - was passiert da?!

Post by captaincrunch »

Du kannst dir relativ sicher sein, dass das ganze nicht durch Einstellungen des Apachen hervorgerufen wird.

Viel mehr sieht das nach einem Bug des Kernels aus, ganz spontan würde ich dabei auf den eingesetzten SCSI-Controller tippen. Hast du dazu mal die LKML bemüht? Die Jungs wären sicherlich ziemlich interessiert.

Ansonsten: was ist an Hardware verbaut?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc