From owner-cvs-all Sun Oct 21 2:45:35 2001 Delivered-To: cvs-all@freebsd.org Received: from mailman.zeta.org.au (mailman.zeta.org.au [203.26.10.16]) by hub.freebsd.org (Postfix) with ESMTP id AAA8737B403; Sun, 21 Oct 2001 02:45:29 -0700 (PDT) Received: from bde.zeta.org.au (bde.zeta.org.au [203.2.228.102]) by mailman.zeta.org.au (8.9.3/8.8.7) with ESMTP id TAA17498; Sun, 21 Oct 2001 19:45:24 +1000 Date: Sun, 21 Oct 2001 19:44:31 +1000 (EST) From: Bruce Evans X-X-Sender: To: Peter Wemm Cc: Brian Somers , , Subject: Re: cvs commit: src/sys/conf Makefile.i386 In-Reply-To: <20011021071754.CF876380A@overcee.netplex.com.au> Message-ID: <20011021190723.I46880-100000@delplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Sun, 21 Oct 2001, Peter Wemm wrote: > Brian Somers wrote: > > brian 2001/10/17 06:57:32 PDT > > > > Modified files: > > sys/conf Makefile.i386 > > Log: > > Change kern.bootfile when mv'ing the kernel > ... > This is incomplete.. > what if it is the second 'make install'? This part is handled by the confusing logic. > Nothing is supposed to be using this sysctl, it's purely informational > these days, and even then it has only part of the story. The booted kernel > may not even be reachable (eg: on an EFI filesystem or pulled in via tftp). _kvm_open() still uses getbootfile() unconditionally, so it's hard to tell what uses the sysctl. getbootfile() is also used by: - savecore: doesn't use libkvm or kldsym, so it can only get the symbols from the kernel file. More fundamentally, it can't save the kernel file if the kernel file is unreachable. - syslogd: the name of the kernel file is used as a prefix. If I kept kernels in the standard place, then I would have complained about the bloatage of syslogd output caused by renaming the kernel from /kernel to /boot/${NAME_OF_MY_KERNEL}/kernel - trpt: doesn't use libkvm or kldsym. It apparently never got converted to use libkvm. - kgmon: uses libkvm, but bogusly calls getbootfile() itself instead of asking kvm_openfiles() for the default. Related problems: - gprof: needs to read the bootfile if used on kernels, since it doesn't use kldsym. The bootfile name must be specified on the command line for kernels. I normally use `sysctl -n kern.bootfile` to get it. Not-so-related problems: - kgmon: the change of the default output file name from gmon.out to .gmon has not reached here, so you have to tell gprof the gmon filename too. Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message