You can use REISUB to avoid hard reboots:
And this is the best approach to provide us information:
Have you found any information in dmesg or journalctl after a lock up?