Re: [PATCH v2 5/5] staging: lustre: headers: use proper byteorder functions in lustre_idl.h

From: Greg Kroah-Hartman
Date: Mon Dec 12 2016 - 19:37:22 EST


On Mon, Dec 12, 2016 at 08:00:02PM +0000, James Simmons wrote:
>
> > On Sat, Dec 10, 2016 at 01:06:01PM -0500, James Simmons wrote:
> > > In order for lustre_idl.h to be usable for both user
> > > land and kernel space it has to use the proper
> > > byteorder functions.
> >
> > Why would userspace need/want all of these inline functions? A uapi
> > header file should just have a the structures that are passed
> > user/kernel and any needed ioctls. Why would they ever care about
> > strange byte flip functions and a ton of inline functions?
> >
> > I don't think this is needed, of if it is, I really don't want to see
> > your crazy userspace code...
>
> Sigh. More cleanups were done based on the idea this was okay. The reason
> this was does was when you look at the headers in include/uapi/linux you
> see a huge number of headers containing a bunch of inline function. To
> an outside project looking to merge their work into the kernel they would
> think this is okay. Hopefully all those broken headers will be cleaned
> up in the near future. Alright I will look to fixing up our tools to
> handle this requirement.

But why do you need this type of stuff at all for your userspace code?
Why do they need these "complex" inline functions? That implies that
there is duplicated logic on both sides of the user/kernel boundry,
shouldn't that be resolved somehow?

thanks,

greg k-h