Date: Fri, 6 Dec 2013 16:54:18 +0100 From: Jilles Tjoelker <jilles@stack.nl> To: Aleksandr Rybalko <ray@FreeBSD.org> Cc: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: Re: svn commit: r258947 - user/ed/newcons/sys/dev/vt Message-ID: <20131206155418.GA2896@stack.nl> In-Reply-To: <201312050012.rB50CqsV056691@svn.freebsd.org> References: <201312050012.rB50CqsV056691@svn.freebsd.org>
index | next in thread | previous in thread | raw e-mail
On Thu, Dec 05, 2013 at 12:12:52AM +0000, Aleksandr Rybalko wrote: > Author: ray > Date: Thu Dec 5 00:12:52 2013 > New Revision: 258947 > URL: http://svnweb.freebsd.org/changeset/base/258947 > Log: > o Implement more standard ioctls. > o Translate old ioctls to new ones for compat with FREEBSD6/FREEBSD5/FREEBSD4. > o Fix style(9) on "return"s. > o Remove some extra debug. > Sponsored by: The FreeBSD Foundation > Modified: > user/ed/newcons/sys/dev/vt/vt_core.c > Modified: user/ed/newcons/sys/dev/vt/vt_core.c > ============================================================================== > --- user/ed/newcons/sys/dev/vt/vt_core.c Wed Dec 4 21:36:17 2013 (r258946) > +++ user/ed/newcons/sys/dev/vt/vt_core.c Thu Dec 5 00:12:52 2013 (r258947) > [snip] > + case KDENABIO: /* allow io operations */ > + error = priv_check(td, PRIV_IO); > + if (error != 0) > + return (error); > + error = securelevel_gt(td->td_ucred, 0); > + if (error != 0) > + return (error); > +#if defined(__i386__) || defined(__amd64__) > + td->td_frame->tf_rflags |= PSL_IOPL; > +#endif > return (0); > - case KDSETMODE: > - /* XXX */ > + case KDDISABIO: /* disallow io operations (default) */ > +#if defined(__i386__) || defined(__amd64__) > + td->td_frame->tf_rflags &= ~PSL_IOPL; > +#endif > return (0); > [snip] This does not build for i386. How about this patch? Index: sys/dev/vt/vt_core.c =================================================================== --- sys/dev/vt/vt_core.c (revision 259027) +++ sys/dev/vt/vt_core.c (working copy) @@ -1459,12 +1459,16 @@ error = securelevel_gt(td->td_ucred, 0); if (error != 0) return (error); -#if defined(__i386__) || defined(__amd64__) +#if defined(__i386__) + td->td_frame->tf_eflags |= PSL_IOPL; +#elif defined(__amd64__) td->td_frame->tf_rflags |= PSL_IOPL; #endif return (0); case KDDISABIO: /* disallow io operations (default) */ -#if defined(__i386__) || defined(__amd64__) +#if defined(__i386__) + td->td_frame->tf_eflags &= ~PSL_IOPL; +#elif defined(__amd64__) td->td_frame->tf_rflags &= ~PSL_IOPL; #endif return (0); -- Jilles Tjoelkerhelp
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131206155418.GA2896>
