On 17 Dec 2024, at 2:09, Ryan Roberts wrote: > On 17/12/2024 04:17, Matthew Wilcox wrote: >> On Mon, Dec 16, 2024 at 10:20:55PM +0530, Dev Jain wrote: >>> static int alloc_charge_folio(struct folio **foliop, struct mm_struct *mm, >>> - struct collapse_control *cc) >>> + int order, struct collapse_control *cc) >> >> unsigned, surely? > > I'm obviously feeling argumentative this morning... > > There are plenty of examples of order being signed and unsigned in the code > base... it's a mess. Certainly the mTHP changes up to now have opted for > (signed) int. And get_order(), which I would assume to the authority, returns > (signed) int. > > Personally I prefer int for small positive integers; it's more compact. But if > we're trying to establish a pattern to use unsigned int for all new uses of > order, that fine too, let's just document it somewhere? If unsigned is used, I wonder how to handle for (unsigned order = 9; order >= 0; order--) case. We will need a signed order to make this work, right? -- Best Regards, Yan, Zi