Well, I have run into situations in this very mailing list where a spinlock
did not guarantee mutual exclusion on a unit-processor system, because there
was always the possibility that some interrupt at a higher IRQL grabbed the
same resource and hence caused a deadlock or something just as evil. So, my
point is, a sequence such as
pushf/cli/while(test and set)/popf
will guarantee that nobody will seize control of that processor while it’s
spinning, which at least is the kind of semantics that I’m used to ascribe
to a spinlock. In other words, if I’m inside my mutual-exclusion resource, I
don’t want any other process in the same machine to interrupt me and try to
grab my resource.
I may be wrong, but I believe a spinlock loop should be uninterruptible.
Alberto.
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Ray Trent
Sent: Monday, June 21, 2004 4:06 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Question about 64 Bit Build
Windows not being a real-time OS (c.f. that flamewar), it’s not
*supposed* to matter if you’re interrupted by something that doesn’t
share your resources.
If it *does* share your resources, it needs to share your
synchronization primitive (obviously :-). So that wouldn’t be a problem
either.
Moreira, Alberto wrote:
One reason I see is to make sure that a spin loop isn’t interrupted by a
higher IRQL interrupt on the same processor. I know that you Windows guys
don’t like this idea very much, but I cannot get used to the idea that a
spinlock loop is interruptable !
Alberto.
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of Maxim S. Shatskih
Sent: Monday, June 21, 2004 9:12 AM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Question about 64 Bit Build
>1. Before anyone attacks me: This is not a production driver, it’s a C++
>simulated graphics chip that we use to test the driver before the real
I agree with you completely, but the OP was speaking about the filesystem
filter. Why use “cli” in it?
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or
disclose
it to anyone else. If you received it in error please notify us
immediately
and then destroy it.
–
…/ray..
Please remove “.spamblock” from my email address if you need to contact
me outside the newsgroup.
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
You are currently subscribed to ntdev as: xxxxx@compuware.com
To unsubscribe send a blank email to xxxxx@lists.osr.com
The contents of this e-mail are intended for the named addressee only. It
contains information that may be confidential. Unless you are the named
addressee or an authorized designee, you may not copy or use it, or disclose
it to anyone else. If you received it in error please notify us immediately
and then destroy it.