Date: Tue, 16 Nov 2010 14:41:37 +0100 From: Pawel Jakub Dawidek <pjd@FreeBSD.org> To: John Baldwin <jhb@freebsd.org> Cc: freebsd-current@freebsd.org, Andriy Gapon <avg@freebsd.org> Subject: Re: taskqueue_create() name parameter lieftime Message-ID: <20101116134137.GD1753@garage.freebsd.pl> In-Reply-To: <201011160827.11628.jhb@freebsd.org> References: <4CE2771F.8020109@freebsd.org> <201011160827.11628.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--oPmsXEqKQNHCSXW7 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Nov 16, 2010 at 08:27:11AM -0500, John Baldwin wrote: > On Tuesday, November 16, 2010 7:20:47 am Andriy Gapon wrote: > >=20 > > taskqueue_create() documentation never explicitly says this, but current > > taskqueue_create() implementation just stores a 'name' pointer parameter > > internally. Thus it depends on the 'name' having a life time encompass= ing that of > > the taskqueue. > > I think that alternatively we could have copied the name (or a portion = of it) into > > an internal buffer. > > I don't any argument for either approach, just curious which one looks = more > > preferable from general (FreeBSD, kernel) programming practices point o= f view. >=20 > Hmm, in many other places we store a separate copy (e.g. all the interrupt > code uses separate MAXCOMLEN char arrays to hold names). If that is easy= to > do, that is probably the best approach. The most friendly API would keep the name internally, but would also allow me to provide name in printf-like format, so I don't have to use sprint()/snprintf() before calling it. This unfortunatelly will change taskqueue API as name is the first argument, which makes it not worth the pain. --=20 Pawel Jakub Dawidek http://www.wheelsystems.com pjd@FreeBSD.org http://www.FreeBSD.org FreeBSD committer Am I Evil? Yes, I Am! --oPmsXEqKQNHCSXW7 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (FreeBSD) iEYEARECAAYFAkziihEACgkQForvXbEpPzTE3ACgxYxc+eVUNuGtflV+plOW3Sdb 4C0AmwYQOvFv+CRYkfNcleDxjQZLpzAF =lJer -----END PGP SIGNATURE----- --oPmsXEqKQNHCSXW7--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20101116134137.GD1753>