On 5/30/07, Jan Engelhardt <[EMAIL PROTECTED]> wrote:
On May 30 2007 11:24, Nitin Gupta wrote: >> >> It is the bytestream (ip) that is reinterpreted as uint16_t. >> And I really doubt that the LZO author has a big-endian machine, >> given the days of ubiquitous x86. > >> le16_to_cpu it is. > > But then why you think it should be > le_16_cpu() -- how will this make any difference? Like I said, we are reinterpreting the byte stream as a uint16_t (= reading from bytestream to CPU). While writing out an uint16_t as a bytestream is cpu_to_le16.
I didn't properly understand this. But you seem to be correct - now I ran sparse check: * using cpu_to_le16() lib/lzo1x/lzo1x_decompress.c:141:35: error: incompatible types for operation (>>) lib/lzo1x/lzo1x_decompress.c:141:35: left side has type restricted unsigned short [usertype] [force] <noident> lib/lzo1x/lzo1x_decompress.c:141:35: right side has type int lib/lzo1x/lzo1x_decompress.c:140:20: error: incompatible types for operation (-) lib/lzo1x/lzo1x_decompress.c:140:20: left side has type unsigned char *register [assigned] op lib/lzo1x/lzo1x_decompress.c:140:20: right side has type bad type lib/lzo1x/lzo1x_decompress.c:157:35: error: incompatible types for operation (>>) lib/lzo1x/lzo1x_decompress.c:157:35: left side has type restricted unsigned short [usertype] [force] <noident> lib/lzo1x/lzo1x_decompress.c:157:35: right side has type int lib/lzo1x/lzo1x_decompress.c:156:11: error: incompatible types for operation (-=) * using le16_to_cpu() lib/lzo1x/lzo1x_decompress.c:140:23: warning: cast to restricted type lib/lzo1x/lzo1x_decompress.c:156:14: warning: cast to restricted type But still, how do I get rid of these two warnings? or, do these warning suggest some real problem that still exist in code? - Nitin
> For your ref (from big_endian.h): > # define __cpu_to_le16(x) ((__force __le16)__swab16((x))) > # define __le16_to_cpu(x) __swab16((__force __u16)(__le16)(x)) Jan --
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/