Ingo Molnar writes:

> add include/linux/syslet.h which contains the user-space API/ABI
> declarations. Add the new header to include/linux/Kbuild as well.

> +struct syslet_uatom {
> +     unsigned long                           flags;
> +     unsigned long                           nr;
> +     long __user                             *ret_ptr;
> +     struct syslet_uatom     __user          *next;
> +     unsigned long           __user          *arg_ptr[6];
> +     /*
> +      * User-space can put anything in here, kernel will not
> +      * touch it:
> +      */
> +     void __user                             *private;
> +};

This structure, with its unsigned longs and pointers, is going to
create enormous headaches for 32-bit processes on 64-bit machines as
far as I can see---and on ppc64 machines, almost all processes are
32-bit, since there is no inherent speed penalty for running in 32-bit
mode, and some space savings.

Have you thought about how you will handle compatibility for 32-bit
processes?  The issue will arise for x86_64 and ia64 (among others)
too, I would think.

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

Reply via email to