Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 02 Dec 1998 16:09:08 -0800
From:      Mike Smith <mike@smith.net.au>
To:        Peter Jeremy <peter.jeremy@auss2.alcatel.com.au>
Cc:        mike@smith.net.au, current@FreeBSD.ORG
Subject:   Re: sio breakage 
Message-ID:  <199812030009.QAA00645@dingo.cdrom.com>
In-Reply-To: Your message of "Wed, 02 Dec 1998 20:26:51 %2B1100." <98Dec2.202617est.40351@border.alcanet.com.au> 

next in thread | previous in thread | raw e-mail | index | archive | help
> An alternative approach would be to leave IOPL at 0 and use the I/O
> Permission bitmap in the TSS.  This allows I/O without allowing
> CLI/STI.  The disadvantage is that either you have a per-process TSS
> (which is expensive in memory), or the TSS needs to be re-written on a
> context switch (which is expensive in time).  BSDI (at least BSDI 1.1)
> used this approach - but the bitmap was system-wide, so enabling an
> I/O port for any process enabled it for all processes (which isn't
> particularly secure).  [And at least on 486's, I/O instructions are
> much slower is the IOPB is used instead of IOPL - even slower than
> accessing the ISA bus :-(].

For what it's worth, we allow a per-process IO permission bitmap; see
i386_set_ioperm.

> (*) The need to atomically issue multiple I/O instructions could be
>     seen to be a justification for this.

Hmm, good point.  I wonder how common this actually is?

-- 
\\  Sometimes you're ahead,       \\  Mike Smith
\\  sometimes you're behind.      \\  mike@smith.net.au
\\  The race is long, and in the  \\  msmith@freebsd.org
\\  end it's only with yourself.  \\  msmith@cdrom.com



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?199812030009.QAA00645>