BUG at rmap.c:212
Subsystems (2)
Quoted 9 lines · Rik van Riel
Quoted 6 lines · Petr Vandrovec
Quoted 1 line
Line 212 is '
pte_chain_unlock(page);' right ?Nope. On my system (2.5.29-changeset548) it is a
BUG()call which was added by akpm inrmap.crevision 1.5, in his 'AddBUG()on a can't-happen code path inpage_remove_rmap()'. It just added #elseBUG()branch to #ifdefDEBUG_RMAPconditional.
Quoted 5 lines
Quoted 2 lines
Probably because of your code did not do anything special when 'Not found. This should NEVER happen!' code path triggers.
Of course, ntpd is probably running into a different problem, but the printk's enabled with
DEBUG_RMAPshould give us some hints.
No nvidia here. Boot, start X, quit X, run updatedb, reboot... cat /proc/pidof ntpd/maps says that it has mmaped only ntpd and few libraries from /lib. I hope that printed values will have some value for you. And btw, ntpd uses some mlock*() call, it has status 'SL' in process list. Do you know how to find what memory it has locked?
Jul 31 15:38:13 vana sshd[1303]: Received signal 15; terminating. Jul 31 15:38:13 vana ntpd[1326]: ntpd exiting on signal 15 Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893098 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89309c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8930a0 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8930a4 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana wwwoffled[1311]: Exit signalled. Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893100 not present. Jul 31 15:38:13 vana wwwoffled[1311]: Exiting. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893228 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89322c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893230 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893234 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde210 dadfe210 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893238 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89323c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893240 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893260 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dec759c4 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8932d4 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893310 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: db27f1e8 dbbde2ec dadfe2ec Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893314 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: db27f1ec dbbde2f0 dadfe2f0 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89331c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: db27f1f4 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893380 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893438 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89343c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde418 dadfe418 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893448 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde424 dadfe424 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8934b0 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8934c0 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8934d0 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde4ac dadfe4ac Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8934d4 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde4b0 dadfe4b0 dfc5c3ac cddaf3ac d418c3ac ca9353ac c559a3ac Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8934ec not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde4c8 dadfe4c8 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893520 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893528 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89353c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893550 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893554 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893558 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893560 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893568 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89356c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893570 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893574 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89358c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde568 dadfe568 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893590 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dfc5c468 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893594 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dfc5c46c Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893604 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde5e0 dadfe5e0 dfc5c4dc Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893630 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde098 dadfe098 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893634 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde09c dadfe09c Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893638 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0a0 dadfe0a0 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89363c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0a4 dadfe0a4 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893640 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0a8 dadfe0a8 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893644 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0ac dadfe0ac Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893648 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0b0 dadfe0b0 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89364c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0b4 dadfe0b4 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893650 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0b8 dadfe0b8 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893654 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0bc dadfe0bc Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc893658 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0c0 dadfe0c0 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc89365c not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde0c4 dadfe0c4 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8936b0 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8936c8 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8936cc not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8936e0 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8936e8 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: dbbde150 dadfe150 Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8936f0 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:13 vana kernel: page_remove_rmap: pte_chain dc8936f4 not present. Jul 31 15:38:13 vana kernel: page_remove_rmap: only found: Jul 31 15:38:13 vana kernel: page_remove_rmap: driver cleared PG_reserved ? Jul 31 15:38:15 vana kernel: Kernel logging (proc) stopped. Jul 31 15:38:15 vana kernel: Kernel log daemon terminating.
Petr Vandrovec [email protected]
Quoted 8 lines · Petr Vandrovec
...
Quoted 5 lines
Quoted 2 lines
Probably because of your code did not do anything special when 'Not found. This should NEVER happen!' code path triggers.
Of course, ntpd is probably running into a different problem, but the printk's enabled with
DEBUG_RMAPshould give us some hints.
Quoted 5 lines
No nvidia here. Boot, start X, quit X, run updatedb, reboot... cat
/proc/pidof ntpd/maps says that it has mmaped only ntpd and few libraries from /lib. I hope that printed values will have some value for you. And btw, ntpd uses some mlock*() call, it has status 'SL' in process list. Do you know how to find what memory it has locked?
It's good that this it nice and reproducible, thanks.
Linus, can we please not have that BUG() in 2.5.30?
mm/rmap.c renamed from mm/rmap.c~no-bug +0 -2
@@ -205,8 +205,6 @@ void page_remove_rmap(struct page * page }printk ("\n" );printk (KERN_ERR "page_remove_rmap: driver cleared PG_reserved ?\n" ); -#else -BUG ();#endif out:
.