Stand-alone Sanity Checks
By danaf on Feb 10, 2009
One new feature in Solaris CAT 5.1 is the ability to run the tool's sanity checks without having to fully start the tool. You can do this using the --sanity_checks option. For example:
# scat --sanity_checks vmcore.0
sanity checks: settings...
NOTE: /etc/system: ce:ce_taskq_disable set to 0x1 2 times
NOTE: /etc/system: module ge not loaded for "set ge:ge_intr_mode=0x833"
WARNING: CPU0 has cpu_intr_actv for PIL 1
WARNING: TS thread 0x3000f36f520 on CPU3 using 98%CPU
WARNING: TS thread 0x33732a2a7e0 on CPU515 using 98%CPU
WARNING: 213 severe kstat errors (run "kstat xck" )
WARNING: tmpfs filesystem on /tmp using 4.66G virtual memory
NOTE: kcage_freemem < kcage_lotsfree
WARNING: 1 pending softcalls (no softlevel1 interrupt queued)
These are the same checks that are run when the tool first reads the crash dump, as well as when the coreinfo command is used.
What is even better is that, with the proper permission, e.g., you are running the command as root, this can be run on the live system at any time to get a snap shot of the overall "health" of the system. For example, sanity check output for a healthy system would look like:
sanity checks: settings...vmem...CPU...sysent...misc...done
Once you've installed the tool, complete details on the sanity checks can be found in /opt/SUNWscat/docs/sanity.html.
NOTE: In some cases things like disk drivers generate a few errors in kstats during initialization. If Solaris CAT reports kstat counts of one or two hits for a device, be sure to research the devices kstats before assuming there's a problem. Within Solaris CAT, a simple thing to try is "kstat xck" to run a cross check of the kstats. You can also display kstats outside Solaris CAT using Solaris' kstat(1M) command.