On Wed, Oct 18, 2017 at 01:43:10PM -0700, Andi Kleen wrote: > > +static int zswap_is_page_same_filled(void *ptr, unsigned long *value) > > +{ > > + unsigned int pos; > > + unsigned long *page; > > + > > + page = (unsigned long *)ptr; > > + for (pos = 1; pos < PAGE_SIZE / sizeof(*page); pos++) { > > + if (page[pos] != page[0]) > > + return 0; > > + } > > So on 32bit it checks for 32bit repeating values and on 64bit > for 64bit repeating values. Does that make sense? Yes. Every 64-bit repeating pattern is also a 32-bit repeating pattern. Supporting a 64-bit pattern on a 32-bit kernel is painful, but it makes no sense to *not* support a 64-bit pattern on a 64-bit kernel. This is the same approach used in zram, fwiw. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>