From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Vladimir Ulyanov Newsgroups: gmane.emacs.help Subject: 'error in process filter: Variable binding depth exceeds max-specpdl-size' on gdb-display-memory-buffer Date: Mon, 29 Oct 2012 14:54:34 +0200 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: ger.gmane.org 1351526283 14935 80.91.229.3 (29 Oct 2012 15:58:03 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 29 Oct 2012 15:58:03 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Oct 29 16:58:11 2012 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TSrj9-0005pG-EE for geh-help-gnu-emacs@m.gmane.org; Mon, 29 Oct 2012 16:58:11 +0100 Original-Received: from localhost ([::1]:59776 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TSrj1-0005wU-Co for geh-help-gnu-emacs@m.gmane.org; Mon, 29 Oct 2012 11:58:03 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:49656) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TSord-0004R5-Ak for help-gnu-emacs@gnu.org; Mon, 29 Oct 2012 08:54:51 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TSorX-0001Ep-AW for help-gnu-emacs@gnu.org; Mon, 29 Oct 2012 08:54:45 -0400 Original-Received: from mail-oa0-f41.google.com ([209.85.219.41]:43022) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TSorX-0001Ej-5w for help-gnu-emacs@gnu.org; Mon, 29 Oct 2012 08:54:39 -0400 Original-Received: by mail-oa0-f41.google.com with SMTP id k14so5292372oag.0 for ; Mon, 29 Oct 2012 05:54:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=ykAH0FSzvJGxveRgDEJQIo8LA98w5R5SrbJBX2mBeb4=; b=lmDQ2zfuyuYdSzpBtH1ZwnafyESATs9CHIcEfzAnuWceNdaw+TWGVL/CoygFKurksK xmbJAJheoJiJ3ggbUGBnikUTs7+3eq46l90PbDyJ9bnFI+KNouJbiQ4ICQEak1KKZfg5 ACZ7LawDleOPuwL3HR6tomFMaMqD3fOhOugULmGHsdAa1TnBkF7iljxPT7tRDemWwzHP 4Y9Ahe1W4CFMgX0HOEo5pMl4xWdTa1vVm2MwybWIEhidreqv+beEsdTfCv9ai31zsG0k BLoI2Qs6MnxWlPS7Uyz7AuW2k8VmwgGud68o6s55vUrM9zcu8ISPqDmeGy+8vLG0UDO/ Kegg== Original-Received: by 10.60.21.193 with SMTP id x1mr18856615oee.142.1351515274815; Mon, 29 Oct 2012 05:54:34 -0700 (PDT) Original-Received: by 10.182.124.3 with HTTP; Mon, 29 Oct 2012 05:54:34 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.219.41 X-Mailman-Approved-At: Mon, 29 Oct 2012 11:57:59 -0400 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:87485 Archived-At: Hello Gentlemen, Today I was debugging my helloworld code. Launched gdb (M-x gdb then M-x gdb-many-windows), opened memory buffer (M-x gdb-display-memory-buffer), breaked _start, ran and did several si commands. after setting breakpoint to _start section of my assembly code the error message 'error in process filter: Variable binding depth exceeds max-specpdl-size' apears and the memory buffer is empty. Please look at the screenshot here: http://ompldr.org/vZzJkeQ. Emacs version: emacs --version GNU Emacs 24.2.1 Assembly 'hello world' code: ; build using these commands: ; nasm -f elf -g -F stabs eatsyscall.asm ; ld -o eatsyscall eatsyscall.o SECTION .data ; section containing initialized data EatMsg: db "Eat at Joe's!", 10 EatLen: equ $-EatMsg SECTION .bss ; section containing uninitialized data SECTION .text ; section containing code _start: nop ; this no-op keeps gdb happy mov eax, 4 ; specify sys_write syscall mov ebx, 1 ; specify file descriptor 1: standard output mov ecx, EatMsg ; pass offset of the message mov edx, EatLen ; pass the length of the message int 80H ; make syscall to output the text to stdout mov eax, 1 ; specify exit syscall mov ebx, 0 ; return a code of zero int 80H ; make syscall to terminate the program Steps to reproduce: 1. Open an asm file (C-x C-f .asm) 2. Switch to gdb mode (M-x gdb) 3. Switch to gdb many windows mode (M-x gdb-many-windows) 4. Open gdb memory buffer anywhere (M-x gdb-display-memory-buffer) 5. Set breakpoint to _start section (break _start) 6. Run program from _start section (run) 7. Step to the mov eax,4 instruction (type si several times) Also I would like to know how can I set pointer to executed instruction in the source window of assembly. In my case (look at the screenshot) an arrow points to _start only. -- Vadym