aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/os-Linux
diff options
context:
space:
mode:
authorJeff Dike <jdike@addtoit.com>2007-10-16 01:27:28 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-16 09:43:08 -0700
commit1a80521990a0e30e61a92994a009adc52161b070 (patch)
tree3cf900adf9383ff68fd66cd74cfaf0e0ce483845 /arch/um/os-Linux
parentuml: eliminate SIGALRM (diff)
downloadlinux-dev-1a80521990a0e30e61a92994a009adc52161b070.tar.xz
linux-dev-1a80521990a0e30e61a92994a009adc52161b070.zip
uml: use *SEC_PER_*SEC constants
There are various uses of powers of 1000, plus the odd BILLION constant in the time code. However, there are perfectly good definitions of *SEC_PER_*SEC in linux/time.h which can be used instaed. These are replaced directly in kernel code. Userspace code imports those constants as UM_*SEC_PER_*SEC and uses these. Signed-off-by: Jeff Dike <jdike@linux.intel.com> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to '')
-rw-r--r--arch/um/os-Linux/skas/process.c12
-rw-r--r--arch/um/os-Linux/time.c12
2 files changed, 13 insertions, 11 deletions
diff --git a/arch/um/os-Linux/skas/process.c b/arch/um/os-Linux/skas/process.c
index 9936531a2620..8548f126d628 100644
--- a/arch/um/os-Linux/skas/process.c
+++ b/arch/um/os-Linux/skas/process.c
@@ -294,8 +294,8 @@ void userspace(struct uml_pt_regs *regs)
if (getitimer(ITIMER_VIRTUAL, &timer))
printk("Failed to get itimer, errno = %d\n", errno);
- nsecs = timer.it_value.tv_sec * BILLION +
- timer.it_value.tv_usec * 1000;
+ nsecs = timer.it_value.tv_sec * UM_NSEC_PER_SEC +
+ timer.it_value.tv_usec * UM_NSEC_PER_USEC;
nsecs += os_nsecs();
while (1) {
@@ -347,8 +347,10 @@ void userspace(struct uml_pt_regs *regs)
block_signals();
(*sig_info[sig])(sig, regs);
unblock_signals();
- nsecs = timer.it_value.tv_sec * BILLION +
- timer.it_value.tv_usec * 1000;
+ nsecs = timer.it_value.tv_sec *
+ UM_NSEC_PER_SEC +
+ timer.it_value.tv_usec *
+ UM_NSEC_PER_USEC;
nsecs += os_nsecs();
break;
case SIGIO:
@@ -395,7 +397,7 @@ __initcall(init_thread_regs);
int copy_context_skas0(unsigned long new_stack, int pid)
{
- struct timeval tv = { .tv_sec = 0, .tv_usec = 1000000 / UM_HZ };
+ struct timeval tv = { .tv_sec = 0, .tv_usec = UM_USEC_PER_SEC / UM_HZ };
int err;
unsigned long current_stack = current_stub_stack();
struct stub_data *data = (struct stub_data *) current_stack;
diff --git a/arch/um/os-Linux/time.c b/arch/um/os-Linux/time.c
index 574b134f0502..e34e1effe0f5 100644
--- a/arch/um/os-Linux/time.c
+++ b/arch/um/os-Linux/time.c
@@ -14,7 +14,7 @@
int set_interval(void)
{
- int usec = 1000000/UM_HZ;
+ int usec = UM_USEC_PER_SEC / UM_HZ;
struct itimerval interval = ((struct itimerval) { { 0, usec },
{ 0, usec } });
@@ -26,11 +26,11 @@ int set_interval(void)
int timer_one_shot(int ticks)
{
- unsigned long usec = ticks * 1000000 / UM_HZ;
- unsigned long sec = usec / 1000000;
+ unsigned long usec = ticks * UM_USEC_PER_SEC / UM_HZ;
+ unsigned long sec = usec / UM_USEC_PER_SEC;
struct itimerval interval;
- usec %= 1000000;
+ usec %= UM_USEC_PER_SEC;
interval = ((struct itimerval) { { 0, 0 }, { sec, usec } });
if (setitimer(ITIMER_VIRTUAL, &interval, NULL) == -1)
@@ -78,8 +78,8 @@ extern void alarm_handler(int sig, struct sigcontext *sc);
void idle_sleep(unsigned long long nsecs)
{
- struct timespec ts = { .tv_sec = nsecs / BILLION,
- .tv_nsec = nsecs % BILLION };
+ struct timespec ts = { .tv_sec = nsecs / UM_NSEC_PER_SEC,
+ .tv_nsec = nsecs % UM_NSEC_PER_SEC };
if (nanosleep(&ts, &ts) == 0)
alarm_handler(SIGVTALRM, NULL);