From owner-freebsd-alpha Sat Jun 24 23:19: 8 2000 Delivered-To: freebsd-alpha@freebsd.org Received: from cara.sonn.com (cara.sonn.com [206.79.239.6]) by hub.freebsd.org (Postfix) with ESMTP id 43D9237B531 for ; Sat, 24 Jun 2000 23:19:06 -0700 (PDT) (envelope-from gersh@cara.sonn.com) Received: from localhost (gersh@localhost) by cara.sonn.com (8.9.3/8.9.3) with ESMTP id XAA15812 for ; Sat, 24 Jun 2000 23:06:57 -0700 (PDT) Date: Sat, 24 Jun 2000 23:06:56 -0700 (PDT) From: Gerry Bash To: freebsd-alpha@freebsd.org Subject: Alpha memory managment fault questions Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I have been porting some code to freebsd-alpha (4.0-RELEASE) and have encounterd what seems to be a strange alpha specfic bug. This bug seems to occor when trying at access 'uap->fname' in kern_exec.c I wrote a small sample that replicates the problem. Keep in mind that this same concept code works flawlessly on i386 (4.0-RELEASE). starting at line 139 of kern_exec.c kern_exec.c: $FreeBSD: src/sys/kern/kern_exec.c,v 1.107 2000/01/20 07:12:52 imp Exp $ -- snip -- imgp->stringp = imgp->stringbase; imgp->stringspace = ARG_MAX; imgp->image_header = imgp->stringbase + ARG_MAX; if (uap->fname) printf("len is %d\n", strlen(uap->fname)); /* * Translate the file name. namei() returns a vnode pointer * in ni_vp amoung other things. */ ndp = &nd; NDINIT(ndp, LOOKUP, LOCKLEAF | FOLLOW | SAVENAME, UIO_USERSPACE, uap->fname, p); -- snip -- This works fine up until I try to do: [root@alpha] cd /usr/src/sys.original/alpha/conf [root@alpha] config -r GENERIC at this point the machine crashes with " " which I assume to be the same as "supervisor page read, not present" on i386. I gatehered the following debuging. [root@alpha] gdb -k ./kernel.5 ./vmcore.5 GNU gdb 4.18 Copyright 1998 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "alpha-unknown-freebsd"... panic: trap #0 0xfffffc0000395a14 in boot () (kgdb) bt #0 0xfffffc0000395a14 in boot () #1 0xfffffc00003961b0 in panic () #2 0xfffffc000056d98c in trap () #3 0xfffffc000055f9cc in XentMM () at ../../alpha/alpha/exception.s:94 (kgdb) up 3 #3 0xfffffc000055f9cc in XentMM () at ../../alpha/alpha/exception.s:94 94 in ../../alpha/alpha/exception.s The machine's hardware is a Alpha 500 personal workstation. >>>show conf Firmware SRM Console: 7.0-11 ARC Console: 5.69 PALcode: VMS PALcode V1.20-14, OSF PALcode V1.22-17 SROM Version: v5.90 Does anybody have any ideas on why this code would only crash on the alpha platform and not i386 ? To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message