[PATCH] serial: ifx6x60: fix paging fault on spi_register_driver

From: Fengguang Wu
Date: Tue Aug 07 2012 - 01:12:54 EST


[ 117.240866] BUG: unable to handle kernel paging request at 815b627c
[ 117.240866] IP: [<813fe94b>] spi_register_driver+0xb/0x50
...
[ 117.240866] Call Trace:
[ 117.240866] [<817de977>] ifx_spi_init+0xbe/0xf0

The root cause is, spi_register_driver() is trying to write into the
passed *const* struct spi_driver.

Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
---
drivers/tty/serial/ifx6x60.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux.orig/drivers/tty/serial/ifx6x60.c 2012-05-24 19:03:07.408430953 +0800
+++ linux/drivers/tty/serial/ifx6x60.c 2012-08-07 12:57:05.499312357 +0800
@@ -1331,7 +1331,7 @@ static const struct spi_device_id ifx_id
MODULE_DEVICE_TABLE(spi, ifx_id_table);

/* spi operations */
-static const struct spi_driver ifx_spi_driver = {
+static struct spi_driver ifx_spi_driver = {
.driver = {
.name = DRVNAME,
.pm = &ifx_spi_pm,
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/