Date: Tue, 25 Apr 95 11:15:30 GMT From: "gj%pcs.dec.com@inet-gw-1.pa.dec.com" <garyj@rks32.pcs.dec.com> To: current%freebsd.org@inet-gw-1.pa.dec.com Subject: patch to gdb Message-ID: <m0s3iaY-0005OqC@rks32.pcs.dec.com>
next in thread | raw e-mail | index | archive | help
Below are patches to add a '-w' option to gdb. This option is only effective
in conjunction with the '-k' flag.
While I was at it I added some code to show the kernel debugging options
when you do 'gdb --help'. I also did some other miscellaneous clean up.
Someone please apply these.
Thanx
Gary J.
------------------------------------ SNIP ---------------------------------
Index: main.c
===================================================================
RCS file: /u1/cvs/gdb/gdb/main.c,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 main.c
*** 1.1.1.1 1995/04/23 18:35:40
- --- main.c 1995/04/24 21:43:19
***************
*** 173,178 ****
- --- 173,180 ----
#ifdef KERNEL_DEBUG
{"kernel", no_argument, &kernel_debugging, 1},
{"k", no_argument, &kernel_debugging, 1},
+ {"wcore", no_argument, &kernel_writablecore, 1},
+ {"w", no_argument, &kernel_writablecore, 1},
#endif
/* Allow machine descriptions to add more options... */
#ifdef ADDITIONAL_OPTIONS
***************
*** 268,273 ****
- --- 270,278 ----
case 'k':
kernel_debugging = 1;
break;
+ case 'w':
+ kernel_writablecore = 1;
+ break;
#endif
#ifdef ADDITIONAL_OPTION_CASES
***************
*** 350,355 ****
- --- 355,367 ----
--mapped Use mapped symbol files if supported on this system.\n\
--readnow Fully read symbol files on first access.\n\
", gdb_stdout);
+ #ifdef KERNEL_DEBUG
+ fputs_unfiltered ("\
+ --kernel Enable kernel debugging.\n\
+ --wcore Make core file writable (only works for /dev/mem).\n\
+ This option only works while debugging a kernel !!\n\
+ ", gdb_stdout);
+ #endif /* KERNEL_DEBUGGING */
#ifdef ADDITIONAL_OPTION_HELP
fputs_unfiltered (ADDITIONAL_OPTION_HELP, gdb_stdout);
#endif
Index: kcorelow.c
===================================================================
RCS file: /u1/cvs/gdb/gdb/kcorelow.c,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 kcorelow.c
*** 1.1.1.1 1995/04/23 18:35:48
- --- kcorelow.c 1995/04/24 21:02:27
***************
*** 181,187 ****
error ("kgdb could not open the exec-file, please check the name you used !");
core_kd = kvm_open (exec_bfd->filename, filename, NULL,
! write_files? O_RDWR: O_RDONLY, "kgdb: ");
if (core_kd < 0)
perror_with_name (filename);
- --- 181,187 ----
error ("kgdb could not open the exec-file, please check the name you used !");
core_kd = kvm_open (exec_bfd->filename, filename, NULL,
! kernel_writablecore? O_RDWR: O_RDONLY, "kgdb: ");
if (core_kd < 0)
perror_with_name (filename);
Index: top.c
===================================================================
RCS file: /u1/cvs/gdb/gdb/top.c,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 top.c
*** 1.1.1.1 1995/04/23 18:35:48
- --- top.c 1995/04/24 20:59:46
***************
*** 322,327 ****
- --- 322,328 ----
#ifdef KERNEL_DEBUG
/* Non-zero means we are debugging a kernel core file */
int kernel_debugging = 0;
+ int kernel_writablecore = 0;
#endif
/* Return for reason REASON. This generally gets back to the command
Index: freebsd-nat.c
===================================================================
RCS file: /u1/cvs/gdb/gdb/freebsd-nat.c,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 freebsd-nat.c
*** 1.1.1.1 1995/04/23 18:35:38
- --- freebsd-nat.c 1995/04/24 21:25:41
***************
*** 344,352 ****
kvm_open (efile, cfile, sfile, perm, errout)
char *efile;
char *cfile;
! void *sfile;
int perm;
! int errout;
{
struct stat stb;
CORE_ADDR addr;
- --- 344,352 ----
kvm_open (efile, cfile, sfile, perm, errout)
char *efile;
char *cfile;
! char *sfile; /* makes this kvm_open more compatible to the one in libkvm */
int perm;
! char *errout; /* makes this kvm_open more compatible to the one in libkvm */
{
struct stat stb;
CORE_ADDR addr;
Index: defs.h
===================================================================
RCS file: /u1/cvs/gdb/gdb/defs.h,v
retrieving revision 1.1.1.1
diff -c -r1.1.1.1 defs.h
*** 1.1.1.1 1995/04/23 18:35:36
- --- defs.h 1995/04/24 21:05:17
***************
*** 434,439 ****
- --- 434,440 ----
#ifdef KERNEL_DEBUG
extern int kernel_debugging;
+ extern int kernel_writablecore;
#endif
/* If the xm.h file did not define the mode string used to open the
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?m0s3iaY-0005OqC>
