summaryrefslogtreecommitdiff
path: root/nuttx/arch/c5471
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2007-03-19 14:22:43 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2007-03-19 14:22:43 +0000
commitbf14d0a7cfb1c59f692cd24d9e97699b01e103b4 (patch)
treec94333bd8c43f9af9dcf280bf2eb76e1cf071765 /nuttx/arch/c5471
parent35aaf2d6d6776ea47729eb80efb15e04671ab316 (diff)
downloadpx4-nuttx-bf14d0a7cfb1c59f692cd24d9e97699b01e103b4.tar.gz
px4-nuttx-bf14d0a7cfb1c59f692cd24d9e97699b01e103b4.tar.bz2
px4-nuttx-bf14d0a7cfb1c59f692cd24d9e97699b01e103b4.zip
Interrupts must be disabled in all low level context switches
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@89 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/arch/c5471')
-rw-r--r--nuttx/arch/c5471/src/up_exit.c26
1 files changed, 14 insertions, 12 deletions
diff --git a/nuttx/arch/c5471/src/up_exit.c b/nuttx/arch/c5471/src/up_exit.c
index 606ea097b..c6f544776 100644
--- a/nuttx/arch/c5471/src/up_exit.c
+++ b/nuttx/arch/c5471/src/up_exit.c
@@ -76,26 +76,27 @@
static void _up_dumponexit(FAR _TCB *tcb, FAR void *arg)
{
int i;
- dbg(" TCB=%p name=%s\n", tcb, tcb->name);
+
+ lldbg(" TCB=%p name=%s\n", tcb, tcb->argv[0]);
if (tcb->filelist)
{
- dbg(" filelist refcount=%d\n",
- tcb->filelist->fl_crefs);
+ lldbg(" filelist refcount=%d\n",
+ tcb->filelist->fl_crefs);
for (i = 0; i < CONFIG_NFILE_DESCRIPTORS; i++)
{
struct inode *inode = tcb->filelist->fl_files[i].f_inode;
if (inode)
{
- dbg(" fd=%d refcount=%d\n",
- i, inode->i_crefs);
+ lldbg(" fd=%d refcount=%d\n",
+ i, inode->i_crefs);
}
}
}
if (tcb->streams)
{
- dbg(" streamlist refcount=%d\n",
+ lldbg(" streamlist refcount=%d\n",
tcb->streams->sl_crefs);
for (i = 0; i < CONFIG_NFILE_STREAMS; i++)
@@ -103,9 +104,9 @@ static void _up_dumponexit(FAR _TCB *tcb, FAR void *arg)
struct file_struct *filep = &tcb->streams->sl_streams[i];
if (filep->fs_filedes >= 0)
{
- dbg(" fd=%d nbytes=%d\n",
- filep->fs_filedes,
- filep->fs_bufpos - filep->fs_bufstart);
+ lldbg(" fd=%d nbytes=%d\n",
+ filep->fs_filedes,
+ filep->fs_bufpos - filep->fs_bufstart);
}
}
}
@@ -128,11 +129,12 @@ static void _up_dumponexit(FAR _TCB *tcb, FAR void *arg)
void _exit(int status)
{
_TCB* tcb = (_TCB*)g_readytorun.head;
+ irqstate_t flags = irqsave();
- dbg("TCB=%p exitting\n", tcb);
+ lldbg("TCB=%p exitting\n", tcb);
#if defined(CONFIG_DUMP_ON_EXIT) && defined(CONFIG_DEBUG)
- dbg("Other tasks:\n");
+ lldbg("Other tasks:\n");
sched_foreach(_up_dumponexit, NULL);
#endif
@@ -162,7 +164,7 @@ void _exit(int status)
*/
tcb = (_TCB*)g_readytorun.head;
- dbg("New Active Task TCB=%p\n", tcb);
+ lldbg("New Active Task TCB=%p\n", tcb);
/* Then switch contexts */