Blackfin arch: Fix bug using usb keyboard crashes kernel
Without conswitchp preset, we have the following situation: - During initcalls: con_init is called, and returns because of !display_desc. - At this point there is no memory allocated for vc_cons[].d A bit later vty_init calls kbd_init. - From now on events are passed to kbd_event which will then call kbd_keycode. - kbd_keycode will oops on a NULL pointer dereference on vc->vc_tty Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Cc: Pekka Enberg <penberg@cs.helsinki.fi> Signed-off-by: Bryan Wu <bryan.wu@analog.com> [ Added commit description based on email thread. - Linus ] Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
8a0e665603
commit
6e537e9329
|
@ -33,7 +33,6 @@
|
||||||
#include <linux/seq_file.h>
|
#include <linux/seq_file.h>
|
||||||
#include <linux/cpu.h>
|
#include <linux/cpu.h>
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/console.h>
|
|
||||||
#include <linux/tty.h>
|
#include <linux/tty.h>
|
||||||
|
|
||||||
#include <linux/ext2_fs.h>
|
#include <linux/ext2_fs.h>
|
||||||
|
@ -175,6 +174,9 @@ void __init setup_arch(char **cmdline_p)
|
||||||
unsigned long mtd_phys = 0;
|
unsigned long mtd_phys = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef CONFIG_DUMMY_CONSOLE
|
||||||
|
conswitchp = &dummy_con;
|
||||||
|
#endif
|
||||||
cclk = get_cclk();
|
cclk = get_cclk();
|
||||||
sclk = get_sclk();
|
sclk = get_sclk();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue