drivers/net/wireless/rt2x00/rt2x00ring.h contains the following: <-- snip --> ... /* * data_desc * Each data entry also contains a descriptor which is used by the * device to determine what should be done with the packet and * what the current status is. * This structure is greatly simplified, but the descriptors * are basically a list of little endian 32 bit values. * Make the array by default 1 word big, this will allow us * to use sizeof() correctly. */ struct data_desc { __le32 word[1]; }; ... /* * TX/RX Descriptor access functions. */ static inline void rt2x00_desc_read(struct data_desc *desc, const u8 word, u32 *value) { *value = le32_to_cpu(desc->word[word]); } static inline void rt2x00_desc_write(struct data_desc *desc, const u8 word, const u32 value) { desc->word[word] = cpu_to_le32(value); } ... <-- snip --> I haven't checked whether it might work in all cases, but passing non-zero values as second parameter to rt2x00_desc_{read,write}() (as is done in many cases) is even in the best case bad coding style. Spotted by the Coverity checker. cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed - To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html