A spin type lock is necessary if the code is running disabled. It also means that the lock must never be obtained by enabled code. and as previously state, recovery is mandatory.
Disabled code is not for the faint of heart. It's very easy to shoot the whole system in disabled code, especially in uniprocessor LPARs. The products I work on have DIE and RISGNL (SIGP) routines that run disabled. We've had our share of "Oh, *&^%*!" over the years, fortunately few and far between and none recently. Keith Moe BMC Software -------------------------------------------- On Tue, 12/19/17, Ed Jaffe <edja...@phoenixsoftware.com> wrote: Subject: Re: LT Instruction After Compare And Swap To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Date: Tuesday, December 19, 2017, 2:14 PM On 12/19/2017 1:16 PM, Charles Mills wrote: > Isn't there some issue with using SUSPEND or RESUME if the caller of the code in question might hold locks and you have no control over that (such as in a system exit)? Haha! Yes, and that applies to WAIT and PAUSE as well. The secret is to architect things such that asynchronous requests while locked are not necessary. And, that's just the tip of the iceberg on the restrictions present when locked! You really can't do much of anything... -- Phoenix Software International Edward E. Jaffe 831 Parkview Drive North El Segundo, CA 90245 http://www.phoenixsoftware.com/