Re: unregister_ioctl32_conversion and modules. ioctl32 revisited.

From: Arnd Bergmann
Date: Wed Dec 15 2004 - 12:54:34 EST


On Middeweken 15 Dezember 2004 17:57, Andi Kleen wrote:
> > Do you mean it should call back
> > from its private ioctl_compat() function to the global ioctl32_hash_table[]
> > lookup?
>
> Yes.
>
> Some ioctl paths already work this way, e.g. in the block layer.

Hmm. I just had another idea. Maybe it's easier to return -ENOIOCTLCMD
from ->ioctl_compat() in order to get back to the hash lookup. How
about the change below?

Arnd <><

--- mst/fs/compat.c
+++ arnd/fs/compat.c
@@ somewhere in compat_sys_ioctl() @@
else if (filp->f_op && filp->f_op->ioctl_compat) {
error = filp->f_op->ioctl_compat(filp->f_dentry->d_inode,
filp, cmd, arg);
- goto out;
+ if (error != -ENOIOCTLCMD)
+ goto out;
}



Attachment: pgp00000.pgp
Description: signature