Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 162680
b: refs/heads/master
c: 9ea7770
h: refs/heads/master
v: v3
  • Loading branch information
Philippe Gerum authored and Mike Frysinger committed Sep 17, 2009
1 parent 19f8b26 commit 5132677
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 15 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: 7a7967dc1b606f8c88e33bbec773bf82b4a52e6e
refs/heads/master: 9ea7770fdb0d6742d6a0aba62facda4b35356cf2
25 changes: 11 additions & 14 deletions trunk/arch/blackfin/mach-common/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -708,8 +708,14 @@ ENTRY(_system_call)
#ifdef CONFIG_IPIPE
cc = BITTST(r7, TIF_IRQ_SYNC);
if !cc jump .Lsyscall_no_irqsync;
/*
* Clear IPEND[4] manually to undo what resume_userspace_1 just did;
* we need this so that high priority domain interrupts may still
* preempt the current domain while the pipeline log is being played
* back.
*/
[--sp] = reti;
r0 = [sp++];
SP += 4; /* don't merge with next insn to keep the pattern obvious */
SP += -12;
call ___ipipe_sync_root;
SP += 12;
Expand All @@ -721,7 +727,7 @@ ENTRY(_system_call)

/* Reenable interrupts. */
[--sp] = reti;
r0 = [sp++];
sp += 4;

SP += -12;
call _schedule;
Expand All @@ -737,7 +743,7 @@ ENTRY(_system_call)
.Lsyscall_do_signals:
/* Reenable interrupts. */
[--sp] = reti;
r0 = [sp++];
sp += 4;

r0 = sp;
SP += -12;
Expand All @@ -747,10 +753,6 @@ ENTRY(_system_call)
.Lsyscall_really_exit:
r5 = [sp + PT_RESERVED];
rets = r5;
#ifdef CONFIG_IPIPE
[--sp] = reti;
r5 = [sp++];
#endif /* CONFIG_IPIPE */
rts;
ENDPROC(_system_call)

Expand Down Expand Up @@ -904,14 +906,9 @@ ENDPROC(_ret_from_exception)

#ifdef CONFIG_IPIPE

_sync_root_irqs:
[--sp] = reti; /* Reenable interrupts */
r0 = [sp++];
jump.l ___ipipe_sync_root

_resume_kernel_from_int:
r0.l = _sync_root_irqs
r0.h = _sync_root_irqs
r0.l = ___ipipe_sync_root;
r0.h = ___ipipe_sync_root;
[--sp] = rets;
[--sp] = ( r7:4, p5:3 );
SP += -12;
Expand Down

0 comments on commit 5132677

Please sign in to comment.