Re: [PATCH 01/13] [RFC] ipath basic headers

Andi Kleen
2005-12-18T03:25:35Z

ebiederm@xmission.com (Eric W. Biederman) writes:

> Christoph Hellwig <hch@infradead.org> writes:
>
> > please always used fixes-size types for user communication. also please
> > avoid ioctls like the rest of the IB codebase.
>
> Could someone please explain to me how the uverbs abuse of write
> is better that ioctl?

It's actually worse because if they have a 32bit compat issue
then ioctl can be fixed up, but read/write can't.

I wish the people arguing against ioctl all the time would
just stop that because the alternatives are usually worse.

> - 64bit compilers will not pad every structure to 8 bytes. This
> only will happen if you happen to have an 8 byte element in your
> structure that is only aligned to 32bits by a 32bit structure.
> Unfortunately the 32bit gcc only aligns long long to 32bits on
> x86, which triggers the described behavior.

Exactly - and driver writers usually don't get that right so we
need to have a tool to fix it up in the end. And with ioctl
that's easiest.

-Andi