Subject: Alpha 'make build' failure
To: None <current-users@NetBSD.ORG>
From: Chad Mynhier <mynhier@cs.utk.edu>
List: current-users
Date: 03/13/1998 12:04:19
Let me preface this by saying that my Alpha wasn't picking up current
from February 18 until just yesterday. If I'm not mistaken, the UVM
stuff was added to the Alpha port during this time.
I'm getting the following error:
morpheus# pwd
/usr/src/lib/libkvm
morpheus# make
cc -O -Werror -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -DLIBC_SCCS -c kvm_alpha.c
kvm_alpha.c: In function `_kvm_kvatop':
kvm_alpha.c:100: `page_shift' undeclared (first use this function)
kvm_alpha.c:100: (Each undeclared identifier is reported only once
kvm_alpha.c:100: for each function it appears in.)
cc1: warnings being treated as errors
kvm_alpha.c:76: warning: `pteoff' might be used uninitialized in this function
*** Error code 1
Stop.
morpheus#
(The above make was done after the 'make build' failed.)
The line in question is:
99 pteoff = cpu_kh->lev1map_pa +
100 l1pte_index(va) * sizeof(alpha_pt_entry_t);
where l1pte_index() is a macro referencing PAGE_SHIFT. From
/usr/include/vm/vm_param.h:
#if defined(UVM)
#define PAGE_SIZE uvmexp.pagesize /* size of page */
#define PAGE_MASK uvmexp.pagemask /* size of page - 1 */
#define PAGE_SHIFT uvmexp.pageshift /* bits to shift for pages */
#else
#define PAGE_SIZE cnt.v_page_size /* size of page */
#define PAGE_MASK page_mask /* size of page - 1 */
#define PAGE_SHIFT page_shift /* bits to shift for pages */
#endif
#if defined(_KERNEL) && !defined(UVM)
extern vm_size_t page_mask;
extern int page_shift;
#endif
UVM isn't defined, so I'd have to guess that _KERNEL needs to be defined
to pick up the 'extern int page_shift', but I'd also guess that it shouldn't
be defined because I'm building libkvm, not a kernel.
Could someone verify what I'm thinking here and/or point out what the problem
might be?
Thanks,
Chad Mynhier