Many of us will have come across the S047 abend ("An unauthorized program issued a restricted Supervisor Call (SVC) instruction") that we cannot immediately explain. We know that our executable library is authorised (or authorized, for those reading in North America). We have double checked member PROGxx in SYS1.PARMLIB or re-issued our ‘SETPROG APF’ command but this has failed to explain the problem. Therefore there must be something seriously and fundamentally wrong with the application or the execution environment, yes?
Well, no. Usually not, at least. However, where do we start investigating potential causes of the abend? Here is a quick checklist to set the wheels in motion.