diff options
author | Attilio Rao <attilio@FreeBSD.org> | 2007-09-11 22:54:09 +0000 |
---|---|---|
committer | Attilio Rao <attilio@FreeBSD.org> | 2007-09-11 22:54:09 +0000 |
commit | 0b2e598c143df4e263bc0115fd48a9c3d8f56462 (patch) | |
tree | 9c75d191beec2f52c08afb0fe8d85559f2c2f14f /sys | |
parent | 8be3f374a71046b142cda066c99527085f6efefe (diff) | |
download | src-0b2e598c143df4e263bc0115fd48a9c3d8f56462.tar.gz src-0b2e598c143df4e263bc0115fd48a9c3d8f56462.zip |
This is a follow-up, cleaning-up commit about recent changes involving
topology foo functions.
Working at the patch for topology problems in ia32/amd64 evicted some
problems regarding functions ordering in the SI_SUB_CPU family of
SYSINIT'ed subsystems.
In order to avoid problems with new modified to involved functions, a
correct ordering is not semantically specified for SI_SUB_CPU functions
(for a larger view of the issue please visit:
http://lists.freebsd.org/pipermail/freebsd-current/2007-July/075409.html )
Discussed with: peter
Tested by: kris, Rui Paulo <rpaulo@FreeBSD.org>
Approved by: jeff
Approved by: re
Notes
Notes:
svn path=/head/; revision=172144
Diffstat (limited to 'sys')
-rw-r--r-- | sys/amd64/amd64/local_apic.c | 2 | ||||
-rw-r--r-- | sys/i386/acpica/madt.c | 2 | ||||
-rw-r--r-- | sys/i386/i386/local_apic.c | 2 | ||||
-rw-r--r-- | sys/kern/subr_smp.c | 2 | ||||
-rw-r--r-- | sys/sun4v/mdesc/mdesc_init.c | 2 |
5 files changed, 5 insertions, 5 deletions
diff --git a/sys/amd64/amd64/local_apic.c b/sys/amd64/amd64/local_apic.c index 8e21a17b4808..b532e91e4ca9 100644 --- a/sys/amd64/amd64/local_apic.c +++ b/sys/amd64/amd64/local_apic.c @@ -1061,7 +1061,7 @@ apic_setup_local(void *dummy __unused) printf("%s: Failed to setup the local APIC: returned %d\n", best_enum->apic_name, retval); } -SYSINIT(apic_setup_local, SI_SUB_CPU, SI_ORDER_FIRST, apic_setup_local, NULL) +SYSINIT(apic_setup_local, SI_SUB_CPU, SI_ORDER_SECOND, apic_setup_local, NULL) /* * Setup the I/O APICs. diff --git a/sys/i386/acpica/madt.c b/sys/i386/acpica/madt.c index 3b32d30e83b3..b0eadcabdfee 100644 --- a/sys/i386/acpica/madt.c +++ b/sys/i386/acpica/madt.c @@ -406,7 +406,7 @@ madt_register(void *dummy __unused) apic_register_enumerator(&madt_enumerator); } -SYSINIT(madt_register, SI_SUB_CPU - 1, SI_ORDER_FIRST, madt_register, NULL) +SYSINIT(madt_register, SI_SUB_CPU - 1, SI_ORDER_SECOND, madt_register, NULL) /* * Call the handler routine for each entry in the MADT table. diff --git a/sys/i386/i386/local_apic.c b/sys/i386/i386/local_apic.c index f7d0e0c8b140..46f985e66ce4 100644 --- a/sys/i386/i386/local_apic.c +++ b/sys/i386/i386/local_apic.c @@ -1065,7 +1065,7 @@ apic_init(void *dummy __unused) printf("%s: Failed to setup the local APIC: returned %d\n", best_enum->apic_name, retval); } -SYSINIT(apic_init, SI_SUB_CPU, SI_ORDER_FIRST, apic_init, NULL) +SYSINIT(apic_init, SI_SUB_CPU, SI_ORDER_SECOND, apic_init, NULL) /* * Setup the I/O APICs. diff --git a/sys/kern/subr_smp.c b/sys/kern/subr_smp.c index 3de0eacfc403..a88428802aa7 100644 --- a/sys/kern/subr_smp.c +++ b/sys/kern/subr_smp.c @@ -148,7 +148,7 @@ mp_start(void *dummy) mp_ncpus); cpu_mp_announce(); } -SYSINIT(cpu_mp, SI_SUB_CPU, SI_ORDER_SECOND, mp_start, NULL) +SYSINIT(cpu_mp, SI_SUB_CPU, SI_ORDER_THIRD, mp_start, NULL) void forward_signal(struct thread *td) diff --git a/sys/sun4v/mdesc/mdesc_init.c b/sys/sun4v/mdesc/mdesc_init.c index 6de9c2c804ac..bb2990de94c2 100644 --- a/sys/sun4v/mdesc/mdesc_init.c +++ b/sys/sun4v/mdesc/mdesc_init.c @@ -53,7 +53,7 @@ static void mdesc_postvm_init(void *); * can kill off all calls to OBP. OBP removal is not in * the critical path for sun4v at this time. */ -SYSINIT(mdesc_init, SI_SUB_CPU, SI_ORDER_FIRST, mdesc_postvm_init, NULL); +SYSINIT(mdesc_init, SI_SUB_CPU, SI_ORDER_SECOND, mdesc_postvm_init, NULL); #define UNIMPLEMENTED panic("%s not implemented.", __FUNCTION__) |