X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=fs%2Ffile_table.c;h=24f25a057d9c131f94f1f2eb2400739958d09a95;hb=d8594d639135b500bf6010f981ea854092d54030;hp=0131ba06e1ee48bc9714805efa8b15a11a21edcc;hpb=026477c1141b67e98e3bd8bdedb7d4b88a3ecd09;p=powerpc.git diff --git a/fs/file_table.c b/fs/file_table.c index 0131ba06e1..24f25a057d 100644 --- a/fs/file_table.c +++ b/fs/file_table.c @@ -169,11 +169,12 @@ void fastcall __fput(struct file *file) if (file->f_op && file->f_op->release) file->f_op->release(inode, file); security_file_free(file); - if (unlikely(inode->i_cdev != NULL)) + if (unlikely(S_ISCHR(inode->i_mode) && inode->i_cdev != NULL)) cdev_put(inode->i_cdev); fops_put(file->f_op); if (file->f_mode & FMODE_WRITE) put_write_access(inode); + put_pid(file->f_owner.pid); file_kill(file); file->f_dentry = NULL; file->f_vfsmnt = NULL;