Re: Is it a bug of ./include/linux/input.h?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Apr 13, 2006 at 05:42:17PM +0800, Aubrey wrote:
> Hi all,
> 
> I encountered a problem when I compiled an input event test program "evtest".
> The program included a kernel header file "input.h". Some parts of the
> "input.h" file:
> ==========================================================
> #ifdef __KERNEL__
> #include <linux/time.h>
> #include <linux/list.h>
> #include <linux/device.h>
> #include <linux/mod_devicetable.h>
> #else
> #include <sys/time.h>
> #include <sys/ioctl.h>
> #include <asm/types.h>
> #endif
> .............
> struct input_device_id {
> 
>         kernel_ulong_t flags;
> 
>         struct input_id id;
> 
>         kernel_ulong_t evbit[EV_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t keybit[KEY_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t relbit[REL_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t absbit[ABS_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t mscbit[MSC_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t ledbit[LED_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t sndbit[SND_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t ffbit[FF_MAX/BITS_PER_LONG+1];
>         kernel_ulong_t swbit[SW_MAX/BITS_PER_LONG+1];
> 
>         kernel_ulong_t driver_info;
> };
> ===========================================================
> The compilation error was caused by the type "kernel_ulong_t". When
> define __KERNEL__, the type "kernel_ulong_t" will be defined in the
> another header file "mod_deviceable.h".
> So, if an user space application will include the "input.h", of course
> the macro __KERNEL__ is not defined. Consequently, the application can
> not be built.
> 
> >From my point of view, since the type "kernel_ulong_t" in the struct
> input_device_id depends on the macro __KERNEL__, the struct
> input_device_id should also depend on the macro. It shouldn't expose
> to the user space.
> 
> I'd like to make a patch about it. Is it acceptable?
 
Dmitry Torokhov has already fixed that in his tree, a fix should be
available reasonably soon.

-- 
Vojtech Pavlik
Director SuSE Labs
-
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/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux