Messages in this thread | | | Subject | Re: [PATCH v2 2/5] sched/numa: Replace runnable_load_avg by load_avg | From | Valentin Schneider <> | Date | Tue, 18 Feb 2020 16:50:48 +0000 |
| |
On 18/02/2020 15:38, Mel Gorman wrote: >> >> Could we reuse group_type instead? The definitions are the same modulo >> s/group/node/. >> > > I kept the naming because there is the remote possibility that NUMA > balancing will deviate in some fashion. Right now, it's harmless. >
Since it's just a subset ATM I'd go for the reuse and change that later if shown a split is required, but fair enough.
> I didn't merge that part of the first version of my series. I was > waiting to see how the implementation for allowing a small degree of > imbalance looks like. If it's entirely confined in adjust_numa_balance ^^^^^^^^^^^^^^^^^^^ Apologies if that's a newbie question, but I'm not familiar with that one. Would that be added in your reconciliation series? I've only had a brief look at it yet (it's next on the chopping block).
> then I'll create the common helper at the same time. For now, I left the > possibility open that numa_classify would use something different than > group_is_overloaded or group_has_capacity even if I find that hard to > imagine at the moment. > >> What I'm naively thinking here is that we could have either move the whole >> thing to just sg_lb_stats (AFAICT the fields of numa_stats are a subset of it), >> or if we really care about the stack we could tweak the ordering to ensure >> we can cast one into the other (not too enticed by that one though). >> > > Yikes, no I'd rather not do that. Basically all I did before was create > a common helper like __lb_has_capacity that only took basic types as > parameters. group_has_capacity and numa_has_capacity were simple wrappers > that read the correct fields from their respective stats structures. >
That's more sensible indeed. It'd definitely be nice to actually reconcile the two balancers with these common helpers, though I guess it doesn't *have* to happen with this very patch.
| |