>
http://lxr.linux.no/linux+v2.6.24/arch/arm/kernel/time.c#L240
> 239#ifndef CONFIG_GENERIC_TIME
> 240void do_gettimeofday(struct timeval *tv)
> 241{
> 242 unsigned long flags;
> 243 unsigned long seq;
> 244 unsigned long usec, sec;
> 245
> 246 do {
> 247 seq = read_seqbegin_irqsave(&xtime_lock, flags);
> 248 usec = system_timer->offset();
> 249 sec = xtime.tv_sec;
> 250 usec += xtime.tv_nsec / 1000;
> 251 } while (read_seqretry_irqrestore(&xtime_lock, seq, flags));