[Info-vax] Volatile, was: Re: yet another sys$qiow question

John Reagan xyzzy1959 at gmail.com
Thu Aug 20 22:05:13 EDT 2015


On Thursday, August 20, 2015 at 5:43:42 PM UTC-4, JF Mezei wrote:
 
> 
> Obviously, while in kernel mode, you can't be interrupted by an IO that
> completes, right ? Or could an IO completing on another processor modify
> memory areas that your kernel code is playing with ?
> 
> But what about multiprocessor systems, can user mode code in one thread
> modify a variable that is being used by your kernel code running on
> another processor ?
> 

Things like the IPL mechanism and spinlocks are used to guard against such things to serialize certain operations.  And there are MB instructions in various places of the OS to provide well-defined behavior.  That's why the instruction exists.




More information about the Info-vax mailing list