I don't like this at all... I feel like you're taking something which is so simple and making it so complicated. This is only used in an unusual way in do_cmd_ioctl() and do_cmdtest_ioctl(). It takes literally 5 casts (5 lines of code and a few comments) to explain what we are doing. Doing the casts actually increases the readability of the code. The whole point is that we should hide these implementation details from the driver. I don't like the k prefix at all. I don't like having two huge struct which are virtually identical but except for the __user tag. We'd have to keep them in sync and that's a nightmare. Really, it's not the right way to go. regards, dan carpenter _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel