On Thursday 06 January 2011, Shaohua Li wrote:
> I don't understand. adding a case statement in compat_sys_ioctl, so we will do
> compat_ioctl_check_table(). If I add COMPATIBLE_IOCTL(), then the check
> will success, we will go to the found_handler code path and execute
> do_vfs_ioctl, which is what we want. if not adding COMPATIBLE_IOCTL(),
> the check will fail, and in any case, we will go to the out_fput code
> path, so our ioctl does nothing.
You are correct, I misremembered the code and did not check properly.
> > Two more general comments:
> >
> > - You probably want to add the ioctls to file_ioctl instead of do_vfs_ioctl,
> > so you don't add another case statement to the common path.
> >
> > - I don't know if there are any rules for what should be an ioctl or an
> > fcntl, we're rather inconsistent about this. If you have found a good
> > reason for making it an ioctl, just put that into the changelog so we
> > can refer to it next time.
> it can be applied to a directory too. I thought file_ioctl or fcntl is
> for file.
Right again, good point!
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-api" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html