Lines Matching refs:file
19 #include <linux/file.h>
226 * "struct file" needs to be available at the right moment.
235 struct file *file;
241 file = pdeo->file;
242 pde->proc_ops->proc_release(file_inode(file), file);
275 static loff_t proc_reg_llseek(struct file *file, loff_t offset, int whence)
277 struct proc_dir_entry *pde = PDE(file_inode(file));
281 return pde->proc_ops->proc_lseek(file, offset, whence);
283 rv = pde->proc_ops->proc_lseek(file, offset, whence);
304 static ssize_t pde_read(struct proc_dir_entry *pde, struct file *file, char __user *buf, size_t count, loff_t *ppos)
308 return read(file, buf, count, ppos);
312 static ssize_t proc_reg_read(struct file *file, char __user *buf, size_t count, loff_t *ppos)
314 struct proc_dir_entry *pde = PDE(file_inode(file));
318 return pde_read(pde, file, buf, count, ppos);
320 rv = pde_read(pde, file, buf, count, ppos);
326 static ssize_t pde_write(struct proc_dir_entry *pde, struct file *file, const char __user *buf, size_t count, loff_t *ppos)
330 return write(file, buf, count, ppos);
334 static ssize_t proc_reg_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos)
336 struct proc_dir_entry *pde = PDE(file_inode(file));
340 return pde_write(pde, file, buf, count, ppos);
342 rv = pde_write(pde, file, buf, count, ppos);
348 static __poll_t pde_poll(struct proc_dir_entry *pde, struct file *file, struct poll_table_struct *pts)
352 return poll(file, pts);
356 static __poll_t proc_reg_poll(struct file *file, struct poll_table_struct *pts)
358 struct proc_dir_entry *pde = PDE(file_inode(file));
362 return pde_poll(pde, file, pts);
364 rv = pde_poll(pde, file, pts);
370 static long pde_ioctl(struct proc_dir_entry *pde, struct file *file, unsigned int cmd, unsigned long arg)
374 return ioctl(file, cmd, arg);
378 static long proc_reg_unlocked_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
380 struct proc_dir_entry *pde = PDE(file_inode(file));
384 return pde_ioctl(pde, file, cmd, arg);
386 rv = pde_ioctl(pde, file, cmd, arg);
393 static long pde_compat_ioctl(struct proc_dir_entry *pde, struct file *file, unsigned int cmd, unsigned long arg)
397 return compat_ioctl(file, cmd, arg);
401 static long proc_reg_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
403 struct proc_dir_entry *pde = PDE(file_inode(file));
406 return pde_compat_ioctl(pde, file, cmd, arg);
408 rv = pde_compat_ioctl(pde, file, cmd, arg);
415 static int pde_mmap(struct proc_dir_entry *pde, struct file *file, struct vm_area_struct *vma)
419 return mmap(file, vma);
423 static int proc_reg_mmap(struct file *file, struct vm_area_struct *vma)
425 struct proc_dir_entry *pde = PDE(file_inode(file));
429 return pde_mmap(pde, file, vma);
431 rv = pde_mmap(pde, file, vma);
438 pde_get_unmapped_area(struct proc_dir_entry *pde, struct file *file, unsigned long orig_addr,
443 return pde->proc_ops->proc_get_unmapped_area(file, orig_addr, len, pgoff, flags);
446 return mm_get_unmapped_area(current->mm, file, orig_addr, len, pgoff, flags);
453 proc_reg_get_unmapped_area(struct file *file, unsigned long orig_addr,
457 struct proc_dir_entry *pde = PDE(file_inode(file));
461 return pde_get_unmapped_area(pde, file, orig_addr, len, pgoff, flags);
463 rv = pde_get_unmapped_area(pde, file, orig_addr, len, pgoff, flags);
469 static int proc_reg_open(struct inode *inode, struct file *file)
477 file->f_mode &= ~FMODE_LSEEK;
482 rv = open(inode, file);
492 * 2) rmmod isn't blocked by opening file in /proc and sitting on
495 * Save every "struct file" with custom ->release hook.
511 rv = open(inode, file);
516 pdeo->file = file;
531 static int proc_reg_release(struct inode *inode, struct file *file)
539 return release(inode, file);
546 if (pdeo->file == file) {