2004-11-16 22:41:54

by Mikulas Patocka

[permalink] [raw]
Subject: oops on boot when initializing CDROM

Hi

When booting kernel 2.4.27 on notebook with cd-rw dvd-ro drive, I get oops
on cdrom_sysctl_register+2a trying to dereference address 20.
Call stack: register_cdrom+235

gcc-3.2.3

Mikulas


Attachments:
.config (18.98 kB)
.config

2004-11-17 19:27:43

by Randy.Dunlap

[permalink] [raw]
Subject: [PATCH] oops on boot when initializing CDROM

Mikulas Patocka wrote:
> When booting kernel 2.4.27 on notebook with cd-rw dvd-ro drive, I get oops
> on cdrom_sysctl_register+2a trying to dereference address 20.
> Call stack: register_cdrom+235
>
> gcc-3.2.3

Thanks for the .config file.

with: CONFIG_SYSCTL=y, CONFIG_PROC_FS=n

Am I confused here, or is the 2.4 (and 2.6) source code confused?


diffstat:=
drivers/cdrom/cdrom.c | 2 --
1 files changed, 2 deletions(-)

Signed-off-by: Randy Dunlap <[email protected]>
--


Attachments:
cdrom_sysctl_24.patch (522.00 B)

2004-11-17 21:33:37

by Marcelo Tosatti

[permalink] [raw]
Subject: Re: [PATCH] oops on boot when initializing CDROM

On Wed, Nov 17, 2004 at 11:08:48AM -0800, Randy.Dunlap wrote:
> Mikulas Patocka wrote:
> >When booting kernel 2.4.27 on notebook with cd-rw dvd-ro drive, I get oops
> >on cdrom_sysctl_register+2a trying to dereference address 20.
> >Call stack: register_cdrom+235
> >
> >gcc-3.2.3
>
> Thanks for the .config file.
>
> with: CONFIG_SYSCTL=y, CONFIG_PROC_FS=n
>
> Am I confused here, or is the 2.4 (and 2.6) source code confused?

It seems the source is confused, ouch.

Applied, thanks Randy.

> diffstat:=
> drivers/cdrom/cdrom.c | 2 --
> 1 files changed, 2 deletions(-)
>
> Signed-off-by: Randy Dunlap <[email protected]>
> --

> diff -Naurp ./drivers/cdrom/cdrom.c~cdrom_sysctl ./drivers/cdrom/cdrom.c
> --- ./drivers/cdrom/cdrom.c~cdrom_sysctl 2003-11-28 10:26:20.000000000 -0800
> +++ ./drivers/cdrom/cdrom.c 2004-11-17 10:45:45.666804288 -0800
> @@ -2598,9 +2598,7 @@ ctl_table cdrom_cdrom_table[] = {
>
> /* Make sure that /proc/sys/dev is there */
> ctl_table cdrom_root_table[] = {
> -#ifdef CONFIG_PROC_FS
> {CTL_DEV, "dev", NULL, 0, 0555, cdrom_cdrom_table},
> -#endif /* CONFIG_PROC_FS */
> {0}
> };
> static struct ctl_table_header *cdrom_sysctl_header;