> +static void first_cycle(unsigned long long start, unsigned long long max, struct cycle *cycle) > +{ > + cycle->start_pfn = start; recheck code, the start_pfn may need be aligned to info->pfn_cyclic, Though I don't know what will happen if not doing this. cycle->start_pfn = round(start, info->pfn_cyclic); > + cycle->end_pfn = cycle->start_pfn + info->pfn_cyclic; > + > + if (cycle->end_pfn > max) > + cycle->end_pfn = max; > +} > +