Subject: Re: OK to put `uname -r` in "Release:" field of "send-pr"?
To: Frederick Bruckman <fredb@immanent.net>
From: Luke Mewburn <lukem@netbsd.org>
List: tech-userlevel
Date: 10/19/2001 10:37:23
On Thu, Oct 18, 2001 at 12:28:31PM -0500, Frederick Bruckman wrote:
> Would anyone object if I change the "send-pr" Makefile to put the (build
> time) result of `uname -r` into the "send-pr" script itself? This is
> surely the right thing for releases. For current, the suggestion to put
> the date of the snapshot in that field is not uniformly adhered to
> anyway, and not all that meaningful even if it were (better to ask for
> the output of "ident" over the binary in question). After pull-up, this
> would close PR's 13938, 14104, and 14217.

I'm not sure that I see the rationale here.

I see three approaches:

1. With the current method, we get DEFAULT_RELEASE from
   gnu/usr.bin/send-pr/Makefile, which is "<NetBSD current source date>"
   for -current, and a more specific version for a release.


2. With `uname -r` at run-time, we get the kernel version of the running
   kernel, which might be newer than userland. Your userland may be
   out of date. A user could be requested (in the send-pr editor
   buffer comments?) to indicate if userland is out of sync and
   they're reporting a userland problem.

   I suspect most people usually upgrade their whole system
   eventually, rather than running on a -current kernel with
   old userland for a long time.

   Also suggesting `ident foo` output for a program (and possibly
   that of any referenced shared libraries - a tool which uses
   file(1), ldd(1), and ident(1) would be useful here) could be of
   assistance.


3. With `uname -r` at build time, we get the kernel version from that
   time of build. At best this reflects the status of the send-pr
   build.


Out of these, I'd argue for `2.' as the solution.  (Running system
`uname -r`, update the send-pr prompts to remind people about
kernel<->userland version skew)


(As a medium term project, we should ensure that we provide full
CVS version strings in kernel source files. I compile with full
debugging symbols (both kernel and userland), and for my kernels
I only get CVS ids for ipfilter, some wscons stuff, and one audio
driver. Something's not right there (IMHO)...)

Luke.

-- 
Luke Mewburn  <lukem@wasabisystems.com>  http://www.wasabisystems.com
Luke Mewburn     <lukem@netbsd.org>      http://www.netbsd.org
Wasabi Systems - NetBSD hackers for hire
NetBSD - the world's most portable UNIX-like operating system