On Wed, Oct 15, 2008 at 07:45:08PM +0200, Martin Schwidefsky wrote: > +void update_vsyscall(struct timespec *wall_time, struct clocksource *clock) > +{ > + if (clock != &clocksource_tod) > + return; > + > + /* Make userspace gettimeofday spin until we're done. */ > + ++vdso_data->tb_update_count; > + smp_mb(); > + vdso_data->xtime_tod_stamp = clock->cycle_last; > + vdso_data->xtime_clock_sec = xtime.tv_sec; > + vdso_data->xtime_clock_nsec = xtime.tv_nsec; > + vdso_data->wtom_clock_sec = wall_to_monotonic.tv_sec; > + vdso_data->wtom_clock_nsec = wall_to_monotonic.tv_nsec; > + smp_wmb(); Different barriers? > + ++(vdso_data->tb_update_count); Why ++(...)? Bastian -- Either one of us, by himself, is expendable. Both of us are not. -- Kirk, "The Devil in the Dark", stardate 3196.1 -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html