lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 22 Sep 2020 01:40:45 +0200 From: Frederic Weisbecker <frederic@...nel.org> To: Nitesh Narayan Lal <nitesh@...hat.com> Cc: linux-kernel@...r.kernel.org, netdev@...r.kernel.org, linux-pci@...r.kernel.org, mtosatti@...hat.com, sassmann@...hat.com, jeffrey.t.kirsher@...el.com, jacob.e.keller@...el.com, jlelli@...hat.com, hch@...radead.org, bhelgaas@...gle.com, mike.marciniszyn@...el.com, dennis.dalessandro@...el.com, thomas.lendacky@....com, jerinj@...vell.com, mathias.nyman@...el.com, jiri@...dia.com Subject: Re: [RFC][Patch v1 1/3] sched/isolation: API to get num of hosekeeping CPUs On Wed, Sep 09, 2020 at 11:08:16AM -0400, Nitesh Narayan Lal wrote: > +/* > + * num_housekeeping_cpus() - Read the number of housekeeping CPUs. > + * > + * This function returns the number of available housekeeping CPUs > + * based on __num_housekeeping_cpus which is of type atomic_t > + * and is initialized at the time of the housekeeping setup. > + */ > +unsigned int num_housekeeping_cpus(void) > +{ > + unsigned int cpus; > + > + if (static_branch_unlikely(&housekeeping_overridden)) { > + cpus = atomic_read(&__num_housekeeping_cpus); > + /* We should always have at least one housekeeping CPU */ > + BUG_ON(!cpus); > + return cpus; > + } > + return num_online_cpus(); > +} > +EXPORT_SYMBOL_GPL(num_housekeeping_cpus); > + > int housekeeping_any_cpu(enum hk_flags flags) > { > int cpu; > @@ -131,6 +153,7 @@ static int __init housekeeping_setup(char *str, enum hk_flags flags) > > housekeeping_flags |= flags; > > + atomic_set(&__num_housekeeping_cpus, cpumask_weight(housekeeping_mask)); So the problem here is that it takes the whole cpumask weight but you're only interested in the housekeepers who take the managed irq duties I guess (HK_FLAG_MANAGED_IRQ ?). > free_bootmem_cpumask_var(non_housekeeping_mask); > > return 1; > -- > 2.27.0 >
Powered by blists - more mailing lists