From: Brad H. <bh...@bi...> - 2002-07-28 08:46:51
|
On Sun, 28 Jul 2002 18:22, Vojtech Pavlik wrote: > On Sun, Jul 28, 2002 at 05:45:37PM +1000, Brad Hards wrote: <snip> > > I am not happy about the change from uint16_t to __u16, which you appear > > to have made before sending this to Linus. > > > > That is a broken change - there is a standard type, and you've changed > > it to a non-standard type. This is confusing to userspace programmers, > > and I cannot provide a satisfactory explaination for this in > > documentation. > > > > Please change it back. > > Well, I know this has been discussed back and forth. And I was right last time too :-) > __u16 is a kernel type and is defined if you #include <linux/input.h>. > uint16_t isn't. __u16 is no more a kernel type than uint16_t. It is a one line fix: include <linux/types.h> instead of <asm/types.h> Which you probably should be doing anyway, since there is no reason to rely on any assembler types in <linux/input.h> > __u* is used extensively in the input API anyway, so you'd have to > explain it to userspace programmers nevertheless. So I prefer keeping > the input.h include use just one type of explicit sized types. So do I, and it had better be a standard type. Note that the input API does *NOT* use __u* extensively. In fact if you take out the force feedback stuff (which Johannes already agreed to change:), this is the *only* _u* usage in any part of the input API. > Sure, we can change them all to uint*_t, but then do it all at once and > provide a satisfactory explanation for it. ;) I am doing it all. Johannes agreed to the change, and I did the only other required entry. If Johannes agrees, I'll do the trivial changes for force-feedback. The reason why I am not doing it all at once is to provide patches that do one API change at a time. Or, depending on how you look at it, I did the only change all-at-once, and you reverted it :) Brad -- http://conf.linux.org.au. 22-25Jan2003. Perth, Australia. Birds in Black. |