On Tue, 22 Apr 2014, LF.Tan wrote: > Hi all > > Have these warning messages when compiling kernel. > Anyone know what's wrong? > > Regards. > ---------------------------- > In file included from mm/readahead.c:10:0: > mm/readahead.c: In function 'max_sane_readahead': > include/linux/kernel.h:713:17: warning: comparison of distinct pointer > types lacks a cast [enabled by default] > (void) (&_min1 == &_min2); \ > ^ > mm/readahead.c:242:9: note: in expansion of macro 'min' > return min(nr, MAX_READAHEAD); > ^ >
In min(nr, MAX_READAHEAD), nr is of type unsigned long and MAX_READAHEAD is of type unsigned long or int depending on the arch. This warns because of strict type-checking, otherwise the results could be unexpected when comparing unsigned long to signed long, for example. I don't think fixing this to do min_t() is the right solution since PAGE_SIZE is assumbed to be defined to be ul. Please send your arch and .config. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/