Newer releases - especially of products with kernel mode components like Link and CMEM - handle cleanup after app crashes better. Which versions are you using, and which devices (DM644x? OMAP3?)?
Unfortunately, sometimes crashes/reboots are unavoidable - e.g. if a DSP-side write from a DSP without memory protection (e.g. DM644x) scribbles over critical ARM-side memory (e.g. writing over Linux kernel structs). So as a general statement, we say the DSP must not crash, and if it does, to ensure system integrity you gotta reboot the device. Typically during development, a DSP-side crash does no 'real' damage, and the drivers should clean up after themselves so you can run the app again without a reboot. Older releases aren't very good about that, but they're getting better. Might try something newer(?). Chris > -----Original Message----- > From: > [email protected] > p.com > [mailto:[email protected] > avincidsp.com] On Behalf Of Stephane St-Hilaire > Sent: Thursday, June 04, 2009 10:22 AM > To: Joshua Hintze; [email protected] > Subject: RE: Crashing on ARM side while codec engine is running. > > I'm new to this mailing list and I'm not clear on how much > this has been discussed before, but is there a way to recover > from an application crash without having to reboot the system? > > I have this daemon that interfaces with the codec engine for > the audio processing and even though I'd like to think that > my code is 100% bug free (...), on the rare occasion where it > would crash, I would at least like to be able to just restart > it to recover. > > However most often than not I will either get a failed return > code I believe when creating the audio encoder instance, or > worst my thread will hang FOREVER on the call to Engine_open > which never returns. > > Is there a way upon application restart to re-initialize > things properly in order to avoid the reboot? > > > Steph > > -----Original Message----- > From: [email protected] > [mailto:[email protected] > ] On Behalf Of Joshua Hintze > Sent: Thursday, June 04, 2009 1:13 PM > To: [email protected] > Subject: Crashing on ARM side while codec engine is running. > > Lately I've been trying to track down a bug on some of my arm > code running on the davinci. As most programmers know there > can be plenty of sigfaults. > The problem is that the codec engine is running when I > sigfault so it doesn't get closed down properly. This means > the next time I try to launch my application I get this error: > > @0x0007f980:[T:0x4194db60] OP - Processor_create_d> Loading > and starting DSP server 'algo.x64P' FAILED, > status=[0x8000800b] (look for error code 'DSP_EBASE + 0xb' in > dsplink*/packages/dsplink/gpp/inc/errbase.h) > @0x0007fbe0:[T:0x4194db60] OP - Processor_delete_d> Closing > remote transport FAILED, status=0x80008002. > @0x0007fd08:[T:0x4194db60] OP - Processor_delete_d> Stopping > DSP FAILED, status=0x80008000 @0x0007fe0a:[T:0x4194db60] OP - > Processor_delete_d> Closing pool FAILED, status=0x80008000 > @0x0007fedf:[T:0x4194db60] OP - Processor_delete_d> Detaching > from DSP FAILED, status=0x80008000 @0x00080948:[T:0x4214db60] > CE - rserverOpen: can't start 'SARalgo.x64P'; Processor_create failed > TraceUtil> Error: Failed to open codec engine "algo" > > I looked in errbase.h and I see this. > > /* An invalid argument was specified. */ #define > DSP_EINVALIDARG (DSP_EBASE + 0xBl) > > I don't think it's an invalid argument problem because it > runs just fine if I comment out the ARM code that is causing > the segfault. The only way to get it to launch the codec > engine again is a full system restart. I've tried rmmod > dsplinkk and cmemk and re-inserting them but that doesn't > work. Just the reboot does. > > Any suggestions? > > Thanks, > > Josh > > > > _______________________________________________ > Davinci-linux-open-source mailing list > [email protected] > http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source > > _______________________________________________ > Davinci-linux-open-source mailing list > [email protected] > http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source > _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
