Re: [patch] Re: [discuss] f_ops flag to speed up compatible ioctls in linux kernel

Andi Kleen
2004-09-08T14:47:00Z

On Wed, Sep 08, 2004 at 05:28:08PM +0300, Michael S. Tsirkin wrote:
> --- linux-2.6.8.1/include/linux/fs.h 2004-09-07 19:33:43.000000000 +0300
> +++ linux-2.6.8.1-new/include/linux/fs.h 2004-09-08 07:18:20.000000000 +0300
> @@ -879,6 +879,8 @@ struct file_operations {
> int (*readdir) (struct file *, void *, filldir_t);
> unsigned int (*poll) (struct file *, struct poll_table_struct *);
> int (*ioctl) (struct inode *, struct file *, unsigned int, unsigned long);
> + int (*ioctl_native) (struct inode *, struct file *, unsigned int, unsigned long);
> + int (*ioctl_compat) (struct inode *, struct file *, unsigned int, unsigned long);

Define these as long, not int. No need to waste 32 perfectly good bits on
64bit platforms.

The main thing missing is documentation. You need clear comments what
the locking rules are and what compat is good for.

And you should change the code style to follow Documentation/CodingStyle

Other than that it looks ok to me.

-Andi