diff options
| author | Jeff Garzik <jgarzik@pobox.com> | 2005-09-14 08:19:08 -0400 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2005-09-14 08:19:08 -0400 |
| commit | 905ec87e93bc9e01b15c60035cd6a50c636cbaef (patch) | |
| tree | 46fd7618d6511611ffc19eb0dd4d7bc6b90a41c2 /arch/mips/kernel/irixsig.c | |
| parent | 1d6ae775d7a948c9575658eb41184fd2e506c0df (diff) | |
| parent | 2f4ba45a75d6383b4a1201169a808ffea416ffa0 (diff) | |
Merge /spare/repo/linux-2.6/
Diffstat (limited to 'arch/mips/kernel/irixsig.c')
| -rw-r--r-- | arch/mips/kernel/irixsig.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/arch/mips/kernel/irixsig.c b/arch/mips/kernel/irixsig.c index 4c114ae21793..eff89322ba50 100644 --- a/arch/mips/kernel/irixsig.c +++ b/arch/mips/kernel/irixsig.c | |||
| @@ -440,18 +440,6 @@ struct irix5_siginfo { | |||
| 440 | } stuff; | 440 | } stuff; |
| 441 | }; | 441 | }; |
| 442 | 442 | ||
| 443 | static inline unsigned long timespectojiffies(struct timespec *value) | ||
| 444 | { | ||
| 445 | unsigned long sec = (unsigned) value->tv_sec; | ||
| 446 | long nsec = value->tv_nsec; | ||
| 447 | |||
| 448 | if (sec > (LONG_MAX / HZ)) | ||
| 449 | return LONG_MAX; | ||
| 450 | nsec += 1000000000L / HZ - 1; | ||
| 451 | nsec /= 1000000000L / HZ; | ||
| 452 | return HZ * sec + nsec; | ||
| 453 | } | ||
| 454 | |||
| 455 | asmlinkage int irix_sigpoll_sys(unsigned long *set, struct irix5_siginfo *info, | 443 | asmlinkage int irix_sigpoll_sys(unsigned long *set, struct irix5_siginfo *info, |
| 456 | struct timespec *tp) | 444 | struct timespec *tp) |
| 457 | { | 445 | { |
| @@ -489,14 +477,13 @@ asmlinkage int irix_sigpoll_sys(unsigned long *set, struct irix5_siginfo *info, | |||
| 489 | error = -EINVAL; | 477 | error = -EINVAL; |
| 490 | goto out; | 478 | goto out; |
| 491 | } | 479 | } |
| 492 | expire = timespectojiffies(tp)+(tp->tv_sec||tp->tv_nsec); | 480 | expire = timespec_to_jiffies(tp) + (tp->tv_sec||tp->tv_nsec); |
| 493 | } | 481 | } |
| 494 | 482 | ||
| 495 | while(1) { | 483 | while(1) { |
| 496 | long tmp = 0; | 484 | long tmp = 0; |
| 497 | 485 | ||
| 498 | current->state = TASK_INTERRUPTIBLE; | 486 | expire = schedule_timeout_interruptible(expire); |
| 499 | expire = schedule_timeout(expire); | ||
| 500 | 487 | ||
| 501 | for (i=0; i<=4; i++) | 488 | for (i=0; i<=4; i++) |
| 502 | tmp |= (current->pending.signal.sig[i] & kset.sig[i]); | 489 | tmp |= (current->pending.signal.sig[i] & kset.sig[i]); |
