-HEAD on gxemul/MALTA is broken

Warner Losh imp at bsdimp.com
Wed Apr 17 20:39:24 UTC 2013


The code Adrian quoted is wrong: it needs to guard against NULL, which is what I just committed...

Warner
On Apr 17, 2013, at 12:13 PM, Andrew Duane wrote:

> I tripped across this doing some early Octeon work. IIRC, it has to do with the static kenv (kern_envp) not being initialized properly. I had to work around it somehow, but I'm afraid I forgot how :(
> 
>  ....................................
> Andrew L. Duane
> Resident Architect - AT&T Technical Lead
> m   +1 603.770.7088
> o    +1 408.933.6944 (2-6944)
> skype: andrewlduane
> aduane at juniper.net
> 
> 
> 
> -----Original Message-----
> From: owner-freebsd-mips at freebsd.org [mailto:owner-freebsd-mips at freebsd.org] On Behalf Of Adrian Chadd
> Sent: Wednesday, April 17, 2013 2:03 PM
> To: freebsd-mips at freebsd.org
> Subject: Re: -HEAD on gxemul/MALTA is broken
> 
> On 17 April 2013 10:49, Adrian Chadd <adrian at freebsd.org> wrote:
> 
>> gcc version 4.2.1 20070831 patched [FreeBSD] [ warning: LOW reference: 
>> vaddr=0x00000000, exception TLBL,
>> pc=0x8020f024 <init_dynamic_kenv+0x3c> ] Trap cause = 2 (TLB miss 
>> (load or instr. fetch) - kernel mode) [ thread pid 0 tid 0 ]
>> Stopped at      0x8020f024:     lb      v0,0(s2)
>> db>
> 
> (kgdb) list *0x8020f024
> 0x8020f024 is in init_dynamic_kenv
> (/usr/home/adrian/work/freebsd/svn/src/sys/kern/kern_environment.c:234).
> 229             int i;
> 230
> 231             kenvp = malloc((KENV_SIZE + 1) * sizeof(char *), M_KENV,
> 232                     M_WAITOK | M_ZERO);
> 233             i = 0;
> 234             if (*kern_envp != '\0') {
> 235                     for (cp = kern_envp; cp != NULL; cp =
> kernenv_next(cp)) {
> 236                             len = strlen(cp) + 1;
> 237                             if (len > KENV_MNAMELEN + 1 +
> KENV_MVALLEN + 1) {
> 238                                     printf(
> _______________________________________________
> freebsd-mips at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-mips
> To unsubscribe, send any mail to "freebsd-mips-unsubscribe at freebsd.org"
> 
> 
> _______________________________________________
> freebsd-mips at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-mips
> To unsubscribe, send any mail to "freebsd-mips-unsubscribe at freebsd.org"



More information about the freebsd-mips mailing list