Re: uhid: broken interface: 32/64-bit compatibility

From: Andy Shevchenko
Date: Fri Feb 15 2013 - 11:40:35 EST


> Any comments?

Generic comments. Could you use *_compat instead of *_old_*?
Another idea is do not touch current interface, just append new
function and associated structure to make a smooth transition of the
userspace stuff.

What about documentation (Documentation/hid/uhid.txt)? Could you
update it acordingly?

> Subject: [PATCH] uhid: introduce new create event to fix 32/64-bit
> compatibility issue
>
> Current create event has pointer in payload. It causes problem with
> 32/64-bit compatibility. In particular it's not possible to use 32-bit
> userspace driver with 64-bit kernel.


> This patch deprecates old create event and introduce a new one. The new
> create event has padding for pointer on 32-bit system to extend pointer
> correctly.
>
> Old userspace driver binaries will use old create event. It requires
> simple recompile to switch to new one.

That's what I afraid of. Better to try to avoid any excessive
requirement to the existing userspace.

--
With Best Regards,
Andy Shevchenko
--
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/