Author: bonefish Date: 2010-04-30 20:33:25 +0200 (Fri, 30 Apr 2010) New Revision: 36556 Changeset: http://dev.haiku-os.org/changeset/36556/haiku Modified: haiku/trunk/src/system/kernel/smp.cpp Log: Documented smp_cpu_rendezvous(). Modified: haiku/trunk/src/system/kernel/smp.cpp =================================================================== --- haiku/trunk/src/system/kernel/smp.cpp 2010-04-30 16:09:54 UTC (rev 36555) +++ haiku/trunk/src/system/kernel/smp.cpp 2010-04-30 18:33:25 UTC (rev 36556) @@ -1076,7 +1076,17 @@ } } -/* have all cpus spin until all have run */ + +/*! Spin until all CPUs have reached the rendez-vous point. + + The rendez-vous variable \c *var must have been initialized to 0 before the + function is called. The variable will be non-null when the function returns. + + Note that when the function returns on one CPU, it only means that all CPU + have already entered the function. It does not mean that the variable can + already be reset. Only when all CPUs have returned (which would have to be + ensured via another rendez-vous) the variable can be reset. +*/ void smp_cpu_rendezvous(volatile uint32 *var, int current_cpu) { @@ -1086,6 +1096,7 @@ PAUSE(); } + status_t smp_init(kernel_args *args) {