GPU Hang happens when there is timeout with GPU command.
It might be a bug in driver side or it might be happened when GPU usage is close to 100%.
Once GPU hang occurs app can only reset decoder to continue processing. GPU hangs is a nasty issue which MSDK dev and validation teams pay a special attention during a release preparation. In case of the decode component GPU hangs usually caused by decode of corrupted content. However GPU hangs can also be triggered by bugs in application, usage of custom environment (e.g. in case of Linux kernel without patches from MSS package, custom BIOS, etc). Which MSDK version do you use? Which decoder? I'd recommend you to attempt to reproduce the issue with sample_multi_transcode at first to whitelist your application.
Im not sure i understand what you mean by dmesg but if it is decoder mesg then no, it only returns -21 and if the decoder is not deleted and reseted mfxSyncOperation keeps returning -21 ( MFX_ERR_GPU_HANG).