Date: Wed, 31 Jan 2007 23:19:44 +0100 From: Pawel Jakub Dawidek <pjd@FreeBSD.org> To: John Baldwin <jhb@freebsd.org> Cc: Scott Long <scottl@samsco.org>, src-committers@freebsd.org, cvs-src@freebsd.org, cvs-all@freebsd.org, arch@freebsd.org, Nate Lawson <nate@root.org> Subject: Re: cvs commit: src/sys/geom/eli g_eli.c Message-ID: <20070131221944.GD487@garage.freebsd.pl> In-Reply-To: <200701311308.16810.jhb@freebsd.org> References: <20070128202917.5B67916A5A6@hub.freebsd.org> <200701301636.38175.jhb@freebsd.org> <20070130233238.GB94650@garage.freebsd.pl> <200701311308.16810.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--a2FkP9tdjPU2nyhF Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Jan 31, 2007 at 01:08:14PM -0500, John Baldwin wrote: > [...] Anyways, maybe this=20 > issue will bubble up to someone's todo list at BSDCan to settle how to ha= ndle=20 > CPU's arriving and departing. One big thing that worries me is how to ha= ndle=20 > pinned and bound threads when a CPU goes away. Also, it may be more usef= ul=20 > to think of CPUs not as just present/not present, but more in terms of: >=20 > - not present > - present but offline > - present and online >=20 > And most code would really only care about offline/online events. We cou= ld=20 > maybe allow pinned and bound threads to still run on an offline CPU (and = the=20 > idlethread for that CPU of course) but require that there be no pinned bo= und=20 > threads to completely detach a CPU (in the case of systems with removable= =20 > CPUs). It would be useful to at least handle taking CPUs offline and the= n=20 > back online though. As a consumer of such functionality I'd like something like this: - I'd like to register myself as interested in receiving "CPU-online" and "CPU-offline" events. The EVENTHANDLER(9) KPI seems to be ok. When my registration is from a kernel module (all CPUs are already online), I'd like to still receive a fake CPU-online event for all of them. - When my CPU-online handler is called, I'd like to start my thread from there and be sure that CPU won't go offline before I return from the handler. It will be nice to be able to specify CPU ID I want to bind to in kthread_create(). This would save me from the kthread_create-sleep-wakeup dance. - When someone asks for a CPU to go offline, all CPU-offline handlers are called one by one and CPU will work (and stay online) until the last handler returns. - It'll be nice to get an error in return from sched_bind() return if CPU is going offline or is already offline. - Would be nice if there will be no need for the consumers to handle the boot CPU somehow specially. --=20 Pawel Jakub Dawidek http://www.wheel.pl pjd@FreeBSD.org http://www.FreeBSD.org FreeBSD committer Am I Evil? Yes, I Am! --a2FkP9tdjPU2nyhF Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFFwRYAForvXbEpPzQRApUxAJ9VgE0alhpkwP8dhX+0lNF+sZzX4gCeLrZ6 OFTwuTgWVa+ZA2DX1B6HDhE= =x1C6 -----END PGP SIGNATURE----- --a2FkP9tdjPU2nyhF--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070131221944.GD487>