Re: [PATCH] misc drivers/net endianness noise

From: Harvey Harrison
Date: Tue May 20 2008 - 20:58:57 EST


On Wed, 2008-05-21 at 01:55 +0100, Al Viro wrote:
> On Tue, May 20, 2008 at 05:48:00PM -0700, Harvey Harrison wrote:
> > I was contemplating an api like:
> >
> > void put_le16(u16 val, __le16 *ptr)
> > {
> > *ptr = cpu_to_le16(val);
> > }
> >
> > which would allow the above to become:
> >
> > if (catc->is_f5u011)
> > put_be16(skb->len, tx_buf);
> > else
> > put_le16(skb->len, tx_buf);
> >
> > Thoughts?
>
> Do not grow API too much. Mental savings on recognizing what's done are
> offset by need to remember more helper functions...

Fair point, I was hoping to get the following family:

get_le16
put_le16

get_unaligned_le16
put_unaligned_le16

And get rid of the le16_to_cpup api.

Then the it's explicit when alignment is an issue, and the endianess is
also explicit. That and I think it just looks nicer than the existing
*p versions.

Just a thought,

Harvey

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