Code that references the same objects that the driver’s deferred procedure call (DPC) function references must be synchronized to avoid simultaneous attempts at referencing the same object. Drivers can acquire a spin lock at a specified IRQL in order to prevent other processors, or other code running at a lower IRQL, from simultaneously referencing an object. To synchronize access to objects referenced by a DPC function, the spin lock is obtained at an IRQL of DISPATCH_LEVEL.
Spin locks are used within soundlib.lib.
The Kernel-Mode Drivers Design Guide provides an extensive discussion of spin locks.