Date: Fri, 28 Jan 2011 18:28:06 +0000 (UTC) From: Dmitry Chagin <dchagin@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r218028 - head/sys/amd64/linux32 Message-ID: <201101281828.p0SIS6Uq094013@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dchagin Date: Fri Jan 28 18:28:06 2011 New Revision: 218028 URL: http://svn.freebsd.org/changeset/base/218028 Log: To avoid excessive code duplication move struct rusage translation to a separate function. MFC after: 1 Month. Modified: head/sys/amd64/linux32/linux32_machdep.c Modified: head/sys/amd64/linux32/linux32_machdep.c ============================================================================== --- head/sys/amd64/linux32/linux32_machdep.c Fri Jan 28 18:25:51 2011 (r218027) +++ head/sys/amd64/linux32/linux32_machdep.c Fri Jan 28 18:28:06 2011 (r218028) @@ -106,6 +106,28 @@ bsd_to_linux_sigaltstack(int bsa) return (lsa); } +static void bsd_to_linux_rusage(struct rusage *ru, struct l_rusage *lru) +{ + lru->ru_utime.tv_sec = ru->ru_utime.tv_sec; + lru->ru_utime.tv_usec = ru->ru_utime.tv_usec; + lru->ru_stime.tv_sec = ru->ru_stime.tv_sec; + lru->ru_stime.tv_usec = ru->ru_stime.tv_usec; + lru->ru_maxrss = ru->ru_maxrss; + lru->ru_ixrss = ru->ru_ixrss; + lru->ru_idrss = ru->ru_idrss; + lru->ru_isrss = ru->ru_isrss; + lru->ru_minflt = ru->ru_minflt; + lru->ru_majflt = ru->ru_majflt; + lru->ru_nswap = ru->ru_nswap; + lru->ru_inblock = ru->ru_inblock; + lru->ru_oublock = ru->ru_oublock; + lru->ru_msgsnd = ru->ru_msgsnd; + lru->ru_msgrcv = ru->ru_msgrcv; + lru->ru_nsignals = ru->ru_nsignals; + lru->ru_nvcsw = ru->ru_nvcsw; + lru->ru_nivcsw = ru->ru_nivcsw; +} + int linux_execve(struct thread *td, struct linux_execve_args *args) { @@ -1126,24 +1148,7 @@ linux_getrusage(struct thread *td, struc if (error != 0) return (error); if (uap->rusage != NULL) { - s32.ru_utime.tv_sec = s.ru_utime.tv_sec; - s32.ru_utime.tv_usec = s.ru_utime.tv_usec; - s32.ru_stime.tv_sec = s.ru_stime.tv_sec; - s32.ru_stime.tv_usec = s.ru_stime.tv_usec; - s32.ru_maxrss = s.ru_maxrss; - s32.ru_ixrss = s.ru_ixrss; - s32.ru_idrss = s.ru_idrss; - s32.ru_isrss = s.ru_isrss; - s32.ru_minflt = s.ru_minflt; - s32.ru_majflt = s.ru_majflt; - s32.ru_nswap = s.ru_nswap; - s32.ru_inblock = s.ru_inblock; - s32.ru_oublock = s.ru_oublock; - s32.ru_msgsnd = s.ru_msgsnd; - s32.ru_msgrcv = s.ru_msgrcv; - s32.ru_nsignals = s.ru_nsignals; - s32.ru_nvcsw = s.ru_nvcsw; - s32.ru_nivcsw = s.ru_nivcsw; + bsd_to_linux_rusage(&s, &s32); error = copyout(&s32, uap->rusage, sizeof(s32)); } return (error);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201101281828.p0SIS6Uq094013>