Messages in this thread Patch in this message | | | Date | Fri, 20 Jan 2023 11:06:35 -0500 | From | Phil Auld <> | Subject | Re: [RESEND PATCH] sched/debug: Put sched/domains files under the verbose flag |
| |
On Fri, Jan 20, 2023 at 03:52:55PM +0000 Valentin Schneider wrote: > On 19/01/23 10:07, Phil Auld wrote: > > The debug files under sched/domains can take a long time to regenerate, > > especially when updates are done one at a time. Move these files under > > the sched verbose debug flag. Allow changes to verbose to trigger > > generation of the files. This lets a user batch the updates but still > > have the information available. The detailed topology printk messages > > are also under verbose. > > > > Discussion that lead to this approach can be found in the link below. > > > > Simplified code to maintain use of debugfs bool routines suggested by > > Michael Ellerman <mpe@ellerman.id.au>. > > > > Signed-off-by: Phil Auld <pauld@redhat.com> > > Cc: Michael Ellerman <mpe@ellerman.id.au> > > Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> > > Cc: Ingo Molnar <mingo@redhat.com> > > Cc: Peter Zijlstra (Intel) <peterz@infradead.org> > > Cc: Srikar Dronamraju <srikar@linux.vnet.ibm.com> > > Cc: Valentin Schneider <vschneid@redhat.com> > > Cc: Vishal Chourasia <vishalc@linux.vnet.ibm.com> > > Cc: Vincent Guittot <vincent.guittot@linaro.org> > > Link: https://lore.kernel.org/all/Y01UWQL2y2r69sBX@li-05afa54c-330e-11b2-a85c-e3f3aa0db1e9.ibm.com/ > > Small nits below, other than that: > > Reviewed-by: Valentin Schneider <vschneid@redhat.com> > > > @@ -402,15 +440,23 @@ void update_sched_domain_debugfs(void) > > if (!debugfs_sched) > > return; > > > > + if (!sched_debug_verbose) > > + return; > > + > > if (!cpumask_available(sd_sysctl_cpus)) { > > if (!alloc_cpumask_var(&sd_sysctl_cpus, GFP_KERNEL)) > > return; > > cpumask_copy(sd_sysctl_cpus, cpu_possible_mask); > > } > > > > - if (!sd_dentry) > > + if (!sd_dentry) { > > sd_dentry = debugfs_create_dir("domains", debugfs_sched); > > > > + /* rebuild sd_sysclt_cpus if empty since it gets cleared below */ > ^^^^^^^^^^^^^^ > Nit: sd_sysctl_cpus > > > + if (cpumask_first(sd_sysctl_cpus) >= nr_cpu_ids) > > Use cpumask_empty() instead?
Heh, I didn't find that when I looked somehow :) Yes, that's what this check is doing. I'll fix these in a quick v2.
Thanks!
Cheers, Phil
> > > + cpumask_copy(sd_sysctl_cpus, cpu_online_mask); > > + } > > + > > for_each_cpu(cpu, sd_sysctl_cpus) { > > struct sched_domain *sd; > > struct dentry *d_cpu; > > -- > > 2.31.1 >
--
| |