Skip to contentSkip to conversation

Badness in unblank_screen at drivers/char/vt.c:2793

2.6.1-rc2-mm1 Ramon Rey Vicente 3 participants 4 messages Jan 8, 2004 – Jan 9, 2004

lore
Share & tools
lore
#0 lore raw
Signature · 3 lines
Ramón Rey Vicente       <ramon dot rey at hispalinux dot es>
        jabber ID       <rreylinux at jabber dot org>
GPG public key ID 	0xBEBD71D5 -> http://pgp.escomposlinux.org/
Jan  8 23:12:29 debian kernel: Badness in unblank_screen at drivers/char/vt.c:2793
Jan  8 23:12:29 debian kernel: Call Trace:
Jan  8 23:12:29 debian kernel:  [unblank_screen+250/288] unblank_screen+0xfa/0x120
Jan  8 23:12:29 debian kernel:  [bust_spinlocks+37/96] bust_spinlocks+0x25/0x60
Jan  8 23:12:29 debian kernel:  [die+120/224] die+0x78/0xe0
Jan  8 23:12:29 debian kernel:  [do_invalid_op+145/160] do_invalid_op+0x91/0xa0
Jan  8 23:12:29 debian kernel:  [try_to_unmap_one+456/480] try_to_unmap_one+0x1c8/0x1e0
Jan  8 23:12:29 debian kernel:  [slab_destroy+170/256] slab_destroy+0xaa/0x100
Jan  8 23:12:29 debian kernel:  [free_pages_bulk+350/640] free_pages_bulk+0x15e/0x280
Jan  8 23:12:29 debian kernel:  [free_hot_cold_page+224/256] free_hot_cold_page+0xe0/0x100
Jan  8 23:12:29 debian kernel:  [error_code+47/64] error_code+0x2f/0x40
Jan  8 23:12:29 debian kernel:  [try_to_unmap_one+456/480] try_to_unmap_one+0x1c8/0x1e0
Jan  8 23:12:29 debian kernel:  [try_to_unmap+322/384] try_to_unmap+0x142/0x180
Jan  8 23:12:29 debian kernel:  [shrink_list+579/1408] shrink_list+0x243/0x580
Jan  8 23:12:29 debian kernel:  [do_timer+197/224] do_timer+0xc5/0xe0
Jan  8 23:12:29 debian kernel:  [do_softirq+140/160] do_softirq+0x8c/0xa0
Jan  8 23:12:29 debian kernel:  [common_interrupt+24/32] common_interrupt+0x18/0x20
Jan  8 23:12:29 debian kernel:  [__pagevec_release+24/64] __pagevec_release+0x18/0x40
Jan  8 23:12:29 debian kernel:  [shrink_cache+409/864] shrink_cache+0x199/0x360
Jan  8 23:12:29 debian kernel:  [shrink_zone+107/128] shrink_zone+0x6b/0x80
Jan  8 23:12:29 debian kernel:  [balance_pgdat+359/480] balance_pgdat+0x167/0x1e0
Jan  8 23:12:29 debian kernel:  [kswapd+254/288] kswapd+0xfe/0x120
Jan  8 23:12:29 debian kernel:  [autoremove_wake_function+0/64] autoremove_wake_function+0x0/0x40
Jan  8 23:12:29 debian kernel:  [ret_from_fork+6/32] ret_from_fork+0x6/0x20
Jan  8 23:12:29 debian kernel:  [autoremove_wake_function+0/64] autoremove_wake_function+0x0/0x40
Jan  8 23:12:29 debian kernel:  [kswapd+0/288] kswapd+0x0/0x120
Jan  8 23:12:29 debian kernel:  [kernel_thread_helper+5/36] kernel_thread_helper+0x5/0x24
Jan  8 23:12:29 debian kernel: 
Jan  8 23:12:29 debian kernel:  <6>note: kswapd0[8] exited with preempt_count 1
#1 lore raw
Quoted 23 lines · Ramon Rey Vicente

...

