lkml.org 
[lkml]   [2011]   [Aug]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [patch v5 resending 0/8] Add slicing-by-8 to crc32
Date
> 
> > The changes to gen_crc32table.c looks random, where did this come from
> > (in v5 6/8):
> > -static uint32_t crc32table_le[4][LE_TABLE_SIZE];
> > -static uint32_t crc32table_be[4][BE_TABLE_SIZE];
> > +static uint32_t crc32table_le[4][256];
> > +static uint32_t crc32table_be[4][256];
>
> The table was declared as shown but is passed from main to output_table as
> "uint32_t table[4][256]"
>
> This causes a compiler warning because the types don't match. As it
happens
> the program prints out correct results because rows other than 0 are only
> used of the column size is 256. I interpreted LE_TABLE_SIZE as the desired
> size of the output table (which it is) and let the working table in
> gen_crc32table.c be dimensioned at 256. I suppose that one could have
> changed the dimension in output_table as well.
>

One more point I forgot when I wrote this. Output_table is used for both LE
and BE tables which could have different values for ?E_TABLE_SIZE. There is
no sensible choice for changing the declaration in output_table to try to
match the various table sizes. It is much simpler to just make the tables
"by 256" and leave it at that. Since this is a build time resource there is
no penalty for the kernel itself.



\
 
 \ /
  Last update: 2011-08-12 19:05    [W:0.053 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site