Date: Sat, 28 May 2011 23:06:31 -0400 From: Attilio Rao <attilio@freebsd.org> To: Andriy Gapon <avg@freebsd.org> Cc: "freebsd-current@freebsd.org" <freebsd-current@freebsd.org>, "freebsd-arch@freebsd.org" <freebsd-arch@freebsd.org> Subject: Re: [rfc] remove hlt_cpus et al sysctls and related code Message-ID: <BANLkTin4h%2BDSV4hh-AOSkif4-GBvoQHWsg@mail.gmail.com> In-Reply-To: <BANLkTikDG-XOkWdc4Ztd1tJMHW95UEErUQ@mail.gmail.com> References: <4DD3F662.9040603@FreeBSD.org> <BANLkTikOTe9ut3GFx0bhOernKandRGLhPg@mail.gmail.com> <BANLkTinVGrLoAOS_ZQ1YVB_Fw1cvf5kHyA@mail.gmail.com> <BBCD9D8C-FCAF-4DE3-9F66-4B65AAABE67B@gmail.com> <BANLkTikMZ_xs4WCJVJG4oHe3rOKU8rqfVw@mail.gmail.com> <4DD54C18.8050305@FreeBSD.org> <4DDA8B2A.6010500@FreeBSD.org> <4DDD2B34.5070702@FreeBSD.org> <BANLkTikDG-XOkWdc4Ztd1tJMHW95UEErUQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
2011/5/28 Attilio Rao <attilio@freebsd.org>: > 2011/5/25 Andriy Gapon <avg@freebsd.org>: >> on 23/05/2011 19:28 Andriy Gapon said the following: >>> I propose the following path for moving forward. >>> - use hint.lapic.X.disabled to disable individual CPUs by their APIC ID >>> - use machdep.hyperthreading_allowed tunable to disable second logical = CPU on each >>> real core >>> >>> The above should already work as expected. =C2=A0One thing is that curr= ently we have >>> handling of machdep.hyperthreading_allowed tunable under SCHED_ULE. =C2= =A0I plan to >>> make it unconditional. >>> >>> Things to remove: >>> - all the related sysctls for dynamic onlining/offlining >>> - machdep.hlt_logical_cpus tunable (it duplicates hint.lapic.X.disabled= ) >>> >>> It's possible to keep machdep.hlt_logical_cpus and just add some code t= o convert >>> hlt_logical_cpus mask to a set of individual hint.lapic.X.disabled, but= I don't >>> see very much value in that. =C2=A0But if there is a good reason to kee= p that tunable, >>> I am prepared to jump through this hoop. >>> >>> If no one objects to this proposal, I will provide a patch soon. >> >> The patch is here: >> http://people.freebsd.org/~avg/cpu-offline-sysctl.diff >> It should implement the strategy described above. >> > > I don't see the point in keeping alive mp_grab_cpu_hlt() and > supporting, actually. > > On the top of your patch I made some modifies that use directly > ap_watchdog() in cpu_idle() which I think is better for the time > being: > http://www.freebsd.org/~attilio/avg_rem_cpuhlt.diff > > If you are happy with it, just commit as long as Garrett tests that. > > On a second round of changes we can discuss mp_watchdog and eventual > removal / improvements to it. I almost forgot: this change would also require an UPDATE entry, where you explicitly mention the "new" way to deal with CPUs. Use your prefer wording. Attilio --=20 Peace can only be achieved by understanding - A. Einstein
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BANLkTin4h%2BDSV4hh-AOSkif4-GBvoQHWsg>