256 Commits

Author SHA1 Message Date
bde
938d820d5a Fixed endless loop for `p/x *(int *)0xf0000000'. kvm_uread() in
gdb was cloned from the buggy version of kvm_uread() in libkvm and
had the same bugs.  It looped endlessly on EOF and checked errno
without setting it in the lseek() error check.  The first bug caused
gdb to loop endlessly for reads from addresses between the end of
the user area and the start of the kernel text.  kvm_uread() should
not be used for addresses beyond the end of the user area, but is
due to bugs elsewhere.
1998-01-18 13:18:55 +00:00
bde
731bdc143f Don't override FRAME_CHAIN(). If the current frame is valid, then
the previous frame is in the usual place even for traps, interrupts
and syscalls in the kernel, because the assembly language stubs
don't change the frame pointer.  The previous frame is just not for
the calling function.  We may as well depend on this as on magic to
determine the trap frame address.  The magic is in FRAME_SAVED_PC()
which elides the correct number of stubs (1) to go back to a pc that
matches the previous frame.

Removing fbsd_kern_frame_chain() fixes bugs in it.  Xsyscall was
misspelled as _Xsyscall (gdb removes one leading underscore), so
the tf_syscall frame type was never found.  This was harmless
because tf_normal works in all cases in fbsd_kern_frame_chain()
and Xsyscall is spelled correctly in fbsd_kern_frame_saved_pc()
where it matters.  There were style bugs on almost every line,
starting with a primary indent of 7.
1998-01-18 12:35:48 +00:00
bde
4c528f38b0 Fixed sloppy definitions of SIGTRAMP_START and SIGTRAMP_END. The old
range was a little too large.
1998-01-18 11:51:48 +00:00
bde
a909b80bf1 Pass the system name to dmesg. Rev.1.7 only works when the symbols in
/kernel aren't too different form those in the kernel being debugged.
1998-01-17 17:07:53 +00:00
bde
648446f969 Exec dmesg and awk to print everything in the message buffer
following "panic:" or "Fatal trap".  `panicstr' is still printed,
although it is redundant if there is a valid message buffer and
incomplete if it contains `%'s.  I think the awk command belongs
here and not in a script since a standard format with complete
messages is good for bug reports.
1997-12-19 21:37:18 +00:00
bde
21651f8398 Implemented "info float" for core files.
Implemented reading of %fs and %gs from core files.

Print weird floating point values better.  We have to convert long
doubles to doubles here because of limitations and bugs in printf()
and floatformat_to_double() (long doubles aren't really supported
and naive converion to double causes exceptions).  Conversion loses
information about weird formats (everything becomes a quiet NaN),
and printf() doesn't know about different types of NaNs anyway.
1997-11-23 09:18:18 +00:00
peter
18a6945684 #include <machine/tss.h> explicitly 1997-10-10 12:53:27 +00:00
jkh
418d0a6a92 Changes to support full make parallelism (-j<n>) in the world
target.
Reviewed by:	<many different folks>
Submitted by:	Nickolay N. Dudorov" <nnd@nnd.itfs.nsk.su>
1997-10-05 09:40:24 +00:00
bde
8efe1426a0 Support 4MB pages. 1997-07-27 18:29:04 +00:00
bde
829ef63654 Don't define HOST_DATA_START_ADDR, since gdb works without it the
previous definition doesn't work on BSD4.4Lite[2] derived systems
without the changes in rev.1.27 of kern_proc.c.
1997-07-13 14:31:54 +00:00
bde
037db6bca4 Removed -I path to gdb's readline. This didn't do much in -current
because the -I path to config/libreadline had precedence, but in
2.2 it help hide the bug that the -I path to the non-contrib
libreadline was garbage.
1997-06-30 23:10:54 +00:00
bde
793e761486 gdb.info still needs a near-copy of hsuser.texinfo to avoid the
reference to the programming manual.  Use this near-copy of the version
of hsuser.texinfo in contrib/libreadline instead of the stale near-copy
in contrib/gdb.
1997-06-30 12:57:58 +00:00
tegge
62169ef6d3 Don't depend upon the user structure having been aligned on a 8 KB boundary.
Reviewed by:	Peter Wemm <peter@spinner.dialix.com.au>
1997-06-27 15:48:22 +00:00
peter
f8783d31d5 Zap some unused debugging printfs that I accidently left in. 1997-06-27 13:39:31 +00:00
bde
e77a525556 Support reading and writing of %fs and %gs (except from core files). 1997-06-07 04:50:43 +00:00
gj
1d7bb525cf delete kcorelow.c, it didn't produce any code and broke init.c
because 2 references to _initialize_kcorelow (the other one
from kvm-fbsd.c) resulted. This prevented gdb from working correectly.

delete kcorelow.c from XSRCS in the Makefile.
1997-05-02 11:22:51 +00:00
pst
dded68c16d Clean up merge from 2.2 (without spamming peter's changes) 1997-05-01 16:24:37 +00:00
peter
ddcb5c598e Patch up init.c generation so that it works in -current.. It was trying
to use files that do not exist here.  Also, fix(?) ${.OBJDIR}/init.c hack.
1997-05-01 13:40:57 +00:00
peter
b50d8a1bfa Fix include of <sys/dir.h> to <dirent.h> - it hits a #warning 1997-05-01 13:36:35 +00:00
pst
c72be2a590 Fix up a spurious '@' I added at the last second 1997-05-01 00:26:43 +00:00
pst
efe87a3276 Merge from 2.2: auto-gen init.c and add ser-tcp.c 1997-05-01 00:18:51 +00:00
bde
d6d51045f3 Fetch the registers from struct members in the pcb instead of
punning the pcb to an array of ints and using magic indices to
access values in it.  This should prevent silent breakage from
changes in the pcb.

Supply 0 for unavailable registers instead of punning the tss to
an array of ints and using magic indices to access garbage values
in it.  (The registers are in the pcb; there is nothing interesting
in the tss.  This should change someday.  At least for dumps, all
the registers should be saved, and common_tss is a good place to
put them.)

Removed ancient wrong (disabled) method for reading eip.
1997-04-30 15:33:56 +00:00
bde
0fc596203b Backed out previous change. It just gave a more verbose Makefile by
repeating the default for MAN1.
1997-04-30 15:23:02 +00:00
gj
feaedb83b1 change kvm-fbsd.c so that kernel debugging works again.
document the -k and -wcore options in the manpage.

change Makefile to use a local copy of the manpage.
1997-04-27 21:36:49 +00:00
pst
c434eced23 Activate gdbserver and gdbreplay 1997-04-26 17:34:05 +00:00
pst
5d48e9bea2 This commit was generated by cvs2svn to compensate for changes in r25149,
which included commits to RCS files with non-trunk default branches.
1997-04-25 22:25:50 +00:00
pst
003551adee Initial import of gdbserver FreeBSD support 1997-04-25 22:25:50 +00:00
pst
42958a4686 This commit was generated by cvs2svn to compensate for changes in r25147,
which included commits to RCS files with non-trunk default branches.
1997-04-25 22:25:22 +00:00
pst
83f35e5f1f Initial import of gdbreplay build structure 1997-04-25 22:25:22 +00:00
peter
a31720765f Attempt to patch up gdb so that it has a chance of working with the new
UPAGES layout.. it was entirely too comfortable with reading and writing
the U area before.  I've changed it to use PT_GETREGS/PT_PUTREGS
ptrace ops instead of READ_U etc.  The code to read the registers from
core dumps is a bandaid at best.  It seems to have problems reading
core dumps from dynamic linked executables still, but at least static
dumps work.

I desperately need help from a gdb/bfd expert. :-)  HELP!!
1997-04-07 08:08:20 +00:00
peter
2dffd9b51d generate c-exp.c, f-exp.c and m2-exp.c with yacc rather than using
the generated ones in the gdb dist.
1997-03-29 10:33:13 +00:00
peter
34b7382753 Protect against multiple inclusion (All the CFLAGS+= items make the cc
command lines get rather long).  (bsd.lib.mk is particularly bad at this)
1997-03-29 10:29:40 +00:00
gj
794901ee27 delete the LINKS line (link gdb to kgdb) by popular demand. 1997-03-15 20:59:59 +00:00
gj
615261b3c2 add LINKS line to Makefile to automatically produce a link to kgdb
define START_PROGRESS in nm.h to check whether gdb was invoked as kgdb
and set the kernel_debugging flag in that case.

2.2 candidate ?
1997-03-12 22:34:09 +00:00
peter
245ba20d12 Revert $FreeBSD$ to $Id$ 1997-02-22 15:48:31 +00:00
bde
425611c5c7 Oops, the last commit shouldn't have removed floatformat.c. 1997-02-15 16:24:41 +00:00
bde
421db166e7 Don't use the private version of vasprintf(). It doesn't understand
"%%" in format strings and tends to dump core for "%%st".  I needed
"%%st" to fix the new gdb ...

Don't use the private version of strerror() either.

Use INTERNALLIB and INTERNALSTATICLIB instead of a private install
rules NOPROFILE and NOPIC.  This is only slightly cleaner.
INTERNALLIB was previously only used in compatibility libraries
(libgnumalloc etc.) and INTERNALSTATICLIB was previously unused.
INTERNAL*LIB probably should be replaced by something like NOSTATICO
together with NO{STATICO,PROFILE,PIC}INSTALL.
1997-02-15 16:14:52 +00:00
jkh
d4412390b5 Remove -lmalloc; it's no longer relevant.
Pointed-Out-By: jdp, dima and others.
1997-01-17 06:32:35 +00:00
ache
4980dadaa5 Simplify it using SRCDIR 1997-01-16 17:58:14 +00:00
gj
df43ee97ee Remove mmalloc since we're now using phkmalloc. This is made possible
by the -DNO_MMALLOC flag in gdb/Makefile.

The one thing we lose by doing this, AFAIK, is the possibility of using
mmap. Does anyone use that feature at all ?

2.2 candidate ?
1997-01-15 22:47:36 +00:00
gj
91c9d08b20 Changes required in directory libiberty to make gdb from the sources in
/usr/src/contrib/gdb.

This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:43:15 +00:00
gj
26dd6730dc The files in gdb/elf are now grabbed from /usr/src/contrib/gdb/include/elf.
This also applies to the last 2 commits for aout and coff. Oops !

This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:41:13 +00:00
gj
35a540ce1d The files in gdb/coff are now grabbed from /usr/src/contrib/gdb/coff.
This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:39:08 +00:00
gj
18f7dd2b5c The files in gdb/aout are now grabbed from /usr/src/contrib/gdb/aout.
This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:38:29 +00:00
gj
87b8aecea4 changes required in the gdb directory for making gdb
using the sources in /usr/src/contrib/gdb.

This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:37:09 +00:00
gj
b4283751de changes required in the doc directory for making the gdb info
files using the texi sources in /usr/src/contrib/gdb/gdb/doc.

I put a pointer to /usr/src/contrib/libreadline/doc into
Makefile.inc in the hope that the appropriate files would be
picked up.

This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:33:16 +00:00
gj
5a3eeda46b changes required in the bfd directory for making gdb
using the sources in /usr/src/contrib/gdb.

This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:28:25 +00:00
gj
d79ac17aa7 changes required in the top-level directory for making gdb
using the sources in /usr/src/contrib/gdb.

This is based on /usr/ports/devel/gdb.

2.2 candidate ?
1997-01-15 22:26:11 +00:00
jkh
808a36ef65 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
peter
b1ad1fd1a7 Fix path to readline docs, since it's now in contrib 1997-01-12 06:33:27 +00:00