Re: [PATCH] or51132.c: unaligned

From: Harvey Harrison
Date: Tue May 20 2008 - 20:51:44 EST


On Wed, 2008-05-21 at 01:45 +0100, Al Viro wrote:
> On Tue, May 20, 2008 at 05:41:12PM -0700, Harvey Harrison wrote:
>
> > > + return buf[0] | (buf[1] << 8);
> >
> > return get_unaligned_le16(buf);
>
> And the point of that would be?

Other than using the available helper, none.

>
> > > + firmwareAsize = le32_to_cpu(*((__le32*)fw->data));
> >
> > ???firmwareAsize = le32_to_cpup((__le32 *)fw->data);
>
> ... and the point of that would be? FWIW, I really don't like the ...p()
> forms - they are hard to distinguish from normal ones visually and any
> possible performance benefit is too small for most of the uses. IOW,
> it's mostly redundant API.

I sent a patchset getting rid of the p variants earlier today, Dave
Miller made a good point that some arches have well optimized versions
of these as they have specific machine instructions they can use.

Agreed that I don't much like them either, was thinking of adding a
u32 get_le32(__le32 *ptr) type api and get rid of the le32_to_cpup
api.

Cheers,

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/