Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 33807
b: refs/heads/master
c: 10387e5
h: refs/heads/master
i:
  33805: 72e46e5
  33803: 46e09e9
  33799: 4508c99
  33791: fc715c0
v: v3
  • Loading branch information
Linus Torvalds committed Sep 6, 2006
1 parent 0db53aa commit 31f2642
Show file tree
Hide file tree
Showing 11 changed files with 22 additions and 88 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d279490543ee4e7c51371eb605b578ab47f45305
refs/heads/master: 10387e5eb45c6e48d67102b88229f5bc6037461c
4 changes: 4 additions & 0 deletions trunk/arch/frv/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ config GENERIC_HARDIRQS
bool
default n

config GENERIC_TIME
bool
default y

config TIME_LOW_RES
bool
default y
Expand Down
81 changes: 0 additions & 81 deletions trunk/arch/frv/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,6 @@

#define TICK_SIZE (tick_nsec / 1000)

extern unsigned long wall_jiffies;

unsigned long __nongprelbss __clkin_clock_speed_HZ;
unsigned long __nongprelbss __ext_bus_clock_speed_HZ;
unsigned long __nongprelbss __res_bus_clock_speed_HZ;
Expand Down Expand Up @@ -144,85 +142,6 @@ void time_init(void)
time_divisor_init();
}

/*
* This version of gettimeofday has near microsecond resolution.
*/
void do_gettimeofday(struct timeval *tv)
{
unsigned long seq;
unsigned long usec, sec;
unsigned long max_ntp_tick;

do {
unsigned long lost;

seq = read_seqbegin(&xtime_lock);

usec = 0;
lost = jiffies - wall_jiffies;

/*
* If time_adjust is negative then NTP is slowing the clock
* so make sure not to go into next possible interval.
* Better to lose some accuracy than have time go backwards..
*/
if (unlikely(time_adjust < 0)) {
max_ntp_tick = (USEC_PER_SEC / HZ) - tickadj;
usec = min(usec, max_ntp_tick);

if (lost)
usec += lost * max_ntp_tick;
}
else if (unlikely(lost))
usec += lost * (USEC_PER_SEC / HZ);

sec = xtime.tv_sec;
usec += (xtime.tv_nsec / 1000);
} while (read_seqretry(&xtime_lock, seq));

while (usec >= 1000000) {
usec -= 1000000;
sec++;
}

tv->tv_sec = sec;
tv->tv_usec = usec;
}

EXPORT_SYMBOL(do_gettimeofday);

int 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
* made, and then undo it!
*/
nsec -= 0 * NSEC_PER_USEC;
nsec -= (jiffies - wall_jiffies) * TICK_NSEC;

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);

ntp_clear();
write_sequnlock_irq(&xtime_lock);
clock_was_set();
return 0;
}

EXPORT_SYMBOL(do_settimeofday);

/*
* Scheduler clock - returns current time in nanosec units.
*/
Expand Down
1 change: 1 addition & 0 deletions trunk/fs/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ DEFINE_SPINLOCK(sb_lock);

/**
* alloc_super - create new superblock
* @type: filesystem type superblock should belong to
*
* Allocates and initializes a new &struct super_block. alloc_super()
* returns a pointer new superblock or %NULL if allocation had failed.
Expand Down
2 changes: 1 addition & 1 deletion trunk/include/asm-i386/Kbuild
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
include include/asm-generic/Kbuild.asm

header-y += boot.h cpufeature.h debugreg.h ldt.h setup.h ucontext.h
header-y += boot.h debugreg.h ldt.h setup.h ucontext.h

unifdef-y += mtrr.h vm86.h
2 changes: 1 addition & 1 deletion trunk/include/linux/atmdev.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
#define LINUX_ATMDEV_H


#include <linux/device.h>
#include <linux/atmapi.h>
#include <linux/atm.h>
#include <linux/atmioc.h>
Expand Down Expand Up @@ -210,6 +209,7 @@ struct atm_cirange {

#ifdef __KERNEL__

#include <linux/device.h>
#include <linux/wait.h> /* wait_queue_head_t */
#include <linux/time.h> /* struct timeval */
#include <linux/net.h>
Expand Down
1 change: 1 addition & 0 deletions trunk/include/linux/hrtimer.h
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ struct hrtimer_sleeper {
* @get_softirq_time: function to retrieve the current time from the softirq
* @curr_timer: the timer which is executing a callback right now
* @softirq_time: the time when running the hrtimer queue in the softirq
* @lock_key: the lock_class_key for use with lockdep
*/
struct hrtimer_base {
clockid_t index;
Expand Down
7 changes: 6 additions & 1 deletion trunk/include/linux/ktime.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,8 @@ typedef union {
#endif
} ktime_t;

#define KTIME_MAX (~((u64)1 << 63))
#define KTIME_MAX ((s64)~((u64)1 << 63))
#define KTIME_SEC_MAX (KTIME_MAX / NSEC_PER_SEC)

/*
* ktime_t definitions when using the 64-bit scalar representation:
Expand All @@ -73,6 +74,10 @@ typedef union {
*/
static inline ktime_t ktime_set(const long secs, const unsigned long nsecs)
{
#if (BITS_PER_LONG == 64)
if (unlikely(secs >= KTIME_SEC_MAX))
return (ktime_t){ .tv64 = KTIME_MAX };
#endif
return (ktime_t) { .tv64 = (s64)secs * NSEC_PER_SEC + (s64)nsecs };
}

Expand Down
2 changes: 1 addition & 1 deletion trunk/kernel/panic.c
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ const char *print_tainted(void)

void add_taint(unsigned flag)
{
debug_locks_off(); /* can't trust the integrity of the kernel anymore */
debug_locks = 0; /* can't trust the integrity of the kernel anymore */
tainted |= flag;
}
EXPORT_SYMBOL(add_taint);
Expand Down
6 changes: 5 additions & 1 deletion trunk/kernel/power/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ config PM_TRACE

config SOFTWARE_SUSPEND
bool "Software Suspend"
depends on PM && SWAP && (X86 && (!SMP || SUSPEND_SMP)) || ((FRV || PPC32) && !SMP)
depends on PM && SWAP && ((X86 && (!SMP || SUSPEND_SMP) && !X86_PAE) || ((FRV || PPC32) && !SMP))
---help---
Enable the possibility of suspending the machine.
It doesn't need ACPI or APM.
Expand All @@ -78,6 +78,10 @@ config SOFTWARE_SUSPEND

For more information take a look at <file:Documentation/power/swsusp.txt>.

(For now, swsusp is incompatible with PAE aka HIGHMEM_64G on i386.
we need identity mapping for resume to work, and that is trivial
to get with 4MB pages, but less than trivial on PAE).

config PM_STD_PARTITION
string "Default resume partition"
depends on SOFTWARE_SUSPEND
Expand Down
2 changes: 1 addition & 1 deletion trunk/kernel/spinlock.c
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ EXPORT_SYMBOL(_write_trylock);
* not re-enabled during lock-acquire (which the preempt-spin-ops do):
*/
#if !defined(CONFIG_PREEMPT) || !defined(CONFIG_SMP) || \
defined(CONFIG_PROVE_LOCKING)
defined(CONFIG_DEBUG_LOCK_ALLOC)

void __lockfunc _read_lock(rwlock_t *lock)
{
Expand Down

0 comments on commit 31f2642

Please sign in to comment.