Re: [PATCH v3 3/7] mm/lru: replace pgdat lru_lock with lruvec lock

From: Matthew Wilcox
Date: Mon Nov 18 2019 - 07:34:55 EST


On Mon, Nov 18, 2019 at 08:31:50PM +0800, Alex Shi wrote:
>
>
> å 2019/11/18 äå8:14, Matthew Wilcox åé:
> >> Hi Matthew,
> >>
> >> Thanks for comments!
> >>
> >> Here, the irqflags is bound, and belong to lruvec, merging them into together helps us to take them as whole, and thus reduce a unnecessary code clues.
> > It's not bound to the lruvec, though. Call chain A uses it and call chain
> > B doesn't. If it was always used by every call chain, I'd see your point,
> > but we have call chains which don't use it, and so it adds complexity.
>
> Where is the call chain B, please?

Every call chain that uses lock_page_lruvec_irq().

> >> As your concern for a 'new' caller, since __split_huge_page is a static helper here, no distub for anyothers.
> > Even though it's static, there may be other callers within the same file.
> > Or somebody may decide to make it non-static in the future. I think it's
> > actually clearer to keep the irqflags as a separate parameter.
> >
>
> But it's no one else using this function now. and no one get disturb, right? It's non sense to consider a 'possibility' issue.

It is not nonsense to consider the complexity of the mm! Your patch makes
it harder to understand unnecessarily. Please be considerate of the other
programmers who must build on what you have created.