Re: missing compat-ioctl for CDROM_DRIVE_STATUS + FDGETPRM

From: Arnd Bergmann
Date: Wed Jun 29 2011 - 11:37:06 EST


On Wednesday 29 June 2011, Johannes Stezenbach wrote:
> On Wed, Jun 29, 2011 at 02:51:17PM +0200, Johannes Stezenbach wrote:
> > On Wed, Jun 29, 2011 at 02:30:42PM +0200, Arnd Bergmann wrote:
> > > On Wednesday 29 June 2011, Johannes Stezenbach wrote:
> > > > Do I get it right that just adding two IGNORE_IOCTL() to
> > > > the ioctl_pointer array in linux/fs/compat_ioctl.c is sufficient,
> > > > like in commit 3f001711?
> > >
> > > Yes.
>
> Hm, it only works for CDROM_DRIVE_STATUS, but I still get
> the warning for FDGETPRM (801c0204). Could you give
> me a hint how to address this?
>
> (tested with both 2.6.39.2 and 3.0-rc5-63-g0d72c6f)

FDGETPRM is incompatible in multiple ways: it uses a different
structure and a different command number on 32 bits, because
the structure has a different size.

You will actually need to add FDGETPRM32 to fs/compat_ioctl.h.
This is locally defined in block/compat_ioctl.c, so you may have
to move the definition to include/linux/fd.h.

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/