*BSD News Article 13422


Return to BSD News archive

Newsgroups: comp.os.386bsd.bugs
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!pacbell.com!network.ucsd.edu!sdd.hp.com!nigel.msen.com!yale.edu!ira.uka.de!Germany.EU.net!gmd.de!mururoa!veit
From: veit@mururoa.gmd.de (Holger Veit)
Subject: Re: Note for syscons users with patchkit 0.2.2
Message-ID: <1993Mar26.080302.8039@gmd.de>
Sender: veit@mururoa (Holger Veit)
Nntp-Posting-Host: mururoa.gmd.de
Organization: GMD - German National Research Center for Computer Science
References: <1993Mar24.090026@axion.bt.co.uk> <1993Mar24.100324.21660@gmd.de> <JKH.93Mar25015704@whisker.lotus.ie> <C4FLy5.21p@agora.rain.com>
Date: Fri, 26 Mar 1993 08:03:02 GMT
Lines: 55

In article <C4FLy5.21p@agora.rain.com>, rgrimes@agora.rain.com (Rodney Grimes) writes:
|> jkh@whisker.lotus.ie (Jordan K. Hubbard) writes:
|> 
|> >>Is it possible to have a mechanism in the next patchkit version which reports
|> >>the current patch level by a version string and a defined symbol?
|> >>Something like the following:
|> >>
|> >> [ details deleted ]
|> 
|> >I don't see why not.  Let me look at how best to do this (I.E. "_what_ file?").
|> 
|> Humm, had some more thought's on this one.  It needs to be in an existing file,
|> otherwise if someone tries to compile the code on a stock 0.1 system with
|> an include <sys/patchlevel.h> the file won't be there and the compile well
|> fail.  

Let me think about it...
What about <sys/types.h>? From the available files, this seems to be the
one included by nearly every kernel source file. Although, I don't like the
idea to use it directly, because it might cause an extreme number of *.pl*
files as long as the current patchkit mechanism remains. So what about a
<sys/patchlevel.h> and include it by <sys/types.h>?
Other files might be possible.
Any of these solutions have the problem that the file which uses the patchid
needs to have something like
#ifndef PATCHLEVEL
#define PATCHLEVEL 0
#define PATCHID "0.0"
#endif
which I would consider ugly.
But there is another aspect: On a stock 0.1 system you shouldn't normally have a
file which needs the patchid, just for the reason, that many extensions require
certain other things in the kernel to be fixed, so a minimum patchlevel is
usually necessary.

My conclusion is: put the patchlevel id into <sys/patchlevel.h> and include this
where it is needed, making the corresponding file dependent from a certain
system status. The patchkit already has brought so many important fixes that I
doubt that anyone will try to use the stock system any longer. Maybe that someone
does not yet know of the patchkit. But then I believe that this guy won't 
know of special drivers either, and if, the failure of compilation shows that
something has gone wrong and requires additional things that were not installed
before.

Holger
 
|> Rod Grimes						rgrimes@agora.rain.com

-- 
         Dr. Holger Veit                   | INTERNET: Holger.Veit@gmd.de
|  |   / GMD-SET German National Research  | Phone: (+49) 2241 14 2448
|__|  /  Center for Computer Science       | Fax:   (+49) 2241 14 2342
|  | /   P.O. Box 13 16                    |    Three lines Signature space
|  |/    Schloss Birlinghoven              |    available for rent. Nearly
         DW-5205 St. Augustin, Germany     |    unused, good conditions