Date: Sun, 27 Aug 2000 19:21:19 -0700 From: Marcel Moolenaar <marcel@cup.hp.com> To: Sean-Paul Rees <sean@seanrees.com> Cc: current@FreeBSD.org, gdinolt@pacbell.net Subject: Broken definition for {g|s}etrlimit Message-ID: <39A9CC9F.5ED2A6E4@cup.hp.com> References: <39A9AD36.D3CAECDA@pacbell.net> <39A9B127.42C609B3@cup.hp.com> <20000827172728.A80939@seanrees.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Sean-Paul Rees wrote: > > On Sun, Aug 27, 2000 at 05:24:07PM -0700, Marcel Moolenaar wrote: > > "George W. Dinolt" wrote: > > > > > > I was wondering whether the setrlimit changes had something to do with > > > this. This seems to be the major change to the linux code in the last > > > few days. Apparently you were the one to make those changes, so I am > > > writing to you (Marcel) > > > > Can you track down which change caused the failure. I haven't > > experienced any problems so far. I'll try running SO myself in the mean > > time. > > I'm also running -current, however, StarOffice will barely even run! It seems > that all the Linux apps on -current run at about 1/10th their speed. It was > unbearable (and also unusable). > > This has been happening to me for the last few builds of -current. Maybe I'm > doing something wrong or need to reinstall something. Can you offer any > pointers? It seems that the recent change to {g|s}etrlimit hit upon a bug in the FreeBSD syscall definition. Can you tell me if the following patch solves the problem? (don't forget to run 'make sysent.c' in /sys/kern before running config) Index: syscalls.master =================================================================== RCS file: /home/ncvs/src/sys/kern/syscalls.master,v retrieving revision 1.81 diff -u -r1.81 syscalls.master --- syscalls.master 2000/07/29 10:05:23 1.81 +++ syscalls.master 2000/08/28 01:48:38 @@ -223,8 +223,8 @@ 141 COMPAT BSD { int getpeername(int fdes, caddr_t asa, int *alen); } 142 COMPAT BSD { long gethostid(void); } 143 COMPAT BSD { int sethostid(long hostid); } -144 COMPAT BSD { int getrlimit(u_int which, struct ogetrlimit *rlp); } -145 COMPAT BSD { int setrlimit(u_int which, struct ogetrlimit *rlp); } +144 COMPAT BSD { int getrlimit(u_int which, struct orlimit *rlp); } +145 COMPAT BSD { int setrlimit(u_int which, struct orlimit *rlp); } 146 COMPAT BSD { int killpg(int pgid, int signum); } 147 STD POSIX { int setsid(void); } 148 STD BSD { int quotactl(char *path, int cmd, int uid, \ @@ -294,10 +294,10 @@ 192 STD POSIX { int fpathconf(int fd, int name); } 193 UNIMPL NOHIDE nosys 194 STD BSD { int getrlimit(u_int which, \ - struct orlimit *rlp); } \ + struct rlimit *rlp); } \ getrlimit __getrlimit_args int 195 STD BSD { int setrlimit(u_int which, \ - struct orlimit *rlp); } \ + struct rlimit *rlp); } \ setrlimit __setrlimit_args int 196 STD BSD { int getdirentries(int fd, char *buf, u_int count, \ long *basep); } -- Marcel Moolenaar mail: marcel@cup.hp.com / marcel@FreeBSD.org tel: (408) 447-4222 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?39A9CC9F.5ED2A6E4>