bug-hurd
[Top][All Lists]
Advanced

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

Re: I/O permission bitmap patch for oskit-mach


From: Marcus Brinkmann
Subject: Re: I/O permission bitmap patch for oskit-mach
Date: Thu, 28 Feb 2002 19:42:16 -0500
User-agent: Mutt/1.3.25i

On Thu, Feb 28, 2002 at 04:30:12PM -0800, Thomas Bushnell, BSG wrote:
> Marcus Brinkmann <marcus@gnu.org> writes:
> 
> > Design flaw: Changes don't propagate immediately to other threads in
> > the same task running on another processor.  This applies to enable as
> > well as disable operations!  Espen Skoglund pointed out that we only
> > need to propagate disable operations, enable operations could be picked
> > up in the fault handler (for extra performance).
> 
> Why is this so?  Why not just suspend the threads around the operation
> and then resume them (forcing them to reload processor state)?

Last time it was discussed, we said that we should probably use the
same mechanism as is used for page maps, that is inter-CPU interrupts.
The only reason I did not do it is that I have only a limited understanding
of the CPU synchronization code, and I would not like to touch it.  I also
don't think that I have the time to learn enough about SMP right now to get
this right.

I haven't considered alternatives, like suspending threads.  I am not sure
if that would work.  I guess that if you do it within the I/O bitmap lock,
it could be safe, although it seems to me that it is potentially much
slower than the other approach (not that it would matter much).

If that approach actually works, we might put it in for the SMP case until
we have a better solution?

Thanks,
Marcus




reply via email to

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