From owner-freebsd-hackers Sat Mar 22 13:24:55 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id NAA01170 for hackers-outgoing; Sat, 22 Mar 1997 13:24:55 -0800 (PST) Received: from phaeton.artisoft.com (phaeton.Artisoft.COM [198.17.250.50]) by freefall.freebsd.org (8.8.5/8.8.5) with SMTP id NAA01165 for ; Sat, 22 Mar 1997 13:24:52 -0800 (PST) Received: (from terry@localhost) by phaeton.artisoft.com (8.6.11/8.6.9) id OAA19505; Sat, 22 Mar 1997 14:12:16 -0700 From: Terry Lambert Message-Id: <199703222112.OAA19505@phaeton.artisoft.com> Subject: Re: DATA_SET and SYSINIT manpages missing To: luigi@labinfo.iet.unipi.it (Luigi Rizzo) Date: Sat, 22 Mar 1997 14:12:16 -0700 (MST) Cc: hackers@freebsd.org In-Reply-To: <199703221323.OAA10666@labinfo.iet.unipi.it> from "Luigi Rizzo" at Mar 22, 97 02:23:53 pm X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk > could someone write manpages (9) for the DATA_SET and SYSINIT macros > (possibly with an example of use) ? They seem to be missing from > section 9 of the manual in 2.2-R , but they are used in almost all > device drivers and it is quite hard to figure out how they should be > used (other than by imitating an existing driver -- a Bad Thing IMHO > because one ends out writing code that he doesn't understand and might > be used by others as a model ... ) The DATA_SET stuff is probably best written by Garrett, who I believe implemented it in the first place. All it is is a set of macros to get at the GNU "linker set" abstraction without forcing the user to code in assembly language. Since linker sets were introduced for C++ constructors for virtual base classes, and similar things, it's likely that they are described in the G++/GLD documentation. I don't remember who integrated the SYSINIT stuff; I'm the one who originally wrote it. Probably the integrator would be the person to do the job (I originally wrote the LKM stuff, too, and it's mutated out of all proportion). One of the problems with it is that my initial presentation was alpha level code, but it was quickly integrated anyway. There were a lot of things in it that I would not have done in "real" code (it was more a proof of concept thing). Because it was integrated instead of commented on, I never had a chance to rev. the stuff, so whoever did the integration did a rev. (that I probably should have been tasked with) in the process. Regards, Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers.