Hi Matthew, On 3/8/2024 2:19 AM, Matthew Wilcox wrote:
/* Align with smaller pages if needed */ if (index & ((1UL << order) - 1)) order = __ffs(index); + /* Avoid wrap */ + if (index + (1UL << order) == 0) + order--; /* Don't allocate pages past EOF */ - while (index + (1UL << order) - 1 > limit) + while (index + (1UL << order) - 1 > last)
The lockup is related with this line. When index == (last + 1), deadloop here. Regards Yin, Fengwei
order--;