Jan  8 23:12:29 debian kernel: Badness in unblank_screen at drivers/char/vt.c:2793
Jan  8 23:12:29 debian kernel: Call Trace:
Jan  8 23:12:29 debian kernel:  [unblank_screen+250/288] unblank_screen+0xfa/0x120
Jan  8 23:12:29 debian kernel:  [bust_spinlocks+37/96] bust_spinlocks+0x25/0x60
Jan  8 23:12:29 debian kernel:  [die+120/224] die+0x78/0xe0
Jan  8 23:12:29 debian kernel:  [do_invalid_op+145/160] do_invalid_op+0x91/0xa0
Jan  8 23:12:29 debian kernel:  [try_to_unmap_one+456/480] try_to_unmap_one+0x1c8/0x1e0
Jan  8 23:12:29 debian kernel:  [slab_destroy+170/256] slab_destroy+0xaa/0x100
Jan  8 23:12:29 debian kernel:  [free_pages_bulk+350/640] free_pages_bulk+0x15e/0x280
Jan  8 23:12:29 debian kernel:  [free_hot_cold_page+224/256] free_hot_cold_page+0xe0/0x100
Jan  8 23:12:29 debian kernel:  [error_code+47/64] error_code+0x2f/0x40
Jan  8 23:12:29 debian kernel:  [try_to_unmap_one+456/480] try_to_unmap_one+0x1c8/0x1e0
Jan  8 23:12:29 debian kernel:  [try_to_unmap+322/384] try_to_unmap+0x142/0x180
Jan  8 23:12:29 debian kernel:  [shrink_list+579/1408] shrink_list+0x243/0x580
Jan  8 23:12:29 debian kernel:  [do_timer+197/224] do_timer+0xc5/0xe0
Jan  8 23:12:29 debian kernel:  [do_softirq+140/160] do_softirq+0x8c/0xa0
Jan  8 23:12:29 debian kernel:  [common_interrupt+24/32] common_interrupt+0x18/0x20
Jan  8 23:12:29 debian kernel:  [__pagevec_release+24/64] __pagevec_release+0x18/0x40
Jan  8 23:12:29 debian kernel:  [shrink_cache+409/864] shrink_cache+0x199/0x360
Jan  8 23:12:29 debian kernel:  [shrink_zone+107/128] shrink_zone+0x6b/0x80
Jan  8 23:12:29 debian kernel:  [balance_pgdat+359/480] balance_pgdat+0x167/0x1e0
Quoted 9 lines
Jan  8 23:12:29 debian kernel:  [kswapd+254/288] kswapd+0xfe/0x120
Jan  8 23:12:29 debian kernel:  [autoremove_wake_function+0/64] autoremove_wake_function+0x0/0x40
Jan  8 23:12:29 debian kernel:  [ret_from_fork+6/32] ret_from_fork+0x6/0x20
Jan  8 23:12:29 debian kernel:  [autoremove_wake_function+0/64] autoremove_wake_function+0x0/0x40
Jan  8 23:12:29 debian kernel:  [kswapd+0/288] kswapd+0x0/0x120
Jan  8 23:12:29 debian kernel:  [kernel_thread_helper+5/36] kernel_thread_helper+0x5/0x24
Jan  8 23:12:29 debian kernel: 
Jan  8 23:12:29 debian kernel:  <6>note: kswapd0[8] exited with preempt_count 1

Ben, your debug stuff tripped up when we were oopsing. bust_spinlocks() calls unblank_screen() without console_sem. I'll change it to

	WARN_ON(!is_console_locked() && !oops_in_progress);

(Weren't you going to update that patch anyway?)

As for the oops itself: 2.6.1-rc2-mm1 VM is kaput, sorry. It works OK here without the fremap changes.

#2 lore raw
Quoted 7 lines

Ben, your debug stuff tripped up when we were oopsing. bust_spinlocks() calls unblank_screen() without console_sem. I'll change it to

	WARN_ON(!is_console_locked() && !oops_in_progress);

(Weren't you going to update that patch anyway?)

I don't have an update ready at the moment, nothing critical need updating and I was waiting to see if the WARN_ON would catch some stuffs :)

It's probably worth adding a WARN_CONSOLE_UNLOCKED() macro that does the above rather than fixing all the WARN_ON's don't you think ? If yes, then I'll do a new patch.

Quoted 2 lines

As for the oops itself: 2.6.1-rc2-mm1 VM is kaput, sorry. It works OK here without the fremap changes.

Ok.

#3 lore raw
Quoted 8 lines · Benjamin Herrenschmidt

I don't have an update ready at the moment, nothing critical need updating and I was waiting to see if the WARN_ON would catch some stuffs :)

It's probably worth adding a WARN_CONSOLE_UNLOCKED() macro that does the above rather than fixing all the WARN_ON's don't you think ? If yes, then I'll do a new patch.

I wouldn't bust a gut over it - this is the only code path which I've seen generate the warning (famous last words).