Re: [PATCH 1/6] firewire: handling of cards, buses, nodes

From: Kristian Høgsberg
Date: Mon May 07 2007 - 18:05:26 EST


Pekka Enberg wrote:
On 5/2/07, Stefan Richter <stefanr@xxxxxxxxxxxxxxxxx> wrote:
I looked around a bit with grep -R and a few search terms but didn't
find something definite. Is there any other user of a crc16_itu_t or
crc_ccitt or whatever which operates on a (CPU byte ordered) u32[]
instead of on a (network byte ordered) u8[]?

I was referring to this: http://lkml.org/lkml/2006/6/12/137

That works. If you look closely, you can see that the ITU-T table is just

crc_itu_t_table[i] = bitrev16(crc_ccitt_table[bitrev8(i)])

but that's a expensive enough operation that I think it deserves its own table. Especially if there's another driver out there that needs this.

On 5/2/07, Stefan Richter <stefanr@xxxxxxxxxxxxxxxxx> wrote:
The only value in having a shared implementation would be a potentially
smaller kernel. Sharing it to ensure correctness is not an issue;
fw-topology.c::crc16_itu_t is simply the one in IEEE 1212 table 5.
Performance is also not an issue (if better algorithms exist) because
the FireWire stack uses it only infrequently on a moderate amount of data.

Yeah, it's not a biggie, but we do have a tradition of putting
generally useful things into lib/ so that everyone doesn't invent
their own.

I'll pull in Ivo's patch and add it to the firewire branch.

thanks,
Kristian
-
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/