lkml.org 
[lkml]   [1998]   [Oct]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectAnother 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]
\
 
 \ /
  Last update: 2005-03-22 13:44    [W:0.040 / U:0.392 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site