patch-2.4.0-test11 linux/fs/devfs/base.c

Next file: linux/fs/devpts/inode.c
Previous file: linux/fs/cramfs/inode.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test10/linux/fs/devfs/base.c linux/fs/devfs/base.c
@@ -2250,7 +2250,6 @@
 	printk ("%s: read_inode(%d): VFS inode: %p  devfs_entry: %p\n",
 		DEVFS_NAME, (int) inode->i_ino, inode, de);
 #endif
-    inode->i_size = 0;
     inode->i_blocks = 0;
     inode->i_blksize = 1024;
     inode->i_op = &devfs_iops;
@@ -2416,11 +2415,6 @@
     struct devfs_entry *parent, *de;
     struct inode *inode = file->f_dentry->d_inode;
 
-    if (inode == NULL)
-    {
-	printk ("%s: readdir(): NULL inode\n", DEVFS_NAME);
-	return -EBADF;
-    }
     if ( !S_ISDIR (inode->i_mode) )
     {
 	printk ("%s: readdir(): inode is not a directory\n", DEVFS_NAME);
@@ -3185,6 +3179,7 @@
 	    current->state = TASK_RUNNING;
 	    return -EINTR;
 	}
+	set_current_state(TASK_INTERRUPTIBLE);
     }
     remove_wait_queue (&fs_info->devfsd_wait_queue, &wait);
     current->state = TASK_RUNNING;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)