mirror of git://git.musl-libc.org/musl
cleanup cruft left from when kernel and user time_t disagreed
This commit is contained in:
parent
52874c82a8
commit
cc2a8228fa
|
@ -1,9 +1,8 @@
|
||||||
|
#define _GNU_SOURCE
|
||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
#include "syscall.h"
|
#include "syscall.h"
|
||||||
|
|
||||||
pid_t wait4(pid_t, int *, int, struct rusage *);
|
|
||||||
|
|
||||||
pid_t wait3(int *status, int options, struct rusage *usage)
|
pid_t wait3(int *status, int options, struct rusage *usage)
|
||||||
{
|
{
|
||||||
return wait4(-1, status, options, usage);
|
return wait4(-1, status, options, usage);
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
#define _GNU_SOURCE
|
||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
@ -5,14 +6,5 @@
|
||||||
|
|
||||||
pid_t wait4(pid_t pid, int *status, int options, struct rusage *usage)
|
pid_t wait4(pid_t pid, int *status, int options, struct rusage *usage)
|
||||||
{
|
{
|
||||||
pid_t ret = syscall4(__NR_wait4, pid, (long)status, options, (long)usage);
|
return syscall4(__NR_wait4, pid, (long)status, options, (long)usage);
|
||||||
/* Fixup kernel time_t... */
|
|
||||||
if (usage) {
|
|
||||||
long kusage[4];
|
|
||||||
memcpy(kusage, usage, sizeof kusage);
|
|
||||||
memmove((struct timeval *)usage + 2, (long *)usage + 4, sizeof *usage - 2*sizeof(struct timeval));
|
|
||||||
usage->ru_utime = (struct timeval){ kusage[0], kusage[1] };
|
|
||||||
usage->ru_stime = (struct timeval){ kusage[2], kusage[3] };
|
|
||||||
}
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue