[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] xen/sched: remove sched_init_pdata()

On Mon, 2020-02-10 at 16:39 +0100, Juergen Gross wrote:
> sched_init_pdata() is used nowhere, it can be removed. Same applies
> to
> the .init_pdata hook of the per-scheduler interface.
Right, and that appear to be the case since
f855dd962523b6cb47a92037bdd28b1485141abe ("sched: add minimalistic idle
scheduler for free cpus"), which removed all call sites.

And that is because switching to a scheduler always happens via
switch_sched from the idle scheduler, and it's there that we do all the
initializations, right?

This change is obviously doing the right thing, removing code that is
never called! :-)

Can we, though:
- add a mention to the commit above and a quick explanation of things 
  in the changelog?
- update the following comments too:
  1) in cpu_schedule_callback()

"* This happens by calling the deinit_pdata and free_pdata hooks, in this       
 * order. If no per-pCPU memory was allocated, there is no need to              
 * provide an implementation of free_pdata. deinit_pdata may, however,          
 * be necessary/useful in this case too (e.g., it can undo something done       
 * on scheduler wide data structure during init_pdata). Both deinit_pdata       
 * and free_pdata are called during CPU_DEAD."

  2) schedule_cpu_add()

"*  - a valid instance of per-CPU scheduler specific data, as it is
 *    allocated by sched_alloc_pdata(). Note that we do not want to
 *    initialize it yet (i.e., we are not calling sched_init_pdata()).
 *    That will be done by the target scheduler, in sched_switch_sched(),
 *    in proper ordering and with locking."

Dario Faggioli, Ph.D
Virtualization Software Engineer
SUSE Labs, SUSE https://www.suse.com/
<<This happens because _I_ choose it to happen!>> (Raistlin Majere)

Attachment: signature.asc
Description: This is a digitally signed message part

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.