time_adjust = 0;		/* stop active adjtime() */ time_status |= STA_UNSYNC; time_maxerror = NTP_PHASE_LIMIT; time_esterror = NTP_PHASE_LIMIT; 
ntp_clear(); 
do_settimeofday (struct timespec *tv){	time_t wtm_sec, sec = tv->tv_sec;	long wtm_nsec, nsec = tv->tv_nsec;	if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC)		return -EINVAL;	write_seqlock_irq(&xtime_lock);	{		/*		 * This is revolting. We need to set "xtime"		 * correctly. However, the value in this location is		 * the value at the most recent update of wall time.		 * Discover what correction gettimeofday would have		 * done, and then undo it!		 */		nsec -= gettimeoffset() * 1000;		wtm_sec  = wall_to_monotonic.tv_sec + (xtime.tv_sec - sec);		wtm_nsec = wall_to_monotonic.tv_nsec + (xtime.tv_nsec - nsec);		set_normalized_timespec(&xtime, sec, nsec);		set_normalized_timespec(&wall_to_monotonic, wtm_sec, wtm_nsec);		time_adjust = 0;		/* stop active adjtime() */		time_status |= STA_UNSYNC;		time_maxerror = NTP_PHASE_LIMIT;		time_esterror = NTP_PHASE_LIMIT;	}	write_sequnlock_irq(&xtime_lock);	clock_was_set();	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b149ee2233edf08fb59b11e879a2c5941929bcb8/time.c/clean/arch/parisc/kernel/time.c