Deleted Added
full compact
linux32_machdep.c (134586) linux32_machdep.c (136152)
1/*-
2 * Copyright (c) 2004 Tim J. Robbins
3 * Copyright (c) 2002 Doug Rabson
4 * Copyright (c) 2000 Marcel Moolenaar
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 15 unchanged lines hidden (view full) ---

24 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */
30
31#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 2004 Tim J. Robbins
3 * Copyright (c) 2002 Doug Rabson
4 * Copyright (c) 2000 Marcel Moolenaar
5 * All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 15 unchanged lines hidden (view full) ---

24 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */
30
31#include <sys/cdefs.h>
32__FBSDID("$FreeBSD: head/sys/amd64/linux32/linux32_machdep.c 134586 2004-09-01 02:11:28Z julian $");
32__FBSDID("$FreeBSD: head/sys/amd64/linux32/linux32_machdep.c 136152 2004-10-05 18:51:11Z jhb $");
33
34#include <sys/param.h>
35#include <sys/kernel.h>
36#include <sys/systm.h>
37#include <sys/lock.h>
38#include <sys/malloc.h>
39#include <sys/mman.h>
40#include <sys/mutex.h>

--- 894 unchanged lines hidden (view full) ---

935 return (error);
936 }
937 return (error);
938}
939
940int
941linux_getrusage(struct thread *td, struct linux_getrusage_args *uap)
942{
33
34#include <sys/param.h>
35#include <sys/kernel.h>
36#include <sys/systm.h>
37#include <sys/lock.h>
38#include <sys/malloc.h>
39#include <sys/mman.h>
40#include <sys/mutex.h>

--- 894 unchanged lines hidden (view full) ---

935 return (error);
936 }
937 return (error);
938}
939
940int
941linux_getrusage(struct thread *td, struct linux_getrusage_args *uap)
942{
943 struct l_rusage s32;
944 struct rusage s;
943 int error;
945 int error;
944 caddr_t sg;
945 struct l_rusage *p32, s32;
946 struct rusage *p = NULL, s;
947
946
948 p32 = uap->rusage;
949 if (p32 != NULL) {
950 sg = stackgap_init();
951 p = stackgap_alloc(&sg, sizeof(struct rusage));
952 uap->rusage = (struct l_rusage *)p;
953 }
954 error = getrusage(td, (struct getrusage_args *) uap);
947 error = kern_getrusage(td, uap->who, &s);
955 if (error != 0)
956 return (error);
948 if (error != 0)
949 return (error);
957 if (p32 != NULL) {
958 error = copyin(p, &s, sizeof(s));
959 if (error != 0)
960 return (error);
950 if (uap->rusage != NULL) {
961 s32.ru_utime.tv_sec = s.ru_utime.tv_sec;
962 s32.ru_utime.tv_usec = s.ru_utime.tv_usec;
963 s32.ru_stime.tv_sec = s.ru_stime.tv_sec;
964 s32.ru_stime.tv_usec = s.ru_stime.tv_usec;
965 s32.ru_maxrss = s.ru_maxrss;
966 s32.ru_ixrss = s.ru_ixrss;
967 s32.ru_idrss = s.ru_idrss;
968 s32.ru_isrss = s.ru_isrss;
969 s32.ru_minflt = s.ru_minflt;
970 s32.ru_majflt = s.ru_majflt;
971 s32.ru_nswap = s.ru_nswap;
972 s32.ru_inblock = s.ru_inblock;
973 s32.ru_oublock = s.ru_oublock;
974 s32.ru_msgsnd = s.ru_msgsnd;
975 s32.ru_msgrcv = s.ru_msgrcv;
976 s32.ru_nsignals = s.ru_nsignals;
977 s32.ru_nvcsw = s.ru_nvcsw;
978 s32.ru_nivcsw = s.ru_nivcsw;
951 s32.ru_utime.tv_sec = s.ru_utime.tv_sec;
952 s32.ru_utime.tv_usec = s.ru_utime.tv_usec;
953 s32.ru_stime.tv_sec = s.ru_stime.tv_sec;
954 s32.ru_stime.tv_usec = s.ru_stime.tv_usec;
955 s32.ru_maxrss = s.ru_maxrss;
956 s32.ru_ixrss = s.ru_ixrss;
957 s32.ru_idrss = s.ru_idrss;
958 s32.ru_isrss = s.ru_isrss;
959 s32.ru_minflt = s.ru_minflt;
960 s32.ru_majflt = s.ru_majflt;
961 s32.ru_nswap = s.ru_nswap;
962 s32.ru_inblock = s.ru_inblock;
963 s32.ru_oublock = s.ru_oublock;
964 s32.ru_msgsnd = s.ru_msgsnd;
965 s32.ru_msgrcv = s.ru_msgrcv;
966 s32.ru_nsignals = s.ru_nsignals;
967 s32.ru_nvcsw = s.ru_nvcsw;
968 s32.ru_nivcsw = s.ru_nivcsw;
979 error = copyout(&s32, p32, sizeof(s32));
969 error = copyout(&s32, uap->rusage, sizeof(s32));
980 }
981 return (error);
982}
983
984int
985linux_sched_rr_get_interval(struct thread *td,
986 struct linux_sched_rr_get_interval_args *uap)
987{

--- 34 unchanged lines hidden ---
970 }
971 return (error);
972}
973
974int
975linux_sched_rr_get_interval(struct thread *td,
976 struct linux_sched_rr_get_interval_args *uap)
977{

--- 34 unchanged lines hidden ---