Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 88741
b: refs/heads/master
c: e90009b
h: refs/heads/master
i:
  88739: 3c9840d
v: v3
  • Loading branch information
Glauber Costa authored and Ingo Molnar committed Apr 17, 2008
1 parent 35424fd commit 4d81b35
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 3 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: 91718e8d13c23bfe0aa6fa6b730c5c33ee9771bf
refs/heads/master: e90009bcc1137c51d677262417f16c00ad2ce9a9
10 changes: 8 additions & 2 deletions trunk/arch/x86/kernel/smpboot_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,13 @@ static void __cpuinit smp_store_cpu_info(int id)
print_cpu_info(c);
}

static inline void wait_for_init_deassert(atomic_t *deassert)
{
while (!atomic_read(deassert))
cpu_relax();
return;
}

static atomic_t init_deasserted __cpuinitdata;

/*
Expand All @@ -117,8 +124,7 @@ void __cpuinit smp_callin(void)
* our local APIC. We have to wait for the IPI or we'll
* lock up on an APIC access.
*/
while (!atomic_read(&init_deasserted))
cpu_relax();
wait_for_init_deassert(&init_deasserted);

/*
* (This works even if the APIC is not enabled.)
Expand Down

0 comments on commit 4d81b35

Please sign in to comment.