[Prev][Next][Index][Thread]

Re: serial GDB and UVM / sproc



Hmm.  I checked with the latest OSKit and the sample kernel
(sproc/kernel.c) worked fine with GDB.  I just changed 
the #if 0 ... #endif block in kernel.c to #if 1.

  k-abe@tigger.media.osaka-cu.ac.jp[14]% gdb ./kernel
  GNU gdb Red Hat Linux (5.1-0.71)
  Copyright 2001 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 "i386-redhat-linux"...
  (gdb) target remote /dev/ttyz1
  Remote debugging using /dev/ttyz1
  main () at kernel.c:98
  98              printf("go!\n");
  (gdb) cont
  Continuing.

If you haven't changed the sample code at all, it's weird..  
How much memory do you have on your test machine?


The following is probably another story..

I tested on VMware3.0/Linux using a virtual serial line connected to a
Linux pty, and found something was wrong.  It seemed that serial line
interrupts caused SIGINT every time I entered a gdb command "cont" so
I couldn't continue debugging at all.  VMware2.0 worked well so
something has changed in 3.0.  A temporary solution is disabling
serial line interrupts but it's not the solution..

k-abe@tigger.media.osaka-cu.ac.jp[90]% diff -c gdb_pc_com.c~ gdb_pc_com.c
*** gdb_pc_com.c~       Sat Oct 14 06:52:27 2000
--- gdb_pc_com.c        Fri Apr 12 13:48:41 2002
***************
*** 84,90 ****
        fill_irq_gate(com_irq, (unsigned)gdb_pc_com_intr, KERNEL_CS, ACC_PL_K);
  
        /* Enable the COM port interrupt.  */
!       com_cons_enable_receive_interrupt(com_port);
        pic_enable_irq(com_irq);
  #endif
  }
--- 84,90 ----
        fill_irq_gate(com_irq, (unsigned)gdb_pc_com_intr, KERNEL_CS, ACC_PL_K);
  
        /* Enable the COM port interrupt.  */
!       //com_cons_enable_receive_interrupt(com_port);
        pic_enable_irq(com_irq);
  #endif
  }

Kota

At Fri, 12 Apr 2002 11:14:21 +0000 (/etc/localtime),
Voon-Li Chung <vlchung@cs.uwa.edu.au> wrote:
> 
> I uncommented the line, and the error changes to:
> 
> UVM: kernel VA starts at 0x3000000 kernel assertion "vm" failed: file
> "../../uvm/uvm/x86/oskit_uvm_pfault.c", line 110
>  
> Tid:0x1 P:0016f6c0 Backtrace: fp=16be18
>  00115565 00105094 00125971 001116f7 _exit(1) called; rebooting...
>  
> Program exited with code 01.
> 

Follow-Ups: References: