At 10:24 07/30/2002 -0400, Adam Thornton wrote: >illegal operation: 0001
It's an operation exception (PRG001 to VMers, S0C1 to MVSers). >Process modprobe (pid: 148, task: 033c8000, ksp: 033c9618) "modprobe" was running at the time. That makes sense, you were installing a module! >Krnl PSW : 07081000 848422ca >Krnl GPRS: 00000002 0001000d 00000000 80000000 > 0001000d 80000000 04861424 048643e4 > 033c9c00 0000000d 00000001 033c9988 > 00000000 848421a8 84842252 033c9928 >Krnl ACRS: 00000000 00000000 00000000 00000000 > 00000001 00000000 00000000 00000000 > 00000000 00000000 00000000 00000000 > 00000000 00000000 00000000 00000000 >Krnl Code: b2 22 00 40 88 40 00 1c 41 50 f0 70 50 50 f0 74 12 44 50 40 This is the code that was executed. So it was a B222 instruction: Insert Program Mask (IPM). That's no help, it's a perfectly legal instruction. Presumably the actual instruction is somewhere inside this chunk of bytes - it's common to dump the code surrounding the failing instruction to provide more context. This is relatively new - I tried to get a "Code:" line added (for ksymoops to read) about a year ago, unsuccessfully. You should find the appropriate lines in /usr/src/linux/arch/s390/kernel/trap.c or something roughly like it (sorry, no S/390 at Casa Patterson!). >Call Trace: �<0485bfd0>� �<04861564>� �<00110eae>� �<00110f80>� >�<04861804>� �<0 011146e>� > �<00111c12>� �<00113ed0>� This would look much nicer if you ran the oops-display through ksymoops. You'd have actual label+offsets instead of raw addresses, and the registers would be formatted that way as well. It's also possible that the "Krnl Code" line will provoke ksymoops to format the instructions in it - it likes to do that, but last time I checked it searched for "Code:", not "Krnl Code:". Ross Patterson CatchFIRE Systems, Inc. (at home)
