There's a long history of platform specific prtdiag customer escalations caused by prtdiag not returning the documented exit codes when it encounters a failure. By code inspection it looks like the generic sun4v prtdiag library has the same problem since it always returns 0 after calling sun4v_disp_env_status (usr/src/lib/libprtdiag/common/display_sun4v.c).