Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Sep 1997 09:30:30 -0500
From:      Jonathan Lemon <jlemon@americantv.com>
To:        Bruce Evans <bde@zeta.org.au>
Cc:        emulation@FreeBSD.ORG, hfwirth@ping.at
Subject:   Re: Doscmd, debugging with gdb
Message-ID:  <19970910093030.28970@right.PCS>
In-Reply-To: <199709100440.OAA10269@godzilla.zeta.org.au>; from Bruce Evans on Sep 09, 1997 at 02:40:45PM %2B1000
References:  <199709100440.OAA10269@godzilla.zeta.org.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sep 09, 1997 at 02:40:45PM +1000, Bruce Evans wrote:
> diff -c2 vm_map.c~ vm_map.c
> *** vm_map.c~	Mon Sep  1 18:00:38 1997
> --- vm_map.c	Wed Sep 10 14:02:48 1997
> ***************
> *** 2288,2292 ****
>   		(entry->eflags & MAP_ENTRY_COW) == 0 ||
>   		(entry->wired_count != 0)) {
> ! 		if ((fault_type & (prot)) != fault_type)
>   			RETURN(KERN_PROTECTION_FAILURE);
>   	}
> --- 2288,2293 ----
>   		(entry->eflags & MAP_ENTRY_COW) == 0 ||
>   		(entry->wired_count != 0)) {
> ! 		if ((fault_type & prot) !=
> ! 		    (fault_type & ~VM_PROT_OVERRIDE_WRITE))
>   			RETURN(KERN_PROTECTION_FAILURE);
>   	}
> 

Yup, this appears to fix the problem.  With this patch, I can 
successfully run doscmd under gdb:

    > gdb obj/doscmd
    (gdb) handle SIGBUS nostop noprint
    (gdb) add-symbol-file obj/doscmd.kernel 0
    (gdb) tbreak 96
    (gdb) r -x
    Breakpoint 1 at 0x27bb: file /home/jlemon/doscmd/doscmd_loader.c, line 96.
    (gdb) tbreak doscmd.c:main
    (gdb) c
    Breakpoint 2 at 0x1171c1: file /home/jlemon/doscmd/doscmd.c, line 112.

--
Jonathan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970910093030.28970>