Skip site navigation (1)Skip section navigation (2)
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 Tjoelker


help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131206155418.GA2896>