Another devfs bug

Slava (slava_pestov@geocities.com)
Sun, 11 Oct 1998 15:35:22 +1300


This is a multi-part message in MIME format.
--------------2388F0E6B49DE933346FEB91
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

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
--------------2388F0E6B49DE933346FEB91
Content-Type: application/octet-stream; name="diff"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="diff"

LS0tIHR0eV9pby5jLm9sZAlTdW4gT2N0IDExIDE1OjIyOjA2IDE5OTgKKysrIHR0eV9pby5j CVN1biBPY3QgMTEgMTU6MzI6MTAgMTk5OApAQCAtMjIxNSw3ICsyMjE1LDEwIEBACiAJcmV0 dXJuIGttZW1fc3RhcnQ7CiB9CiAKLXN0YXRpYyBzdHJ1Y3QgdHR5X2RyaXZlciBkZXZfdHR5 X2RyaXZlciwgZGV2X3N5c2NvbnNfZHJpdmVyLCBkZXZfcHRteF9kcml2ZXI7CitzdGF0aWMg c3RydWN0IHR0eV9kcml2ZXIgZGV2X3R0eV9kcml2ZXIsIGRldl9zeXNjb25zX2RyaXZlcjsK KyNpZmRlZiBDT05GSUdfVU5JWDk4X1BUWVMKK3N0YXRpYyBzdHJ1Y3QgZGV2X3B0bXhfZHJp dmVyOworI2VuZGlmCiAjaWZkZWYgQ09ORklHX1ZUCiBzdGF0aWMgc3RydWN0IHR0eV9kcml2 ZXIgZGV2X2NvbnNvbGVfZHJpdmVyOwogI2VuZGlmCkBAIC0yMjY3LDYgKzIyNzAsNyBAQAog CWNvbl9pbml0X2RldmZzKCk7CiAjZW5kaWYKIAorI2lmZGVmIENPTkZJR19VTklYOThfUFRZ UwogCWRldl9wdG14X2RyaXZlciA9IGRldl90dHlfZHJpdmVyOwogCWRldl9wdG14X2RyaXZl ci5kcml2ZXJfbmFtZSA9ICIvZGV2L3B0bXgiOwogCWRldl9wdG14X2RyaXZlci5uYW1lID0g ZGV2X3B0bXhfZHJpdmVyLmRyaXZlcl9uYW1lICsgNTsKQEAgLTIyNzcsNiArMjI4MSw3IEBA CiAKIAlpZiAodHR5X3JlZ2lzdGVyX2RyaXZlcigmZGV2X3B0bXhfZHJpdmVyKSkKIAkJcGFu aWMoIkNvdWxkbid0IHJlZ2lzdGVyIC9kZXYvcHRteCBkcml2ZXJcbiIpOworI2VuZGlmCiAK ICNpZmRlZiBDT05GSUdfVlQKIAlkZXZfY29uc29sZV9kcml2ZXIgPSBkZXZfdHR5X2RyaXZl cjsK --------------2388F0E6B49DE933346FEB91--

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