From owner-p4-projects Tue Apr 30 23:21:33 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7C1DF37B400; Tue, 30 Apr 2002 23:21:26 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 5980437B405 for ; Tue, 30 Apr 2002 23:21:25 -0700 (PDT) Received: (from perforce@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g416LPp84535 for perforce@freebsd.org; Tue, 30 Apr 2002 23:21:25 -0700 (PDT) (envelope-from peter@freebsd.org) Date: Tue, 30 Apr 2002 23:21:25 -0700 (PDT) Message-Id: <200205010621.g416LPp84535@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm Subject: PERFORCE change 10568 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://people.freebsd.org/~peter/p4db/chv.cgi?CH=10568 Change 10568 by peter@peter_daintree on 2002/04/30 23:20:30 It might help if we set up the kern_envp pointers etc *before* probing consoles and doing getenv(). Otherwise loader hints and variables cannot be found and only work in the static case. Affected files ... ... //depot/projects/ia64/sys/ia64/ia64/machdep.c#33 edit Differences ... ==== //depot/projects/ia64/sys/ia64/ia64/machdep.c#33 (text+ko) ==== @@ -381,7 +381,7 @@ vm_offset_t kernstartpfn, kernendpfn, pfn0, pfn1; char *p; EFI_MEMORY_DESCRIPTOR *md, *mdp; - int mdcount, i; + int mdcount, i, metadata_missing; /* NO OUTPUT ALLOWED UNTIL FURTHER NOTICE */ @@ -446,6 +446,16 @@ ia64_pal_base = mdp->PhysicalStart; } + metadata_missing = 0; + if (bootinfo.bi_modulep) + preload_metadata = (caddr_t)bootinfo.bi_modulep; + else + metadata_missing = 1; + if (envmode == 1) + kern_envp = static_env; + else + kern_envp = (caddr_t)bootinfo.bi_envp; + KASSERT(ia64_port_base != 0, ("%s: no I/O memory region", __func__)); @@ -508,13 +518,10 @@ /* But if the bootstrap tells us otherwise, believe it! */ if (bootinfo.bi_kernend) kernend = round_page(bootinfo.bi_kernend); - preload_metadata = (caddr_t)bootinfo.bi_modulep; - if (envmode == 1) - kern_envp = static_env; - else - kern_envp = (caddr_t)bootinfo.bi_envp; + if (metadata_missing) + printf("WARNING: loader(8) metadata is missing!\n"); - /* get fpswa interface */ + /* Get FPSWA interface */ fpswa_interface = (FPSWA_INTERFACE*)IA64_PHYS_TO_RR7(bootinfo.bi_fpswa); /* Init basic tunables, including hz */ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message