patch-2.2.14 linux/fs/umsdos/inode.c
Next file: linux/fs/umsdos/ioctl.c
Previous file: linux/fs/umsdos/README-WIP.txt
Back to the patch index
Back to the overall index
- Lines: 25
- Date:
Tue Jan 4 10:12:24 2000
- Orig file:
v2.2.13/linux/fs/umsdos/inode.c
- Orig date:
Mon Aug 9 16:05:57 1999
diff -u --recursive --new-file v2.2.13/linux/fs/umsdos/inode.c linux/fs/umsdos/inode.c
@@ -168,7 +168,14 @@
} else if (S_ISBLK (inode->i_mode)) {
inode->i_op = &blkdev_inode_operations;
} else if (S_ISFIFO (inode->i_mode)) {
- init_fifo (inode);
+ /* if someone is using FIFO, we must not reinitialize it, because
+ we will destroy its locks, and sleep_on in fifo_open() will
+ hardlock/oops our kernel! this started happening with
+ patch-2.2.7. Why did it not happen before ? Maybe we were
+ never called with i_count > 1 ?
+ */
+ if (inode->i_count < 2)
+ init_fifo (inode);
}
}
@@ -349,7 +356,7 @@
if (!res)
goto out_fail;
- printk (KERN_INFO "UMSDOS 0.85 "
+ printk (KERN_INFO "UMSDOS 0.85b "
"(compatibility level %d.%d, fast msdos)\n",
UMSDOS_VERSION, UMSDOS_RELEASE);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)