Messages in this thread Patch in this message | | | Date | Sun, 11 Oct 1998 15:35:22 +1300 | From | Slava <> | Subject | Another devfs bug |
| |
Hello everybody,
I am running a monolithic kernel 2.1.125+devfs v69. Unix98 PTY support is NOT compiled into the kernel, but /dev/ptmx appears anyway. An attempt to echo hi >/dev/ptmx gives me:
Oct 11 15:09:12 fireball kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000000 Oct 11 15:09:12 fireball kernel: current->tss.cr3 = 01f76000, ^Lr3 = 01f76000 Oct 11 15:09:12 fireball kernel: *pde = 00000000 Oct 11 15:09:12 fireball kernel: Oops: 0000 Oct 11 15:09:12 fireball kernel: CPU: 0 Oct 11 15:09:12 fireball kernel: EIP: 0010:[<c01924a3>] Oct 11 15:09:12 fireball kernel: EFLAGS: 00010246 Oct 11 15:09:12 fireball kernel: eax: 00000000 ebx: c1f2ea20 ecx: c01edcf0 edx: 00000002 Oct 11 15:09:12 fireball kernel: esi: c1a70502 edi: 00000000 ebp: c020f740 esp: c1f75ebc Oct 11 15:09:12 fireball kernel: ds: 0018 es: 0018 ss: 0018 Oct 11 15:09:12 fireball kernel: Process bash (pid: 66, process nr: 5, stackpage=c1f75000) Oct 11 15:09:12 fireball kernel: Stack: c1a72600 c1c38754 c1a70241 00000002 c19f8000 00000000 00000000 0000000a Oct 11 15:09:12 fireball kernel: 00001400 00000005 000004bf 00000a31 c0014160 c17b48c0 c014cfe0 c019302f Oct 11 15:09:12 fireball kernel: 00000502 c1f75f18 c1f2ea20 c00974e4 c1c38754 c1a72600 00000000 c17b48c0 Oct 11 15:09:12 fireball kernel: Call Trace: [<c014cfe0>] [<c019302f>] [<c0127c8e>] [<c0127f32>] [<c014c308>] [<c 0120019>] [<c012017d>] Oct 11 15:09:12 fireball kernel: [<c0107a74>] Oct 11 15:09:12 fireball kernel: Code: 8b 1c b8 83 c4 04 85 db 0f 85 2b 03 00 00 c7 44 24 3c 00 00
EIP: init_dev Call trace: devfs_follow_link tty_open open_namei open_namei devfs_open do_open sys_open system_call
This patch fixes the problem:
=========================================================================== --- tty_io.c.old Sun Oct 11 15:22:06 1998 +++ tty_io.c Sun Oct 11 15:32:10 1998 @@ -2215,7 +2215,10 @@ return kmem_start; } -static struct tty_driver dev_tty_driver, dev_syscons_driver, dev_ptmx_driver; +static struct tty_driver dev_tty_driver, dev_syscons_driver; +#ifdef CONFIG_UNIX98_PTYS +static struct dev_ptmx_driver; +#endif #ifdef CONFIG_VT static struct tty_driver dev_console_driver; #endif @@ -2267,6 +2270,7 @@ con_init_devfs(); #endif +#ifdef CONFIG_UNIX98_PTYS dev_ptmx_driver = dev_tty_driver; dev_ptmx_driver.driver_name = "/dev/ptmx"; dev_ptmx_driver.name = dev_ptmx_driver.driver_name + 5; @@ -2277,6 +2281,7 @@ if (tty_register_driver(&dev_ptmx_driver)) panic("Couldn't register /dev/ptmx driver\n"); +#endif #ifdef CONFIG_VT dev_console_driver = dev_tty_driver; =========================================================================== Slava -- Slava Pestov -- mailto:slava_pestov@geocities.com http://www.geocities.com/SiliconValley/Heights/7925 Linux 2.1.125 -- i586MMX -- 400.59 BogoMips[unhandled content-type:application/octet-stream] | |