bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #15295] Mach lets processes write to I/O ports


From: Samuel Thibault
Subject: [bug #15295] Mach lets processes write to I/O ports
Date: Wed, 28 Dec 2005 16:36:36 +0100
User-agent: w3m/0.5.1

Follow-up Comment #2, bug #15295 (project hurd):

Trying to apply patch #3216 , patch #3219 , and patch #4737 does work as
expected for single-threaded programs like ioport/ioport2/ioport3.  I patched
my Hurd console to use i386_io_port_add, it now works.

However, some illegal instructions still happen because for now, gnumach's io
permissions are thread-specific, so that only the thread that called
i386_io_port_all has i/o access.  I guess this will be a problem for almost
every program: people usually expect i/o permissions to be for the whole
task, not for a single thread.  Some libraries will even create threads and
call some callbacks within them, and these callbacks could potentially need
i/o permissions (this is what happens with the Hurd console).

So I'd say we should turn gnumach to handle io permissions per task.  This
doesn't pose any technical problem, since until now every task/thread was
using the kernel tss ; it's just a matter of storing the tss per task, not
per thread.


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?func=detailitem&item_id=15295>

_______________________________________________
  Message posté via/par Savannah
  http://savannah.gnu.org/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]