Lines Matching refs:m
56 struct svc_pool_map *m = &svc_pool_map; in param_set_pool_mode() local
62 if (m->count) in param_set_pool_mode()
142 svc_pool_map_alloc_arrays(struct svc_pool_map *m, unsigned int maxpools) in svc_pool_map_alloc_arrays() argument
144 m->to_pool = kcalloc(maxpools, sizeof(unsigned int), GFP_KERNEL); in svc_pool_map_alloc_arrays()
145 if (!m->to_pool) in svc_pool_map_alloc_arrays()
147 m->pool_to = kcalloc(maxpools, sizeof(unsigned int), GFP_KERNEL); in svc_pool_map_alloc_arrays()
148 if (!m->pool_to) in svc_pool_map_alloc_arrays()
154 kfree(m->to_pool); in svc_pool_map_alloc_arrays()
155 m->to_pool = NULL; in svc_pool_map_alloc_arrays()
165 svc_pool_map_init_percpu(struct svc_pool_map *m) in svc_pool_map_init_percpu() argument
172 err = svc_pool_map_alloc_arrays(m, maxpools); in svc_pool_map_init_percpu()
178 m->to_pool[cpu] = pidx; in svc_pool_map_init_percpu()
179 m->pool_to[pidx] = cpu; in svc_pool_map_init_percpu()
193 svc_pool_map_init_pernode(struct svc_pool_map *m) in svc_pool_map_init_pernode() argument
200 err = svc_pool_map_alloc_arrays(m, maxpools); in svc_pool_map_init_pernode()
207 m->to_pool[node] = pidx; in svc_pool_map_init_pernode()
208 m->pool_to[pidx] = node; in svc_pool_map_init_pernode()
225 struct svc_pool_map *m = &svc_pool_map; in svc_pool_map_get() local
230 if (m->count++) { in svc_pool_map_get()
232 return m->npools; in svc_pool_map_get()
235 if (m->mode == SVC_POOL_AUTO) in svc_pool_map_get()
236 m->mode = svc_pool_map_choose_mode(); in svc_pool_map_get()
238 switch (m->mode) { in svc_pool_map_get()
240 npools = svc_pool_map_init_percpu(m); in svc_pool_map_get()
243 npools = svc_pool_map_init_pernode(m); in svc_pool_map_get()
250 m->mode = SVC_POOL_GLOBAL; in svc_pool_map_get()
252 m->npools = npools; in svc_pool_map_get()
255 return m->npools; in svc_pool_map_get()
269 struct svc_pool_map *m = &svc_pool_map; in svc_pool_map_put() local
273 if (!--m->count) { in svc_pool_map_put()
274 kfree(m->to_pool); in svc_pool_map_put()
275 m->to_pool = NULL; in svc_pool_map_put()
276 kfree(m->pool_to); in svc_pool_map_put()
277 m->pool_to = NULL; in svc_pool_map_put()
278 m->npools = 0; in svc_pool_map_put()
287 const struct svc_pool_map *m = &svc_pool_map; in svc_pool_map_get_node() local
289 if (m->count) { in svc_pool_map_get_node()
290 if (m->mode == SVC_POOL_PERCPU) in svc_pool_map_get_node()
291 return cpu_to_node(m->pool_to[pidx]); in svc_pool_map_get_node()
292 if (m->mode == SVC_POOL_PERNODE) in svc_pool_map_get_node()
293 return m->pool_to[pidx]; in svc_pool_map_get_node()
304 struct svc_pool_map *m = &svc_pool_map; in svc_pool_map_set_cpumask() local
305 unsigned int node = m->pool_to[pidx]; in svc_pool_map_set_cpumask()
311 WARN_ON_ONCE(m->count == 0); in svc_pool_map_set_cpumask()
312 if (m->count == 0) in svc_pool_map_set_cpumask()
315 switch (m->mode) { in svc_pool_map_set_cpumask()
337 struct svc_pool_map *m = &svc_pool_map; in svc_pool_for_cpu() local
346 switch (m->mode) { in svc_pool_for_cpu()
348 pidx = m->to_pool[cpu]; in svc_pool_for_cpu()
351 pidx = m->to_pool[cpu_to_node(cpu)]; in svc_pool_for_cpu()