Date: Fri, 19 Dec 1997 13:12:37 -0600 From: Jonathan Lemon <jlemon@americantv.com> To: Bruce Evans <bde@zeta.org.au> Cc: hasty@rah.star-gate.com, pb@fasterix.freenix.org, current@FreeBSD.ORG, gjp@erols.com, gjp@erols.net Subject: Re: cvs commit: src/sys/i386/linux linux.h linux_ioctl.c Message-ID: <19971219131237.61997@right.PCS> In-Reply-To: <199712191232.XAA12685@godzilla.zeta.org.au>; from Bruce Evans on Dec 12, 1997 at 11:32:20PM %2B1100 References: <199712191232.XAA12685@godzilla.zeta.org.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On Dec 12, 1997 at 11:32:20PM +1100, Bruce Evans wrote: > That's not what Linux ioperm does. Linux ioperm sets or clears bits in > the i/o permissions bitmap. It is like FreeBSD ioperm except it has a > cleaner interface and is presumably less buggy. FreeBSD ioperm is not > completely implemented. It is only available if the kernel was configured > with `options "VM86"'. It is a subcall of sysarch(undocumented). You > have to pass it a pointer to a poorly laid out struct giving the args, > something like this: > > Linux: int ioperm(u_long from, u_long num, int turn_on); > FreeBSD: struct i386_ioperm_args { u_short from, num; u_char turn_on; } foo; > sysarch(I386_SET_IOPERM, /* XXX 1970's interface */ (char *)&foo); Heh. I never claimed to be a wonderful interface designer. I guess it comes from working too much with SysV during the daytime. Would you care to submit a better interface? Should it be upgraded to a full system call instead of a sysarch() call? -- Jonathan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19971219131237.61997>