[RFCLUE2] 64 bit driver 32 bit app ioctl

From: William D Waddington
Date: Thu Mar 23 2006 - 10:03:48 EST


Apologies for dashing this off without the proper homework. My
customer is out of country doing an installation, and didn't test
this configuration first :(

Customer is running RHEL3 on a 64 bit PC. Running the 64 bit kernel
and my 64 bit driver. They are calling the driver from their 32 bit
app. The driver supports a whole mess of ioctls.

It seems that the kernel is trapping the 32-bit ioctl call and returning
an error to the app w/out calling the driver. It looks like
register_ioctl32_conversion() can convice the kernel that the driver can
handle 32-bit calls, but it has to be called for each ioctl cmd (??)

Putting aside (please) discussion of whether the kernel should presume
to hijack private ioctls, and whether I should be using the ioctl
interface at all (compatibility with app interface going back to 2.0
and SunOS) is there some way to make _one_ register call to indicate
that all my cmds are safe, or maybe an alternate ioctl entry point
that the kernel won't trap?

Yours in desperation,
Bill

--
--------------------------------------------
William D Waddington
Bainbridge Island, WA, USA
william.waddington@xxxxxxxxxx
--------------------------------------------
"Even bugs...are unexpected signposts on
the long road of creativity..." - Ken Burtch

-
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/