32bit emulation of wireless ioctls

From: Andi Kleen (ak@suse.de)
Date: Mon Feb 03 2003 - 17:46:19 EST


On Mon, Feb 03, 2003 at 01:43:25PM -0800, Jean Tourrilhes wrote:
> In this case, the degradation is quite graceful. The Wireless
> Tools just assume that the card doesn't support Wireless Extension, so
> you won't get extra stats and configuration, but you can still use the
> driver.

Ok that's good.

>
> > Of course 64bit tools exist, just the 64bit distributions are not commonly
> > available yet and it's still nice to switch at will.
>
> I believe that *BSD consider all system tools as part of the
> base OS, and is compiled alongside the kernel, so you don't have this
> issue, because kernel and tools are "in sync".

But this is not BSD...

> Anyway, I believe that 64 bit platforms will need to become
> mainstream before the issue of wireless on 64 bit is pressing, and by
> that time most distro will have made the jump.

Hmm, not so sure. I guess people will sooner than later plug wireless
cards into 64bit boxes, especially with x86-64 which will hopefully
be quite "mainstream".

>
> > > With regards to this specific problem, just return an
> > > error. The Wireless Tools should gracefully handle it and report to
> >
> > That is currently done (-EINVAL), but the emulation layer logs an
> > warning.
>
> It's just a shame that it's not more distinctive, because the
> error message wouldn't lead me to think "doh, I need a recompile".

Do you have a better suggestion?

>
> > > Just food for thought... I you think the wireless ioctls are
> > > bad, there is worse. The linux-wlan-ng driver defines it's own driver
> > > specific ioctls, and it has 3 times the number of ioctls. Just for one
> > > driver. And the ioctl format sometimes changes with revision.
> >
> > That's bad. Do they at least have unique numbers?
>
> They use the device private ioctls and subclass them. They use
> one ioctl to query the driver for support of the API.

That's very bad, because the ioctl emulation needs unique numbers currently.

There was some hack added for PPP, but it may not extend to wireless.

> Also note that I made a first step in your direction. Since
> WE-13, most of the metadata describing the ioctls is in the kernel
> itself and the copy_to/from_user is centralised, which should make
> things easier once all drivers are converted...

Anyways: for me it is just slightly annoying to not have 32bit
emulation for something, but for other ports like sparc64/ppc64/mips64
it can be show stopper because they only have 32bit userland.

Expect trouble when DaveM wants to plug a wireless card into one of
his sparc64 boxes ;-)

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



This archive was generated by hypermail 2b29 : Fri Feb 07 2003 - 22:00:13 EST