From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20541 invoked by alias); 30 Aug 2004 12:06:51 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 20532 invoked from network); 30 Aug 2004 12:06:49 -0000 Received: from unknown (HELO barry.mail.mindspring.net) (207.69.200.25) by sourceware.org with SMTP; 30 Aug 2004 12:06:49 -0000 Received: from user-119a90a.biz.mindspring.com ([66.149.36.10] helo=berman.michael-chastain.com) by barry.mail.mindspring.net with esmtp (Exim 3.33 #1) id 1C1kvv-0008D9-00; Mon, 30 Aug 2004 08:06:48 -0400 Received: from mindspring.com (localhost [127.0.0.1]) by berman.michael-chastain.com (Postfix) with SMTP id 6EB4B4B102; Mon, 30 Aug 2004 08:07:08 -0400 (EDT) Date: Mon, 30 Aug 2004 12:06:00 -0000 From: Michael Chastain To: cagney@gnu.org, gdb@sources.redhat.com Subject: Infinite loop in sigstep.exp Message-ID: <4133186C.nailO1B1RC12L@mindspring.com> User-Agent: nail 10.8 6/28/04 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-SW-Source: 2004-08/txt/msg00427.txt.bz2 I'm getting an infinite loop in the new sigstep.exp with an old gdb, gdb drow_intercu-20040221-branch. gdb.log looks like this: Breakpoint 2, handler (sig=26) at /berman/fsf/_today_/source/gdb/HEAD/src/gdb/testsuite/gdb.base/sigstep.c:31 31 done = 1; 1: x/i $pc 0x8048473 : movl $0x1,0x8049738 (gdb) stepi 32 } /* handler */ 1: x/i $pc 0x804847d : mov %ebp,%esp (gdb) stepi 0x0804847f 32 } /* handler */ 1: x/i $pc 0x804847f : pop %ebp (gdb) stepi 0x08048480 in handler (sig=1) at /berman/fsf/_today_/source/gdb/HEAD/src/gdb/testsuite/gdb.base/sigstep.c:32 32 } /* handler */ 1: x/i $pc 0x8048480 : ret (gdb) stepi Breakpoint 2, handler (sig=26) at /berman/fsf/_today_/source/gdb/HEAD/src/gdb/testsuite/gdb.base/sigstep.c:31 31 done = 1; 1: x/i $pc 0x8048473 : movl $0x1,0x8049738 Somehow, stepi off the "ret" instruction just goes back to the beginning of the function instead of stepping into ". This blows up my test bed, so I have to fix it. My first plan is to add some counters to prevent infinite loops with "exp_continue". I'm open to other ideas. Michael