| Date | Fri, 28 Jun 2013 11:01:59 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH 4/8] sched: Update NUMA hinting faults once per scan |
| |
On Fri, Jun 28, 2013 at 12:02:33PM +0530, Srikar Dronamraju wrote: > * Mel Gorman <mgorman@suse.de> [2013-06-26 15:38:03]: > > @@ -831,9 +837,13 @@ void task_numa_fault(int node, int pages, bool migrated) > > if (unlikely(!p->numa_faults)) { > > int size = sizeof(*p->numa_faults) * nr_node_ids; > > > > - p->numa_faults = kzalloc(size, GFP_KERNEL); > > + /* numa_faults and numa_faults_buffer share the allocation */ > > + p->numa_faults = kzalloc(size * 2, GFP_KERNEL); > > Instead of allocating buffer to hold the current faults, cant we pass > the nr of pages and node information (and probably migrate) to > task_numa_placement()?.
I'm afraid I don't get your question; there's more storage required than just the arguments.
> Why should task_struct be passed as an argument to task_numa_placement(). > It seems it always will be current.
Customary for parts -- motivated by the fact that usage of current is/can be more expensive than passing an argument.
|