patch-2.1.127 linux/arch/alpha/kernel/osf_sys.c
Next file: linux/arch/alpha/kernel/sys_sio.c
Previous file: linux/arch/alpha/defconfig
Back to the patch index
Back to the overall index
- Lines: 29
- Date:
Thu Nov 5 09:58:29 1998
- Orig file:
v2.1.126/linux/arch/alpha/kernel/osf_sys.c
- Orig date:
Thu Sep 17 17:53:34 1998
diff -u --recursive --new-file v2.1.126/linux/arch/alpha/kernel/osf_sys.c linux/arch/alpha/kernel/osf_sys.c
@@ -1306,6 +1306,7 @@
{
struct timeval tmp;
unsigned long ticks;
+ unsigned long tmp_timeout;
if (get_tv32(&tmp, sleep))
goto fault;
@@ -1313,18 +1314,11 @@
ticks = tmp.tv_usec;
ticks = (ticks + (1000000 / HZ) - 1) / (1000000 / HZ);
ticks += tmp.tv_sec * HZ;
- current->timeout = ticks + jiffies;
- current->state = TASK_INTERRUPTIBLE;
- schedule();
+ current->state = TASK_INTERRUPTIBLE;
+ ticks = schedule_timeout(ticks);
if (remain) {
- ticks = jiffies;
- if (ticks < current->timeout)
- ticks = current->timeout - ticks;
- else
- ticks = 0;
- current->timeout = 0;
tmp.tv_sec = ticks / HZ;
tmp.tv_usec = ticks % HZ;
if (put_tv32(remain, &tmp))
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov