Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 30168
b: refs/heads/master
c: 7bf9a37
h: refs/heads/master
v: v3
  • Loading branch information
Greg Ungerer authored and Linus Torvalds committed Jun 26, 2006
1 parent 3f48ac7 commit 28a049e
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 9 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 31f4fde38c5027ca05941db4a05c163d6314278e
refs/heads/master: 7bf9a37d8df1e7db82784117d28bb98da5f53f2f
28 changes: 20 additions & 8 deletions trunk/include/asm-m68knommu/processor.h
Original file line number Diff line number Diff line change
Expand Up @@ -77,20 +77,32 @@ struct thread_struct {
{0, 0}, 0, {0,}, {0, 0, 0}, {0,}, \
}

/*
* Coldfire stacks need to be re-aligned on trap exit, conventional
* 68k can handle this case cleanly.
*/
#if defined(CONFIG_COLDFIRE)
#define reformat(_regs) do { (_regs)->format = 0x4; } while(0)
#else
#define reformat(_regs) do { } while (0)
#endif

/*
* Do necessary setup to start up a newly executed thread.
*
* pass the data segment into user programs if it exists,
* it can't hurt anything as far as I can tell
*/
#define start_thread(_regs, _pc, _usp) \
do { \
set_fs(USER_DS); /* reads from user space */ \
(_regs)->pc = (_pc); \
if (current->mm) \
(_regs)->d5 = current->mm->start_data; \
(_regs)->sr &= ~0x2000; \
wrusp(_usp); \
#define start_thread(_regs, _pc, _usp) \
do { \
set_fs(USER_DS); /* reads from user space */ \
(_regs)->pc = (_pc); \
((struct switch_stack *)(_regs))[-1].a6 = 0; \
reformat(_regs); \
if (current->mm) \
(_regs)->d5 = current->mm->start_data; \
(_regs)->sr &= ~0x2000; \
wrusp(_usp); \
} while(0)

/* Forward declaration, a strange C thing */
Expand Down

0 comments on commit 28a049e

Please sign in to comment.