diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2007-03-19 14:22:43 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2007-03-19 14:22:43 +0000 |
commit | bf14d0a7cfb1c59f692cd24d9e97699b01e103b4 (patch) | |
tree | c94333bd8c43f9af9dcf280bf2eb76e1cf071765 /nuttx/arch/c5471 | |
parent | 35aaf2d6d6776ea47729eb80efb15e04671ab316 (diff) | |
download | px4-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.c | 26 |
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 */ |