lkml.org 
[lkml]   [2002]   [Sep]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: linux-2.5.36 Oops on power-down

> Unable to handle kernel NULL pointer dereference at virtual address 00000000
> 00000000
> *pde = 00000000
> Oops: 0000
> CPU: 0
> EIP: 0060: [<00000000>] Not tainted
> Using defaults from ksymoops -t elf32-i386 -a i386
> EFLAGS: 00010246
> eax: c034f808 ebx: 00000008 ecx: c034f4e0 edx: c034f4e0
> esi: c11978a0 edi: c11ed800 ebp: c034f808 esp: c362be68
> ds: 0068 es: 0068 ss: 0068
> Stack: c019b8bd c11ed800 c034f808 00000000 c11ed850 c11ed850 c11ed450
> bffffd18
> c0194db9 c11ed800 c11ed850 c019fc7d c11ed850 01234567 c362a000
> fee1dead
> c01228fb c03d7128 00000001 00000000 c139da80 00000000 00000000
> c222f464
> Call Trace: [<c019b8bd>] [<c0194db9>] [<c019fc7d>] [<c01228fb>] [<c01515ae>]
> [<c01513e2>] [<c014fb6c>] [<c013d91d>] [<c013bee9>] [<c013bf5d>]
> [<c0107493>]
> Code: Bad EIP value.
>
> >>EIP; 00000000 Before first symbol
> Trace; c019b8bd <pci_remove_one+3d/60>
> Trace; c0194db9 <pci_device_remove+19/30>
> Trace; c019fc7d <device_shutdown+4d/7e>
> Trace; c01228fb <sys_reboot+fb/280>
> Trace; c01515ae <clear_inode+e/b0>
> Trace; c01513e2 <destroy_inode+32/50>
> Trace; c014fb6c <dput+1c/160>
> Trace; c013d91d <__fput+bd/e0>
> Trace; c013bee9 <filp_close+99/b0>
> Trace; c013bf5d <sys_close+5d/70>
> Trace; c0107493 <syscall_call+7/b>

It appears that the 8250_pci serial driver needs a check for NULL when
calling the device's re-init function. Could you try the attached patch
and let us know if it works for you?

Thanks,

-pat

===== drivers/serial/8250_pci.c 1.8 vs edited =====
--- 1.8/drivers/serial/8250_pci.c Mon Jul 29 07:52:41 2002
+++ edited/drivers/serial/8250_pci.c Wed Sep 18 15:51:32 2002
@@ -771,7 +771,8 @@
for (i = 0; i < priv->nr; i++)
unregister_serial(priv->line[i]);

- priv->board->init_fn(dev, priv->board, 0);
+ if (priv->board->init_fn)
+ priv->board->init_fn(dev, priv->board, 0);

pci_disable_device(dev);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:28    [W:0.078 / U:0.380 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site