From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19451 invoked by alias); 3 Apr 2008 12:01:40 -0000 Received: (qmail 19443 invoked by uid 22791); 3 Apr 2008 12:01:40 -0000 X-Spam-Check-By: sourceware.org Received: from bay0-omc3-s32.bay0.hotmail.com (HELO bay0-omc3-s32.bay0.hotmail.com) (65.54.246.232) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 03 Apr 2008 12:01:12 +0000 Received: from BAY121-W43 ([207.46.10.78]) by bay0-omc3-s32.bay0.hotmail.com with Microsoft SMTPSVC(6.0.3790.3959); Thu, 3 Apr 2008 05:01:11 -0700 Message-ID: From: trollepi jj To: Date: Thu, 03 Apr 2008 12:26:00 -0000 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-IsSubscribed: yes Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Subject: [ECOS] how work synthetic for exceptions X-SW-Source: 2008-04/txt/msg00043.txt.bz2 Hi, I try do modify the execution of a thread for the synthetic target. I've done that for an at91 board (using SWI,exception hanler and HAL_SavedR= egisters to store the context info). I put an exception handler for the CYG_HAL_SYS_SIGILL to see if i get the i= nfo pointers of the handler (3rd parameter of the function). I reach the exception handler and have this backtrace call from gdb #0 simple_syscall_handler (data=3D2, number=3D0, info=3D0) at main.c:56 #1 0x01004c7c in Cyg_Exception_Control::deliver_exception (this=3D0x200456= 0, exception_number=3D0,=20 exception_info=3D0) at /home/pitrolle/ecos/ecos/packages/kernel/current= /src/common/except.cxx:235 #2 0x010042bf in Cyg_Thread::deliver_exception (this=3D0x20004c0, exceptio= n_number=3D0, exception_info=3D0) at /home/pitrolle/ecos/ecos/packages/kernel/current/src/common/thread.c= xx:1013 #3 0x01004ce0 in cyg_hal_deliver_exception (code=3D0, data=3D0) at /home/pitrolle/ecos/ecos/packages/kernel/current/src/common/except.c= xx:248 #4 0x0100160d in synth_exception_sighandler (sig=3D4) at /home/pitrolle/ecos/ecos/packages/hal/synth/arch/current/src/synth_i= ntr.c:460 #5 0x01002e18 in cyg_hal_sys_restore_rt () at /home/pitrolle/ecos/ecos/packages/hal/synth/i386linux/current/src/sy= scall-i386-linux-1.0.S:446 #6 0x00000004 in ?? () #7 0x0100418c in idle_thread_main (data=3D0) at /home/pitrolle/ecos/ecos/packages/kernel/current/src/common/thread.c= xx:1231 #8 0x01004be0 in Cyg_HardwareThread::thread_entry (thread=3D0x20004c0) at /home/pitrolle/ecos/ecos/packages/kernel/current/src/common/thread.c= xx:95 #9 0x00000000 in ?? () I have severals questions : - What is the real aim of cyg_hal_sys_restore_rt? - If I want to get the context of the thread on the exception handler (inf= o about saved registers like previous pc,sp,...) , what can i process? Thank for future help, Best Regars jjp _________________________________________________________________ Lancez des recherches en toute s=E9curit=E9 depuis n'importe quelle page We= b. T=E9l=E9chargez GRATUITEMENT Windows Live Toolbar aujourd'hui ! http://toolbar.live.com -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss